Files
cs6601p1/test/net/woodyfolsom/msproj/LegalMoveTest.java

69 lines
3.3 KiB
Java

package net.woodyfolsom.msproj;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
public class LegalMoveTest {
@Test
public void testLegalMove1Liberty() {
GameState gameState = new GameState(5);
gameState.playStone(Player.BLACK, Action.getInstance("A2"));
gameState.playStone(Player.BLACK, Action.getInstance("B3"));
gameState.playStone(Player.BLACK, Action.getInstance("B1"));
assertTrue(gameState.playStone(Player.WHITE, Action.getInstance("B2")));
System.out.println(gameState);
}
@Test
public void testLegalMove2Liberties() {
//Unit test based on illegal move from 9x9 game using MonteCarloUCT
//Illegal move detected by gokgs.com server
GameState gameState = new GameState(9);
gameState.playStone(Player.BLACK, Action.getInstance("G5"));
gameState.playStone(Player.BLACK, Action.getInstance("G7"));
gameState.playStone(Player.BLACK, Action.getInstance("F6"));
gameState.playStone(Player.BLACK, Action.getInstance("H6"));
gameState.playStone(Player.BLACK, Action.getInstance("C7"));
gameState.playStone(Player.BLACK, Action.getInstance("D7"));
gameState.playStone(Player.BLACK, Action.getInstance("E7"));
gameState.playStone(Player.BLACK, Action.getInstance("F7"));
gameState.playStone(Player.BLACK, Action.getInstance("G8"));
gameState.playStone(Player.BLACK, Action.getInstance("H9"));
gameState.playStone(Player.BLACK, Action.getInstance("J7"));
gameState.playStone(Player.BLACK, Action.getInstance("E5"));
gameState.playStone(Player.BLACK, Action.getInstance("F4"));
gameState.playStone(Player.BLACK, Action.getInstance("G3"));
gameState.playStone(Player.BLACK, Action.getInstance("D4"));
gameState.playStone(Player.BLACK, Action.getInstance("E3"));
gameState.playStone(Player.BLACK, Action.getInstance("B4"));
gameState.playStone(Player.BLACK, Action.getInstance("C3"));
gameState.playStone(Player.BLACK, Action.getInstance("D2"));
gameState.playStone(Player.BLACK, Action.getInstance("E1"));
gameState.playStone(Player.WHITE, Action.getInstance("H8"));
gameState.playStone(Player.WHITE, Action.getInstance("H7"));
gameState.playStone(Player.WHITE, Action.getInstance("D9"));
gameState.playStone(Player.WHITE, Action.getInstance("D8"));
gameState.playStone(Player.WHITE, Action.getInstance("E8"));
gameState.playStone(Player.WHITE, Action.getInstance("A7"));
gameState.playStone(Player.WHITE, Action.getInstance("A6"));
gameState.playStone(Player.WHITE, Action.getInstance("B8"));
gameState.playStone(Player.WHITE, Action.getInstance("B7"));
gameState.playStone(Player.WHITE, Action.getInstance("B6"));
gameState.playStone(Player.WHITE, Action.getInstance("C5"));
gameState.playStone(Player.WHITE, Action.getInstance("D5"));
gameState.playStone(Player.WHITE, Action.getInstance("D6"));
gameState.playStone(Player.WHITE, Action.getInstance("A3"));
gameState.playStone(Player.WHITE, Action.getInstance("B3"));
gameState.playStone(Player.WHITE, Action.getInstance("B1"));
gameState.playStone(Player.WHITE, Action.getInstance("F1"));
System.out.println("State before move: ");
System.out.println(gameState);
assertTrue("Play by WHITE at H5 should not have failed.",gameState.playStone(Player.WHITE, Action.getInstance("H5")));
}
}