public void GIVEN_Hero_WHEN_Age17_Then_PregnancyChance0()
        {
            //Arrange
            CEHero hero = new CEHero {
                Age = 17, IsFertile = true, Children = new List <CEHero>(), Spouse = new CEHero()
            };
            float perkBonus             = 1.0f;
            CEDefaultPregnancyModel sut = new CEDefaultPregnancyModel();
            float expectedResult        = 0.0f;

            //Act
            float actualResult = sut.CEGetDailyChanceOfPregnancyForHero(hero, perkBonus);

            //Assert
            actualResult.Should().Be(expectedResult);
        }
        public void GIVEN_Hero_WHEN_Age45_IsFertile_Children0_HaveSpouse_PerkBonus1_Then_PregnancyChanceIsBelow1()
        {
            //Arrange
            CEHero hero = new CEHero {
                Age = 44, IsFertile = true, Children = new List <CEHero>(), Spouse = new CEHero()
            };
            float perkBonus             = 0.0029f;
            CEDefaultPregnancyModel sut = new CEDefaultPregnancyModel();
            float expectedResult        = 9.04799963E-05F;

            //Act
            float actualResult = sut.CEGetDailyChanceOfPregnancyForHero(hero, perkBonus);

            //Assert
            actualResult.Should().Be(expectedResult);
        }
        public void GIVEN_Hero_WHEN_Age18_IsFertile_Children1_HaveNoSpouse_PerkBonus1_Then_PregnancyChance0()
        {
            //Arrange
            List <CEHero> child = new List <CEHero> {
                new CEHero()
            };
            CEHero hero = new CEHero {
                Age = 18, IsFertile = true, Children = child, Spouse = null
            };
            float perkBonus             = 1.0f;
            CEDefaultPregnancyModel sut = new CEDefaultPregnancyModel();

            //Act
            float actualResult = sut.CEGetDailyChanceOfPregnancyForHero(hero, perkBonus);

            //Assert
            actualResult.Should().BeGreaterThan(0);
        }