1
|
|
package net.bmahe.genetics4j.gp.mutation; |
2
|
|
|
3
|
|
import java.util.List; |
4
|
|
import java.util.random.RandomGenerator; |
5
|
|
|
6
|
|
import org.apache.commons.lang3.Validate; |
7
|
|
|
8
|
|
import net.bmahe.genetics4j.core.Genotype; |
9
|
|
import net.bmahe.genetics4j.core.chromosomes.Chromosome; |
10
|
|
import net.bmahe.genetics4j.core.chromosomes.TreeChromosome; |
11
|
|
import net.bmahe.genetics4j.core.chromosomes.TreeNode; |
12
|
|
import net.bmahe.genetics4j.core.mutation.Mutator; |
13
|
|
import net.bmahe.genetics4j.core.spec.AbstractEAConfiguration; |
14
|
|
import net.bmahe.genetics4j.core.spec.chromosome.ChromosomeSpec; |
15
|
|
import net.bmahe.genetics4j.gp.Operation; |
16
|
|
import net.bmahe.genetics4j.gp.OperationFactory; |
17
|
|
import net.bmahe.genetics4j.gp.program.Program; |
18
|
|
import net.bmahe.genetics4j.gp.program.ProgramHelper; |
19
|
|
import net.bmahe.genetics4j.gp.spec.chromosome.ProgramTreeChromosomeSpec; |
20
|
|
|
21
|
|
public class ProgramRandomPruneMutator implements Mutator { |
22
|
|
|
23
|
|
private final ProgramHelper programHelper; |
24
|
|
private final RandomGenerator randomGenerator; |
25
|
|
private final AbstractEAConfiguration eaConfiguration; |
26
|
|
private final double populationMutationProbability; |
27
|
|
|
28
|
|
public ProgramRandomPruneMutator(final ProgramHelper _programHelper, final RandomGenerator _randomGenerator, |
29
|
|
final AbstractEAConfiguration _eaConfiguration, final double populationMutationProbability) { |
30
|
|
Validate.notNull(_programHelper); |
31
|
|
Validate.notNull(_randomGenerator); |
32
|
|
Validate.notNull(_eaConfiguration); |
33
|
|
Validate.inclusiveBetween(0.0, 1.0, populationMutationProbability); |
34
|
|
|
35
|
1
1. <init> : Removed assignment to member variable programHelper → KILLED
|
this.programHelper = _programHelper; |
36
|
1
1. <init> : Removed assignment to member variable randomGenerator → KILLED
|
this.randomGenerator = _randomGenerator; |
37
|
1
1. <init> : Removed assignment to member variable eaConfiguration → SURVIVED
|
this.eaConfiguration = _eaConfiguration; |
38
|
1
1. <init> : Removed assignment to member variable populationMutationProbability → SURVIVED
|
this.populationMutationProbability = populationMutationProbability; |
39
|
|
} |
40
|
|
|
41
|
|
protected TreeNode<Operation<?>> duplicateAndCut(final Program program, final TreeNode<Operation<?>> root, |
42
|
|
final int cutPoint, final int nodeIndex) { |
43
|
|
Validate.notNull(root); |
44
|
|
Validate.isTrue(cutPoint >= 0); |
45
|
|
|
46
|
1
1. duplicateAndCut : removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::getData → KILLED
|
final Operation<?> rootData = root.getData(); |
47
|
|
|
48
|
3
1. duplicateAndCut : removed conditional - replaced equality check with true → KILLED
2. duplicateAndCut : negated conditional → KILLED
3. duplicateAndCut : removed conditional - replaced equality check with false → KILLED
|
if (nodeIndex == cutPoint) { |
49
|
2
1. duplicateAndCut : removed call to net/bmahe/genetics4j/gp/Operation::returnedType → KILLED
2. duplicateAndCut : removed call to net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomTerminal → KILLED
|
final OperationFactory randomTerminal = programHelper.pickRandomTerminal(program, rootData.returnedType()); |
50
|
2
1. duplicateAndCut : removed call to net/bmahe/genetics4j/gp/program/Program::inputSpec → KILLED
2. duplicateAndCut : removed call to net/bmahe/genetics4j/gp/OperationFactory::build → KILLED
|
final Operation<?> operation = randomTerminal.build(program.inputSpec()); |
51
|
2
1. duplicateAndCut : removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::<init> → KILLED
2. duplicateAndCut : replaced return value with null for net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut → KILLED
|
return new TreeNode<Operation<?>>(operation); |
52
|
|
} else { |
53
|
1
1. duplicateAndCut : removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::getChildren → KILLED
|
final List<TreeNode<Operation<?>>> children = root.getChildren(); |
54
|
|
|
55
|
1
1. duplicateAndCut : removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::<init> → KILLED
|
final TreeNode<Operation<?>> duplicateRoot = new TreeNode<Operation<?>>(rootData); |
56
|
|
|
57
|
2
1. duplicateAndCut : Replaced integer addition with subtraction → KILLED
2. duplicateAndCut : Substituted 1 with 0 → KILLED
|
int currentIndex = nodeIndex + 1; |
58
|
6
1. duplicateAndCut : removed conditional - replaced comparison check with true → KILLED
2. duplicateAndCut : removed call to java/util/List::size → KILLED
3. duplicateAndCut : Substituted 0 with 1 → KILLED
4. duplicateAndCut : removed conditional - replaced comparison check with false → KILLED
5. duplicateAndCut : negated conditional → KILLED
6. duplicateAndCut : changed conditional boundary → KILLED
|
for (int i = 0; i < children.size(); i++) { |
59
|
1
1. duplicateAndCut : removed call to java/util/List::get → KILLED
|
final TreeNode<Operation<?>> treeNode = children.get(i); |
60
|
1
1. duplicateAndCut : removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::getSize → KILLED
|
final int childSize = treeNode.getSize(); |
61
|
|
|
62
|
2
1. duplicateAndCut : removed call to net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut → KILLED
2. duplicateAndCut : replaced call to net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut with argument → KILLED
|
final TreeNode<Operation<?>> childCopy = duplicateAndCut(program, treeNode, cutPoint, currentIndex); |
63
|
1
1. duplicateAndCut : removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::addChild → KILLED
|
duplicateRoot.addChild(childCopy); |
64
|
1
1. duplicateAndCut : Replaced integer addition with subtraction → KILLED
|
currentIndex += childSize; |
65
|
|
} |
66
|
|
|
67
|
1
1. duplicateAndCut : replaced return value with null for net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut → KILLED
|
return duplicateRoot; |
68
|
|
} |
69
|
|
} |
70
|
|
|
71
|
|
@Override |
72
|
|
public Genotype mutate(final Genotype original) { |
73
|
|
Validate.notNull(original); |
74
|
|
|
75
|
10
1. mutate : removed conditional - replaced equality check with true → SURVIVED
2. mutate : Substituted 1 with 0 → NO_COVERAGE
3. mutate : changed conditional boundary → SURVIVED
4. mutate : removed conditional - replaced comparison check with false → SURVIVED
5. mutate : removed call to java/util/random/RandomGenerator::nextDouble → SURVIVED
6. mutate : negated conditional → KILLED
7. mutate : removed conditional - replaced comparison check with true → KILLED
8. mutate : negated conditional → KILLED
9. mutate : removed conditional - replaced equality check with false → KILLED
10. mutate : Substituted 0 with 1 → KILLED
|
if (randomGenerator.nextDouble() < populationMutationProbability == false) { |
76
|
1
1. mutate : replaced return value with null for net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::mutate → KILLED
|
return original; |
77
|
|
} |
78
|
|
|
79
|
1
1. mutate : removed call to net/bmahe/genetics4j/core/Genotype::getSize → NO_COVERAGE
|
final Chromosome[] newChromosomes = new Chromosome[original.getSize()]; |
80
|
1
1. mutate : removed call to net/bmahe/genetics4j/core/Genotype::getChromosomes → NO_COVERAGE
|
final Chromosome[] chromosomes = original.getChromosomes(); |
81
|
5
1. mutate : removed conditional - replaced comparison check with false → NO_COVERAGE
2. mutate : Substituted 0 with 1 → NO_COVERAGE
3. mutate : changed conditional boundary → NO_COVERAGE
4. mutate : removed conditional - replaced comparison check with true → NO_COVERAGE
5. mutate : negated conditional → NO_COVERAGE
|
for (int chromosomeIndex = 0; chromosomeIndex < chromosomes.length; chromosomeIndex++) { |
82
|
1
1. mutate : removed call to net/bmahe/genetics4j/core/spec/AbstractEAConfiguration::getChromosomeSpec → NO_COVERAGE
|
final ChromosomeSpec chromosomeSpec = eaConfiguration.getChromosomeSpec(chromosomeIndex); |
83
|
|
final Chromosome chromosome = chromosomes[chromosomeIndex]; |
84
|
|
|
85
|
3
1. mutate : removed conditional - replaced equality check with false → NO_COVERAGE
2. mutate : removed conditional - replaced equality check with true → NO_COVERAGE
3. mutate : negated conditional → NO_COVERAGE
|
if (chromosomeSpec instanceof ProgramTreeChromosomeSpec == false) { |
86
|
2
1. mutate : removed call to java/lang/IllegalArgumentException::<init> → NO_COVERAGE
2. mutate : removed call to java/lang/String::valueOf → NO_COVERAGE
|
throw new IllegalArgumentException("This mutator does not support chromosome specs " + chromosomeSpec); |
87
|
|
} |
88
|
|
|
89
|
3
1. mutate : removed conditional - replaced equality check with true → NO_COVERAGE
2. mutate : negated conditional → NO_COVERAGE
3. mutate : removed conditional - replaced equality check with false → NO_COVERAGE
|
if (chromosome instanceof TreeChromosome<?> == false) { |
90
|
|
throw new IllegalArgumentException( |
91
|
3
1. mutate : removed call to java/lang/Class::getSimpleName → NO_COVERAGE
2. mutate : removed call to java/lang/IllegalArgumentException::<init> → NO_COVERAGE
3. mutate : removed call to net/bmahe/genetics4j/core/chromosomes/Chromosome::getClass → NO_COVERAGE
|
"This mutator does not support chromosome of type " + chromosome.getClass().getSimpleName()); |
92
|
|
} |
93
|
|
|
94
|
|
final ProgramTreeChromosomeSpec programTreeChromosomeSpec = (ProgramTreeChromosomeSpec) chromosomeSpec; |
95
|
|
|
96
|
|
final TreeChromosome<Operation<?>> treeChromosome = (TreeChromosome<Operation<?>>) chromosome; |
97
|
1
1. mutate : removed call to net/bmahe/genetics4j/core/chromosomes/TreeChromosome::getSize → NO_COVERAGE
|
final int chromosomeSize = treeChromosome.getSize(); |
98
|
|
|
99
|
5
1. mutate : removed conditional - replaced comparison check with false → NO_COVERAGE
2. mutate : changed conditional boundary → NO_COVERAGE
3. mutate : removed conditional - replaced comparison check with true → NO_COVERAGE
4. mutate : negated conditional → NO_COVERAGE
5. mutate : Substituted 2 with 3 → NO_COVERAGE
|
if (chromosomeSize > 2) { |
100
|
6
1. mutate : Substituted 1 with 0 → NO_COVERAGE
2. mutate : Substituted 1 with 0 → NO_COVERAGE
3. mutate : Replaced integer subtraction with addition → NO_COVERAGE
4. mutate : removed call to java/util/random/RandomGenerator::nextInt → NO_COVERAGE
5. mutate : Replaced integer addition with subtraction → NO_COVERAGE
6. mutate : replaced call to java/util/random/RandomGenerator::nextInt with argument → NO_COVERAGE
|
final int cutPoint = randomGenerator.nextInt(chromosomeSize - 1) + 1; |
101
|
|
|
102
|
1
1. mutate : removed call to net/bmahe/genetics4j/core/chromosomes/TreeChromosome::getRoot → NO_COVERAGE
|
final TreeNode<Operation<?>> root = treeChromosome.getRoot(); |
103
|
4
1. mutate : replaced call to net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut with argument → NO_COVERAGE
2. mutate : removed call to net/bmahe/genetics4j/gp/spec/chromosome/ProgramTreeChromosomeSpec::program → NO_COVERAGE
3. mutate : removed call to net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut → NO_COVERAGE
4. mutate : Substituted 0 with 1 → NO_COVERAGE
|
final TreeNode<Operation<?>> newRoot = duplicateAndCut(programTreeChromosomeSpec.program(), |
104
|
|
root, |
105
|
|
cutPoint, |
106
|
|
0); |
107
|
1
1. mutate : removed call to net/bmahe/genetics4j/core/chromosomes/TreeChromosome::<init> → NO_COVERAGE
|
final TreeChromosome<Operation<?>> newTreeChromosome = new TreeChromosome<>(newRoot); |
108
|
|
newChromosomes[chromosomeIndex] = newTreeChromosome; |
109
|
|
} else { |
110
|
|
newChromosomes[chromosomeIndex] = chromosome; |
111
|
|
} |
112
|
|
|
113
|
|
} |
114
|
|
|
115
|
2
1. mutate : removed call to net/bmahe/genetics4j/core/Genotype::<init> → NO_COVERAGE
2. mutate : replaced return value with null for net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::mutate → NO_COVERAGE
|
return new Genotype(newChromosomes); |
116
|
|
} |
117
|
|
} |
| | Mutations |
35 |
|
1.1 Location : <init> Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] Removed assignment to member variable programHelper → KILLED
|
36 |
|
1.1 Location : <init> Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()] Removed assignment to member variable randomGenerator → KILLED
|
37 |
|
1.1 Location : <init> Killed by : none Removed assignment to member variable eaConfiguration → SURVIVED
Covering tests
Covered by tests:
- net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()]
- net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()]
- net.bmahe.genetics4j.gp.mutation.ProgramRandomPrunePolicyHandlerTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPrunePolicyHandlerTest]/[method:createMutator()]
|
38 |
|
1.1 Location : <init> Killed by : none Removed assignment to member variable populationMutationProbability → SURVIVED
Covering tests
Covered by tests:
- net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()]
- net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()]
- net.bmahe.genetics4j.gp.mutation.ProgramRandomPrunePolicyHandlerTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPrunePolicyHandlerTest]/[method:createMutator()]
|
46 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::getData → KILLED
|
48 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed conditional - replaced equality check with true → KILLED
2.2 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] negated conditional → KILLED
3.3 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed conditional - replaced equality check with false → KILLED
|
49 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/gp/Operation::returnedType → KILLED
2.2 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomTerminal → KILLED
|
50 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/gp/program/Program::inputSpec → KILLED
2.2 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/gp/OperationFactory::build → KILLED
|
51 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::<init> → KILLED
2.2 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] replaced return value with null for net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut → KILLED
|
53 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::getChildren → KILLED
|
55 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::<init> → KILLED
|
57 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] Replaced integer addition with subtraction → KILLED
2.2 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] Substituted 1 with 0 → KILLED
|
58 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed conditional - replaced comparison check with true → KILLED
2.2 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to java/util/List::size → KILLED
3.3 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] Substituted 0 with 1 → KILLED
4.4 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed conditional - replaced comparison check with false → KILLED
5.5 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] negated conditional → KILLED
6.6 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] changed conditional boundary → KILLED
|
59 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to java/util/List::get → KILLED
|
60 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::getSize → KILLED
|
62 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut → KILLED
2.2 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] replaced call to net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut with argument → KILLED
|
63 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] removed call to net/bmahe/genetics4j/core/chromosomes/TreeNode::addChild → KILLED
|
64 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] Replaced integer addition with subtraction → KILLED
|
67 |
|
1.1 Location : duplicateAndCut Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:simple()] replaced return value with null for net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut → KILLED
|
75 |
|
1.1 Location : mutate Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()] negated conditional → KILLED
2.2 Location : mutate Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()] removed conditional - replaced comparison check with true → KILLED
3.3 Location : mutate Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()] negated conditional → KILLED
4.4 Location : mutate Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()] removed conditional - replaced equality check with false → KILLED
5.5 Location : mutate Killed by : none removed conditional - replaced equality check with true → SURVIVED
Covering tests
Covered by tests:
- net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()]
6.6 Location : mutate Killed by : none Substituted 1 with 0 → NO_COVERAGE
7.7 Location : mutate Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()] Substituted 0 with 1 → KILLED
8.8 Location : mutate Killed by : none changed conditional boundary → SURVIVED
Covering tests
Covered by tests:
- net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()]
9.9 Location : mutate Killed by : none removed conditional - replaced comparison check with false → SURVIVED
Covering tests
Covered by tests:
- net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()]
10.10 Location : mutate Killed by : none removed call to java/util/random/RandomGenerator::nextDouble → SURVIVED
Covering tests
Covered by tests:
- net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()]
|
76 |
|
1.1 Location : mutate Killed by : net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.mutation.ProgramRandomPruneMutatorTest]/[method:noMutate()] replaced return value with null for net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::mutate → KILLED
|
79 |
|
1.1 Location : mutate Killed by : none removed call to net/bmahe/genetics4j/core/Genotype::getSize → NO_COVERAGE
|
80 |
|
1.1 Location : mutate Killed by : none removed call to net/bmahe/genetics4j/core/Genotype::getChromosomes → NO_COVERAGE
|
81 |
|
1.1 Location : mutate Killed by : none removed conditional - replaced comparison check with false → NO_COVERAGE
2.2 Location : mutate Killed by : none Substituted 0 with 1 → NO_COVERAGE
3.3 Location : mutate Killed by : none changed conditional boundary → NO_COVERAGE
4.4 Location : mutate Killed by : none removed conditional - replaced comparison check with true → NO_COVERAGE
5.5 Location : mutate Killed by : none negated conditional → NO_COVERAGE
|
82 |
|
1.1 Location : mutate Killed by : none removed call to net/bmahe/genetics4j/core/spec/AbstractEAConfiguration::getChromosomeSpec → NO_COVERAGE
|
85 |
|
1.1 Location : mutate Killed by : none removed conditional - replaced equality check with false → NO_COVERAGE
2.2 Location : mutate Killed by : none removed conditional - replaced equality check with true → NO_COVERAGE
3.3 Location : mutate Killed by : none negated conditional → NO_COVERAGE
|
86 |
|
1.1 Location : mutate Killed by : none removed call to java/lang/IllegalArgumentException::<init> → NO_COVERAGE
2.2 Location : mutate Killed by : none removed call to java/lang/String::valueOf → NO_COVERAGE
|
89 |
|
1.1 Location : mutate Killed by : none removed conditional - replaced equality check with true → NO_COVERAGE
2.2 Location : mutate Killed by : none negated conditional → NO_COVERAGE
3.3 Location : mutate Killed by : none removed conditional - replaced equality check with false → NO_COVERAGE
|
91 |
|
1.1 Location : mutate Killed by : none removed call to java/lang/Class::getSimpleName → NO_COVERAGE
2.2 Location : mutate Killed by : none removed call to java/lang/IllegalArgumentException::<init> → NO_COVERAGE
3.3 Location : mutate Killed by : none removed call to net/bmahe/genetics4j/core/chromosomes/Chromosome::getClass → NO_COVERAGE
|
97 |
|
1.1 Location : mutate Killed by : none removed call to net/bmahe/genetics4j/core/chromosomes/TreeChromosome::getSize → NO_COVERAGE
|
99 |
|
1.1 Location : mutate Killed by : none removed conditional - replaced comparison check with false → NO_COVERAGE
2.2 Location : mutate Killed by : none changed conditional boundary → NO_COVERAGE
3.3 Location : mutate Killed by : none removed conditional - replaced comparison check with true → NO_COVERAGE
4.4 Location : mutate Killed by : none negated conditional → NO_COVERAGE
5.5 Location : mutate Killed by : none Substituted 2 with 3 → NO_COVERAGE
|
100 |
|
1.1 Location : mutate Killed by : none Substituted 1 with 0 → NO_COVERAGE
2.2 Location : mutate Killed by : none Substituted 1 with 0 → NO_COVERAGE
3.3 Location : mutate Killed by : none Replaced integer subtraction with addition → NO_COVERAGE
4.4 Location : mutate Killed by : none removed call to java/util/random/RandomGenerator::nextInt → NO_COVERAGE
5.5 Location : mutate Killed by : none Replaced integer addition with subtraction → NO_COVERAGE
6.6 Location : mutate Killed by : none replaced call to java/util/random/RandomGenerator::nextInt with argument → NO_COVERAGE
|
102 |
|
1.1 Location : mutate Killed by : none removed call to net/bmahe/genetics4j/core/chromosomes/TreeChromosome::getRoot → NO_COVERAGE
|
103 |
|
1.1 Location : mutate Killed by : none replaced call to net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut with argument → NO_COVERAGE
2.2 Location : mutate Killed by : none removed call to net/bmahe/genetics4j/gp/spec/chromosome/ProgramTreeChromosomeSpec::program → NO_COVERAGE
3.3 Location : mutate Killed by : none removed call to net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::duplicateAndCut → NO_COVERAGE
4.4 Location : mutate Killed by : none Substituted 0 with 1 → NO_COVERAGE
|
107 |
|
1.1 Location : mutate Killed by : none removed call to net/bmahe/genetics4j/core/chromosomes/TreeChromosome::<init> → NO_COVERAGE
|
115 |
|
1.1 Location : mutate Killed by : none removed call to net/bmahe/genetics4j/core/Genotype::<init> → NO_COVERAGE
2.2 Location : mutate Killed by : none replaced return value with null for net/bmahe/genetics4j/gp/mutation/ProgramRandomPruneMutator::mutate → NO_COVERAGE
|