diff --git a/src/test/java/GameBaseTest.java b/src/test/java/GameBaseTest.java index 99754e5..de1c63e 100644 --- a/src/test/java/GameBaseTest.java +++ b/src/test/java/GameBaseTest.java @@ -24,14 +24,14 @@ class GameBaseTest { @Test void testReset() { - // Directly set some cells (since we can't use markCell methods in base class) + // Setzt automatisch schwarze Zellen game.blackCells[0][0] = true; game.whiteCells[1][1] = true; // Reset game game.reset(); - // Verify all cells are reset + // Verifiziert, ob alle schwarzen Zellen gelöscht wurden boolean[][] blackCells = game.getBlackCells(); boolean[][] whiteCells = game.getWhiteCells(); diff --git a/src/test/java/GameUIControllerTest.java b/src/test/java/GameUIControllerTest.java index 1ad53fa..f7d3483 100644 --- a/src/test/java/GameUIControllerTest.java +++ b/src/test/java/GameUIControllerTest.java @@ -32,6 +32,7 @@ class GameUIControllerTest { @Test + // Checkt ob alle Elemente initialisiert wurden void testInitialization() { assertNotNull(controller); assertNotNull(controller.getBoardPanel()); @@ -65,12 +66,12 @@ class GameUIControllerTest { @Test void testResetGame() { - // Make some moves first + // Feldermarkierungen controller.handleLeftClick(0, 0); controller.handleRightClick(1, 1); controller.resetGame(); - // Verify the board is reset + // Verifiziert Boardlöschung var boardPanel = controller.getBoardPanel(); assertEquals(9, boardPanel.getChildren().size()); // 3x3 board } @@ -80,13 +81,13 @@ class GameUIControllerTest { controller.handleLeftClick(0, 0); controller.undo(); controller.redo(); - // Verify the board state + // Verifiziert den Board Status assertTrue(controller.getBoardPanel().getChildren().size() > 0); } @Test void testShowErrors() { - // Create some errors first + // Fehler werden kreiert controller.handleLeftClick(0, 0); controller.handleLeftClick(0, 1); @@ -110,6 +111,7 @@ class GameUIControllerTest { @Test + // Fehlerspeicherung void testConvertErrorsToSet() { List errors = List.of( new int[]{0, 0}, @@ -126,10 +128,9 @@ class GameUIControllerTest { assertFalse(controller.isPaused()); } - // Helper method to simulate winning moves + // Hilfsmethode private void makeWinningMoves() { - // This would need to be implemented according to your winning condition - // For test purposes, we'll just make some moves + // Win controller.handleLeftClick(0, 2); controller.handleRightClick(0, 0); controller.handleRightClick(0, 1); diff --git a/src/test/java/HitoriControlPanelTest.java b/src/test/java/HitoriControlPanelTest.java index 30c5b63..1c59cb4 100644 --- a/src/test/java/HitoriControlPanelTest.java +++ b/src/test/java/HitoriControlPanelTest.java @@ -29,7 +29,7 @@ class HitoriControlPanelTest { void testUpdateTimerLabel() { controlPanel.updateTimerLabel(42); var timerLabel = findLabelByText(controlPanel, "Time: 42s"); - assertNotNull(5); + assertNotNull(42); } @Test diff --git a/src/test/java/HitoriDialogManagerTest.java b/src/test/java/HitoriDialogManagerTest.java deleted file mode 100644 index de41c7b..0000000 --- a/src/test/java/HitoriDialogManagerTest.java +++ /dev/null @@ -1,63 +0,0 @@ -import domain.HitoriBoardLoader; -import GUI.HitoriDialogManager; -import javafx.stage.Stage; -import org.junit.jupiter.api.*; -import org.junit.jupiter.api.extension.ExtendWith; -import org.testfx.framework.junit5.ApplicationExtension; -import org.testfx.framework.junit5.Start; -import static org.junit.jupiter.api.Assertions.*; -import static org.mockito.Mockito.*; - -@ExtendWith(ApplicationExtension.class) -class HitoriDialogManagerTest { - private HitoriDialogManager dialogManager; - private Stage stage; - private HitoriBoardLoader boardLoader; - - @Start - private void start(Stage stage) { - this.stage = stage; - } - - @BeforeEach - void setUp() { - boardLoader = mock(HitoriBoardLoader.class); - dialogManager = new HitoriDialogManager(stage); - } - - @Test - void testShowAlert() { - // Cannot directly test Alert dialogs in headless mode - assertDoesNotThrow(() -> - dialogManager.showAlert("Test", "Test Message") - ); - } - - @Test - void testConfirmDeleteHighScores() { - // Cannot directly test confirmation dialogs in headless mode - assertDoesNotThrow(() -> - dialogManager.confirmDeleteHighScores() - ); - } - - @Test - void testConfirmNewGame() { - // Cannot directly test confirmation dialogs in headless mode - assertDoesNotThrow(() -> - dialogManager.confirmNewGame() - ); - } - - - @Test - void testConfirmLoadSavedGame() { - // Cannot directly test confirmation dialogs in headless mode - assertDoesNotThrow(() -> - dialogManager.confirmLoadSavedGame() - ); - } - - - -} \ No newline at end of file diff --git a/src/test/java/HitoriGameMovesTest.java b/src/test/java/HitoriGameMovesTest.java index b0eef1e..ea25c96 100644 --- a/src/test/java/HitoriGameMovesTest.java +++ b/src/test/java/HitoriGameMovesTest.java @@ -19,12 +19,12 @@ class HitoriGameMovesTest { @Test void testMarkCellAsBlack() { - // Test valid black marking + // Testet schwarze Markierung game.markCellAsBlack(0, 1); assertFalse(game.getBlackCells()[0][2]); assertFalse(game.getWhiteCells()[0][2]); - // Test invalid black marking (adjacent to existing black cell) + } @@ -42,50 +42,49 @@ class HitoriGameMovesTest { game.markCellAsWhite(0, 0); game.markCellAsBlack(1, 1); - // Undo last move + // Löscht letzten Schritt assertTrue(game.undo()); - // Verify the last move was undone + // Verified das der letzte Schritt gelöscht wurde assertFalse(game.getBlackCells()[1][1]); - // Verify previous move remains + // Verifiziert, dass der vorherige Move gespeichert wurde assertTrue(game.getWhiteCells()[0][0]); } @Test void testRedo() { - // Make moves and undo + // Wiederholt den Test game.markCellAsWhite(0, 0); game.markCellAsBlack(1, 1); game.undo(); - // Redo last move + assertTrue(game.redo()); - // Verify move was redone + assertTrue(game.getBlackCells()[1][1]); } @Test void testUndoLimit() { - // Test undo when no moves made + // Undo ohne vorherigen Move assertFalse(game.undo()); } @Test void testRedoLimit() { - // Make and undo a move + // Undo und dann ein Move game.markCellAsWhite(0, 0); game.undo(); assertTrue(game.redo()); - // Try to redo when at latest state assertFalse(game.redo()); } @Test void testMoveHistory() { - // Make several moves + game.markCellAsWhite(0, 0); game.markCellAsBlack(1, 1); game.markCellAsWhite(2, 2); @@ -103,14 +102,13 @@ class HitoriGameMovesTest { @Test void testReset() { - // Make some moves game.markCellAsWhite(0, 0); game.markCellAsBlack(1, 1); // Reset game game.reset(); - // Verify all cells are reset + // Verifiziert den Reset boolean[][] blackCells = game.getBlackCells(); boolean[][] whiteCells = game.getWhiteCells(); @@ -121,7 +119,7 @@ class HitoriGameMovesTest { } } - // Verify undo/redo history is cleared + // Verified undo/redo history ist closed assertFalse(game.undo()); assertFalse(game.redo()); }