ProgramTreeChromosomeFactory.java

1
package net.bmahe.genetics4j.gp.chromosomes.factory;
2
3
import org.apache.commons.lang3.Validate;
4
5
import net.bmahe.genetics4j.core.chromosomes.TreeChromosome;
6
import net.bmahe.genetics4j.core.chromosomes.TreeNode;
7
import net.bmahe.genetics4j.core.chromosomes.factory.ChromosomeFactory;
8
import net.bmahe.genetics4j.core.spec.chromosome.ChromosomeSpec;
9
import net.bmahe.genetics4j.gp.Operation;
10
import net.bmahe.genetics4j.gp.program.Program;
11
import net.bmahe.genetics4j.gp.program.ProgramGenerator;
12
import net.bmahe.genetics4j.gp.spec.chromosome.ProgramTreeChromosomeSpec;
13
14
public class ProgramTreeChromosomeFactory implements ChromosomeFactory<TreeChromosome<Operation<?>>> {
15
16
	private final ProgramGenerator programGenerator;
17
18
	public ProgramTreeChromosomeFactory(final ProgramGenerator _programGenerator) {
19
		Validate.notNull(_programGenerator);
20
21 1 1. <init> : Removed assignment to member variable programGenerator → KILLED
		this.programGenerator = _programGenerator;
22
	}
23
24
	@Override
25
	public boolean canHandle(final ChromosomeSpec chromosomeSpec) {
26
		Validate.notNull(chromosomeSpec);
27
28 2 1. canHandle : replaced boolean return with false for net/bmahe/genetics4j/gp/chromosomes/factory/ProgramTreeChromosomeFactory::canHandle → KILLED
2. canHandle : replaced boolean return with true for net/bmahe/genetics4j/gp/chromosomes/factory/ProgramTreeChromosomeFactory::canHandle → KILLED
		return chromosomeSpec instanceof ProgramTreeChromosomeSpec;
29
	}
30
31
	@Override
32
	public TreeChromosome<Operation<?>> generate(final ChromosomeSpec chromosomeSpec) {
33
		Validate.notNull(chromosomeSpec);
34
35
		final ProgramTreeChromosomeSpec ptcs = (ProgramTreeChromosomeSpec) chromosomeSpec;
36 1 1. generate : removed call to net/bmahe/genetics4j/gp/spec/chromosome/ProgramTreeChromosomeSpec::program → KILLED
		final Program program = ptcs.program();
37
38 1 1. generate : removed call to net/bmahe/genetics4j/gp/program/ProgramGenerator::generate → KILLED
		final TreeNode<Operation<?>> generatedProgram = programGenerator.generate(program);
39 2 1. generate : removed call to net/bmahe/genetics4j/core/chromosomes/TreeChromosome::<init> → KILLED
2. generate : replaced return value with null for net/bmahe/genetics4j/gp/chromosomes/factory/ProgramTreeChromosomeFactory::generate → KILLED
		return new TreeChromosome<Operation<?>>(generatedProgram);
40
	}
41
}

Mutations

21

1.1
Location : <init>
Killed by : net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest]/[method:generateSimple()]
Removed assignment to member variable programGenerator → KILLED

28

1.1
Location : canHandle
Killed by : net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest]/[method:mustHandleProgramTreeChromosomeSpec()]
replaced boolean return with false for net/bmahe/genetics4j/gp/chromosomes/factory/ProgramTreeChromosomeFactory::canHandle → KILLED

2.2
Location : canHandle
Killed by : net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest]/[method:mustHandleProgramTreeChromosomeSpec()]
replaced boolean return with true for net/bmahe/genetics4j/gp/chromosomes/factory/ProgramTreeChromosomeFactory::canHandle → KILLED

36

1.1
Location : generate
Killed by : net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest]/[method:generateSimple()]
removed call to net/bmahe/genetics4j/gp/spec/chromosome/ProgramTreeChromosomeSpec::program → KILLED

38

1.1
Location : generate
Killed by : net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest]/[method:generateSimple()]
removed call to net/bmahe/genetics4j/gp/program/ProgramGenerator::generate → KILLED

39

1.1
Location : generate
Killed by : net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest]/[method:generateSimple()]
removed call to net/bmahe/genetics4j/core/chromosomes/TreeChromosome::<init> → KILLED

2.2
Location : generate
Killed by : net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.chromosomes.factory.ProgramTreeChromosomeFactoryTest]/[method:generateSimple()]
replaced return value with null for net/bmahe/genetics4j/gp/chromosomes/factory/ProgramTreeChromosomeFactory::generate → KILLED

Active mutators

Tests examined


Report generated by PIT 1.19.6