public void TestTailenderBatsmanBehaviorForEven() { MockRangeRunGenAuto batRunGen = new MockRangeRunGenAuto(new List <int>() { 0, 1, 1, 2 }); MockRangeRunGenAuto bowlRunGen = new MockRangeRunGenAuto(new List <int>() { 1, 1, 2, 2 }); CricketGame game = new CricketGame(1, 4, BatsmanType.Tailender, BowlerType.Normal, new MockPlayerFactory(batRunGen, bowlRunGen), new OutStrategyFactory()); Assert.AreEqual(GameResult.BowlerWon, game.Simulate().Result, "Tailender batsman cannot wicket if both odd or even"); }
public void TestParttimeBowlerBehavior() { MockRangeRunGenAuto batRunGen = new MockRangeRunGenAuto(new List <int>() { 0, 1, 2, 4 }); MockRangeRunGenAuto bowlRunGen = new MockRangeRunGenAuto(new List <int>() { 1, 1, 1, 1 }); CricketGame game = new CricketGame(1, 4, BatsmanType.Normal, BowlerType.Parttime, new MockPlayerFactory(batRunGen, bowlRunGen), new OutStrategyFactory()); Assert.AreEqual(GameResult.BatsmanWon, game.Simulate().Result, "Parttime bowler cannot take wicket on second ball"); batRunGen.Reset(); bowlRunGen.Reset(); game = new CricketGame(1, 4, BatsmanType.Normal, BowlerType.Normal, new MockPlayerFactory(batRunGen, bowlRunGen), new OutStrategyFactory()); Assert.AreEqual(GameResult.BowlerWon, game.Simulate().Result, "Normal Bowler should take wicket on second ball"); }