import java.util.*; /** * The test class BoardTest. * * @author (your name) * @version (a version number or a date) */ public class BoardTest extends junit.framework.TestCase { /** * Default constructor for test class BoardTest */ public BoardTest() { } /** * Sets up the test fixture. * * Called before every test case method. */ protected void setUp() { } /** * Tears down the test fixture. * * Called after every test case method. */ protected void tearDown() { } public void testConstructor() { Board board1 = new Board(); // By chance, this test might fail // if you happen to get a winning board by default assertFalse(board1.isWin()); } public void testSetWin() { Board board1 = new Board(); board1.setBoard("1 2 3 4 5 6 7 8 9"); assertTrue(board1.isWin()); } public void testIsWin() { Board board1 = new Board(); board1.setBoard("9 1 8 2 7 3 6 4 5"); assertTrue(board1.isWin()); board1.setBoard("1 8 2 7 3 6 4 5"); assertFalse(board1.isWin()); board1.setBoard("1 1 8 2 7 3 6 4 5"); assertFalse(board1.isWin()); board1.setBoard("9 9 1 2 7 3 6 4 5"); assertFalse(board1.isWin()); } public void testPlayRound() { Board board1 = new Board(); board1.setBoard("2 3 4 5 6 7 8 10"); board1.playRound(); assertTrue(board1.isWin()); board1 = new Board(); board1.setBoard("2 2 2 4 5 6 7 8 9"); board1.playRound(); // Can fail if implementation of toString() changes assertEquals("1 1 1 3 4 5 6 7 8 9",board1.toString()); } public void testPlayRoundSimple() { Board board1 = new Board(); // simplest game board1.setBoard("2 3 4 5 6 7 8 10"); board1.playRound(); Integer[] expectedArray = {1,2,3,4,5,6,7,9,8}; List expected = Arrays.asList(expectedArray); assertEquals(expected, board1.getBoard()); } public void testRound1() { Board board1 = new Board(); board1.setBoard("10 8 7 6 5 4 3 2"); board1.playRound(); Integer[] expectedArray = {9,7,6,5,4,3,2,1,8}; List expected = Arrays.asList(expectedArray); assertEquals(expected, board1.getBoard()); } public void testRound2() { Board board1 = new Board(); board1.setBoard("3 8 4 7 5 6 2 10"); board1.playRound(); Integer[] expectedArray = {2,7,3,6,4,5,1,9,8}; List expected = Arrays.asList(expectedArray); assertEquals(expected, board1.getBoard()); } public void testRound3() { Board board1 = new Board(); board1.setBoard("2 2 2 4 5 6 7 8 9"); board1.playRound(); board1.playRound(); board1.playRound(); Integer[] expectedArray = {1,2,3,4,5,6,7,9,8}; List expected = Arrays.asList(expectedArray); assertEquals(expected, board1.getBoard()); } }