* Make sure that evaluate() is called as many different populations are
* passed to getFitness().
*/
public void testEvaluateDifferentPopulations() {
STFitnessEvaluatorMock<Integer> mock = new STFitnessEvaluatorMock<Integer>();
Random rng = new MersenneTwisterRNG();
// generate a population A
int size = 100;
List<Integer> population = randomInts(size, rng);
List<Double> evaluations = randomFloats(size, rng);
mock.shouldReturn(evaluations);
// call with population A
mock.getFitness(population.get(rng.nextInt(size)), population);
// generate a new population B
population = randomInts(size, rng);
// call with population B
mock.getFitness(population.get(rng.nextInt(size)), population);
// getFitness() should be called twice
assertEquals(2, mock.getNbCalls());
}