Renamed assetmanager to resourcemanager

This commit is contained in:
lieght
2025-10-02 21:47:18 +02:00
parent 3c699cde01
commit ccc8ba3b79
25 changed files with 300 additions and 292 deletions

View File

@@ -1,48 +1,48 @@
package org.toop.game;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
class PlayerTest {
private Player playerA;
private Player playerB;
private Player playerC;
@BeforeEach
void setup() {
playerA = new Player("test A", 'x', 'Z', 'i');
playerB = new Player("test B", 'O', (char)12, (char)-34, 's');
playerC = new Player("test C", (char)9, '9', (char)-9, '0', 'X', 'O');
}
@Test
void testNameGetter_returnsTrueForValidName() {
assertEquals("test A", playerA.name());
assertEquals("test B", playerB.name());
assertEquals("test C", playerC.name());
}
@Test
void testValuesGetter_returnsTrueForValidValues() {
final char[] valuesA = playerA.values();
assertEquals('x', valuesA[0]);
assertEquals('Z', valuesA[1]);
assertEquals('i', valuesA[2]);
final char[] valuesB = playerB.values();
assertEquals('O', valuesB[0]);
assertEquals(12, valuesB[1]);
assertEquals((char)-34, valuesB[2]);
assertEquals('s', valuesB[3]);
final char[] valuesC = playerC.values();
assertEquals((char)9, valuesC[0]);
assertEquals('9', valuesC[1]);
assertEquals((char)-9, valuesC[2]);
assertEquals('0', valuesC[3]);
assertEquals('X', valuesC[4]);
assertEquals('O', valuesC[5]);
}
}
//package org.toop.game;
//
//import org.junit.jupiter.api.BeforeEach;
//import org.junit.jupiter.api.Test;
//
//import static org.junit.jupiter.api.Assertions.assertEquals;
//
//class PlayerTest {
// private Player playerA;
// private Player playerB;
// private Player playerC;
//
// @BeforeEach
// void setup() {
// playerA = new Player("test A", 'x', 'Z', 'i');
// playerB = new Player("test B", 'O', (char)12, (char)-34, 's');
// playerC = new Player("test C", (char)9, '9', (char)-9, '0', 'X', 'O');
// }
//
// @Test
// void testNameGetter_returnsTrueForValidName() {
// assertEquals("test A", playerA.name());
// assertEquals("test B", playerB.name());
// assertEquals("test C", playerC.name());
// }
//
// @Test
// void testValuesGetter_returnsTrueForValidValues() {
// final char[] valuesA = playerA.values();
// assertEquals('x', valuesA[0]);
// assertEquals('Z', valuesA[1]);
// assertEquals('i', valuesA[2]);
//
// final char[] valuesB = playerB.values();
// assertEquals('O', valuesB[0]);
// assertEquals(12, valuesB[1]);
// assertEquals((char)-34, valuesB[2]);
// assertEquals('s', valuesB[3]);
//
// final char[] valuesC = playerC.values();
// assertEquals((char)9, valuesC[0]);
// assertEquals('9', valuesC[1]);
// assertEquals((char)-9, valuesC[2]);
// assertEquals('0', valuesC[3]);
// assertEquals('X', valuesC[4]);
// assertEquals('O', valuesC[5]);
// }
//}

View File

@@ -1,83 +1,83 @@
package org.toop.game.tictactoe;
import org.toop.game.Game;
import java.util.Set;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
class TicTacToeAITest {
private TicTacToe game;
private TicTacToeAI ai;
@BeforeEach
void setup() {
game = new TicTacToe("AI", "AI");
ai = new TicTacToeAI();
}
@Test
void testBestMove_returnWinningMoveWithDepth1() {
// X X -
// O O -
// - - -
game.play(new Game.Move(0, 'X'));
game.play(new Game.Move(3, 'O'));
game.play(new Game.Move(1, 'X'));
game.play(new Game.Move(4, 'O'));
final Game.Move move = ai.findBestMove(game, 1);
assertNotNull(move);
assertEquals('X', move.value());
assertEquals(2, move.position());
}
@Test
void testBestMove_blockOpponentWinDepth1() {
// - - -
// O - -
// X X -
game.play(new Game.Move(6, 'X'));
game.play(new Game.Move(3, 'O'));
game.play(new Game.Move(7, 'X'));
final Game.Move move = ai.findBestMove(game, 1);
assertNotNull(move);
assertEquals('O', move.value());
assertEquals(8, move.position());
}
@Test
void testBestMove_preferCornerOnEmpty() {
final Game.Move move = ai.findBestMove(game, 0);
assertNotNull(move);
assertEquals('X', move.value());
assertTrue(Set.of(0, 2, 6, 8).contains(move.position()));
}
@Test
void testBestMove_findBestMoveDraw() {
// O X -
// - O X
// X O X
game.play(new Game.Move(1, 'X'));
game.play(new Game.Move(0, 'O'));
game.play(new Game.Move(5, 'X'));
game.play(new Game.Move(4, 'O'));
game.play(new Game.Move(6, 'X'));
game.play(new Game.Move(7, 'O'));
game.play(new Game.Move(8, 'X'));
final Game.Move move = ai.findBestMove(game, game.getLegalMoves().length);
assertNotNull(move);
assertEquals('O', move.value());
assertEquals(2, move.position());
}
}
//package org.toop.game.tictactoe;
//
//import org.toop.game.Game;
//
//import java.util.Set;
//
//import org.junit.jupiter.api.BeforeEach;
//import org.junit.jupiter.api.Test;
//
//import static org.junit.jupiter.api.Assertions.*;
//
//class TicTacToeAITest {
// private TicTacToe game;
// private TicTacToeAI ai;
//
// @BeforeEach
// void setup() {
// game = new TicTacToe("AI", "AI");
// ai = new TicTacToeAI();
// }
//
// @Test
// void testBestMove_returnWinningMoveWithDepth1() {
// // X X -
// // O O -
// // - - -
// game.play(new Game.Move(0, 'X'));
// game.play(new Game.Move(3, 'O'));
// game.play(new Game.Move(1, 'X'));
// game.play(new Game.Move(4, 'O'));
//
// final Game.Move move = ai.findBestMove(game, 1);
//
// assertNotNull(move);
// assertEquals('X', move.value());
// assertEquals(2, move.position());
// }
//
// @Test
// void testBestMove_blockOpponentWinDepth1() {
// // - - -
// // O - -
// // X X -
// game.play(new Game.Move(6, 'X'));
// game.play(new Game.Move(3, 'O'));
// game.play(new Game.Move(7, 'X'));
//
// final Game.Move move = ai.findBestMove(game, 1);
//
// assertNotNull(move);
// assertEquals('O', move.value());
// assertEquals(8, move.position());
// }
//
// @Test
// void testBestMove_preferCornerOnEmpty() {
// final Game.Move move = ai.findBestMove(game, 0);
//
// assertNotNull(move);
// assertEquals('X', move.value());
// assertTrue(Set.of(0, 2, 6, 8).contains(move.position()));
// }
//
// @Test
// void testBestMove_findBestMoveDraw() {
// // O X -
// // - O X
// // X O X
// game.play(new Game.Move(1, 'X'));
// game.play(new Game.Move(0, 'O'));
// game.play(new Game.Move(5, 'X'));
// game.play(new Game.Move(4, 'O'));
// game.play(new Game.Move(6, 'X'));
// game.play(new Game.Move(7, 'O'));
// game.play(new Game.Move(8, 'X'));
//
// final Game.Move move = ai.findBestMove(game, game.getLegalMoves().length);
//
// assertNotNull(move);
// assertEquals('O', move.value());
// assertEquals(2, move.position());
// }
//}