@Override public void copyCachedResults(ExecutableChromosome other) { RegressionTestChromosome otherChromosome = (RegressionTestChromosome) other; theTest.copyCachedResults(otherChromosome.theTest); theSameTestForTheOtherClassLoader .copyCachedResults(otherChromosome.theSameTestForTheOtherClassLoader); }
private static void restoreTestCase(TestChromosome c, TestChromosome copy) { c.test = copy.test; c.copyCachedResults(copy); //c.setFitness(copy.getFitness()); c.setFitnessValues(copy.getFitnessValues()); c.setPreviousFitnessValues(copy.getPreviousFitnessValues()); c.setChanged(false); }
protected void restore(TestChromosome test) { if (backup == null) return; test.setTestCase(backup.getTestCase().clone()); test.copyCachedResults(backup); //test.setFitness(backup.getFitness()); test.setFitnessValues(backup.getFitnessValues()); test.setPreviousFitnessValues(backup.getPreviousFitnessValues()); test.setChanged(backup.isChanged()); }
/** * {@inheritDoc} * * Create a deep copy of the chromosome */ @Override public Chromosome clone() { TestChromosome c = new TestChromosome(); c.test = test.clone(); c.setFitnessValues(getFitnessValues()); c.setPreviousFitnessValues(getPreviousFitnessValues()); c.copyCachedResults(this); c.setChanged(isChanged()); c.setLocalSearchApplied(hasLocalSearchBeenApplied()); if (Properties.LOCAL_SEARCH_SELECTIVE) { for (TestMutationHistoryEntry mutation : mutationHistory) { if(test.contains(mutation.getStatement())) c.mutationHistory.addMutationEntry(mutation.clone(c.getTestCase())); } } // c.mutationHistory.set(mutationHistory); c.setNumberOfMutations(this.getNumberOfMutations()); c.setNumberOfEvaluations(this.getNumberOfEvaluations()); c.setKineticEnergy(getKineticEnergy()); c.setNumCollisions(getNumCollisions()); return c; }