public void End_AnyChromosomeWithoutFitness_Exception() { var target = new Generation(1, new List<IChromosome>() { new ChromosomeStub() { Fitness = 0.2 }, new ChromosomeStub() { Fitness = null}, new ChromosomeStub() { Fitness = 0.1 } }); ExceptionAssert.IsThrowing(new InvalidOperationException("There is unknown problem in current generation, because a chromosome has no fitness value."), () => { target.End(2); }); }
public void End_ChromosomeNumberGreaterThan_Take() { var target = new Generation(1, new List<IChromosome>() { new ChromosomeStub() { Fitness = 0.2 }, new ChromosomeStub() { Fitness = 0.3 }, new ChromosomeStub() { Fitness = 0.1 } }); target.End(2); Assert.AreEqual(2, target.Chromosomes.Count); Assert.AreEqual(0.3, target.Chromosomes[0].Fitness); Assert.AreEqual(0.2, target.Chromosomes[1].Fitness); }