public void SelectFittestChildrenOnNullArgument()
 {
     using (var parameters = new ExpressionEvolverGeneticAlgorithmParameters(
                (a) => { return(a); }))
     {
         parameters.SelectFittestChildren(null);
     }
 }
        public void SelectFittestChildrenOnDisposedObject()
        {
            ExpressionEvolverGeneticAlgorithmParameters parameters = null;

            using (parameters = new ExpressionEvolverGeneticAlgorithmParameters(
                       (a) => { return(a); })) { }

            parameters.SelectFittestChildren(null);
        }
        public void SelectFittestChildrenWhenPopulationIsTooSmall()
        {
            using (var parameters = new ExpressionEvolverGeneticAlgorithmParameters(
                       (a) => { return(a); }))
            {
                var chromosomes = new List <Chromosome <Expression <Func <double, double> > > >();

                for (var i = 0; i < (int)ExpressionEvolverGeneticAlgorithmParameters.SelectFittestChildrenPercentage - 1; i++)
                {
                    chromosomes.Add(new Chromosome <Expression <Func <double, double> > >(a => a, (double)i));
                }

                var population = new Population <Expression <Func <double, double> > >(chromosomes);
                var results    = parameters.SelectFittestChildren(population);

                Assert.AreEqual(0, results.Count);
            }
        }