Skip to content
Snippets Groups Projects
Commit 56571a7a authored by Will Billingsley's avatar Will Billingsley
Browse files

Done unit test but failed

parent f1e4bdb1
No related merge requests found
......@@ -8,24 +8,36 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class DotsAndBoxesGridTest {
/*
* Because Test classes are classes, they can have fields, and can have static fields.
* This field is a logger. Loggers are like a more advanced println, for writing messages out to the console or a log file.
*/
private static final Logger logger = LogManager.getLogger(DotsAndBoxesGridTest.class);
/*
* Tests are functions that have an @Test annotation before them.
* The typical format of a test is that it contains some code that does something, and then one
* or more assertions to check that a condition holds.
*
* This is a dummy test just to show that the test suite itself runs
*/
@Test
public void testTestSuiteRuns() {
logger.info("Dummy test to show the test suite runs");
assertTrue(true);
}
// FIXME: You need to write tests for the two known bugs in the code.
@Test
public void testIsBoxComplete() {
DotsAndBoxesGrid grid = new DotsAndBoxesGrid(3, 3); // Example grid size
grid.drawHorizontalLine(0, 0); // Top line
grid.drawVerticalLine(0, 0); // Left line
grid.drawHorizontalLine(0, 1); // Bottom line
grid.drawVerticalLine(1, 0); // Right line
assertTrue(grid.isBoxComplete(0, 0), "The box should be complete");
}
@Test
public void testDrawLineAlreadyDrawn() {
DotsAndBoxesGrid grid = new DotsAndBoxesGrid(3, 3); // Example grid size
grid.drawHorizontalLine(0, 0); // Draw line once
IllegalStateException thrown = assertThrows(
IllegalStateException.class,
() -> grid.drawHorizontalLine(0, 0), // Try to draw the same line again
"Expected drawHorizontalLine() to throw, but it didn't"
);
assertTrue(thrown.getMessage().contains("Line already drawn"));
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment