public static void MoveIncreasedDecreasedCowsOnBoard() { Morabaraba morabaraba = new Morabaraba(5); morabaraba.Move(0); morabaraba.NextTurn(); morabaraba.SetTurnPhase(Models.Phases.Phase.Moving); morabaraba.Move(0); morabaraba.Move(1); Assert.That(morabaraba.CurrentBoard.CowsOnBoard() == 1); }
public static void CheckCantMovetoNotAdjacent(int val1, int val2) //tests for all cases { Morabaraba morabaraba = new Morabaraba(); morabaraba.Move(val1); morabaraba.NextTurn(); morabaraba.SetTurnPhase(Models.Phases.Phase.Moving); morabaraba.Move(val1); Helpers.IValidPositionVerifier verifier = new Helpers.ValidPositionVerifier(morabaraba.CurrentBoard); Assert.That(!verifier.VerifyMoving2(val2)); }
public static void CheckMovetoEmpty(int val1, int val2) { Morabaraba morabaraba = new Morabaraba(); morabaraba.Move(val1); morabaraba.Move(val2); morabaraba.NextTurn(); morabaraba.SetTurnPhase(Models.Phases.Phase.Moving); morabaraba.Move(val2); Helpers.IValidPositionVerifier verifier = new Helpers.ValidPositionVerifier(morabaraba.CurrentBoard); Assert.That(!verifier.VerifyMoving2(val1)); }
public static void CheckBoardAfterMove(int startval, int endval) //tests thoroughly that the move happens as it should AND that the number of cows stays the same after a shift { Morabaraba morabaraba = new Morabaraba(); morabaraba.Move(startval); morabaraba.NextTurn(); var cowcount = morabaraba.CurrentBoard.CowsOnBoard(); morabaraba.SetTurnPhase(Models.Phases.Phase.Moving); var temp = morabaraba.GetBoard()[startval].Get(); morabaraba.Move(startval); morabaraba.Move(endval); Assert.That(morabaraba.GetBoard()[endval].Get() == temp && morabaraba.GetBoard()[startval].Get() == Models.ColorType.Colour.Empty && morabaraba.CurrentBoard.CowsOnBoard() == cowcount); }