public void CreateThreeDoorsAssignsPrizeToRandomDoor() { var montyHall = new MontyHall(); var doorNumber = new TestRng(1); montyHall.SetUpThreeDoors(doorNumber); Assert.Equal(false, montyHall.Doors[0].Prize == Prize.Car); Assert.Equal(true, montyHall.Doors[1].Prize == Prize.Car); Assert.Equal(false, montyHall.Doors[2].Prize == Prize.Car); }
public void PlayerShouldBeAbleToChooseARandomDoor() { var montyHall = new MontyHall(); var doorNumber = new TestRng(1); montyHall.SetUpThreeDoors(doorNumber); var choice = new TestRng(2); var player = new Player(choice, 0); player.ChooseRandomDoor(choice, montyHall.Doors); Assert.Equal(false, montyHall.Doors[0].IsChosen); Assert.Equal(false, montyHall.Doors[1].IsChosen); Assert.Equal(true, montyHall.Doors[2].IsChosen); }
public void HostShouldOpenAnUnSelectedDoorThatIsGoat() { var montyHall = new MontyHall(); var host = new Host(); var doorNumber = new TestRng(1); montyHall.SetUpThreeDoors(doorNumber); var choice = new TestRng(2); var player = new Player(choice, 0); player.ChooseRandomDoor(choice, montyHall.Doors); host.OpenUnselectedDoorThatIsGoat(montyHall.Doors); Assert.Equal(true, montyHall.Doors[0].IsOpened); Assert.Equal(false, montyHall.Doors[1].IsOpened); Assert.Equal(false, montyHall.Doors[2].IsOpened); }
public void PlayerShouldBeAbleToASwitchDoors() { var montyHall = new MontyHall(); var host = new Host(); var doorNumber = new TestRng(1); montyHall.SetUpThreeDoors(doorNumber); var choice = new TestRng(2); var player = new Player(choice, 1); player.ChooseRandomDoor(choice, montyHall.Doors); host.OpenUnselectedDoorThatIsGoat(montyHall.Doors); player.SwitchDoor(montyHall.Doors); Assert.Equal(false, montyHall.Doors[0].IsChosen); Assert.Equal(true, montyHall.Doors[1].IsChosen); Assert.Equal(false, montyHall.Doors[2].IsChosen); }