Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        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);
        }