ProgramHelper.java

1
package net.bmahe.genetics4j.gp.program;
2
3
import java.util.List;
4
import java.util.Objects;
5
import java.util.Set;
6
import java.util.random.RandomGenerator;
7
import java.util.stream.Collectors;
8
import java.util.stream.Stream;
9
10
import org.apache.commons.lang3.Validate;
11
import org.apache.logging.log4j.LogManager;
12
import org.apache.logging.log4j.Logger;
13
14
import net.bmahe.genetics4j.gp.OperationFactory;
15
16
public class ProgramHelper {
17
	public final static Logger logger = LogManager.getLogger(ProgramHelper.class);
18
19
	private final RandomGenerator randomGenerator;
20
21
	public ProgramHelper(final RandomGenerator _randomGenerator) {
22
		Objects.requireNonNull(_randomGenerator);
23
24 1 1. <init> : Removed assignment to member variable randomGenerator → KILLED
		this.randomGenerator = _randomGenerator;
25
	}
26
27
	public OperationFactory pickRandomFunction(final Program program) {
28
		Objects.requireNonNull(program);
29
		Validate.isTrue(program.functions()
30 7 1. pickRandomFunction : removed conditional - replaced comparison check with true → SURVIVED
2. pickRandomFunction : Substituted 0 with 1 → SURVIVED
3. pickRandomFunction : changed conditional boundary → SURVIVED
4. pickRandomFunction : Substituted 1 with 0 → KILLED
5. pickRandomFunction : removed call to java/util/Set::size → KILLED
6. pickRandomFunction : removed conditional - replaced comparison check with false → KILLED
7. pickRandomFunction : negated conditional → KILLED
				.size() > 0);
31
32 1 1. pickRandomFunction : removed call to net/bmahe/genetics4j/gp/program/Program::functions → KILLED
		final Set<OperationFactory> functions = program.functions();
33 2 1. pickRandomFunction : replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomFunction → KILLED
2. pickRandomFunction : removed call to java/util/Set::stream → KILLED
		return functions.stream()
34 5 1. pickRandomFunction : removed call to java/util/random/RandomGenerator::nextInt → KILLED
2. pickRandomFunction : removed call to java/util/Set::size → KILLED
3. pickRandomFunction : replaced call to java/util/stream/Stream::skip with receiver → KILLED
4. pickRandomFunction : replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED
5. pickRandomFunction : removed call to java/util/stream/Stream::skip → KILLED
				.skip(randomGenerator.nextInt(functions.size()))
35 1 1. pickRandomFunction : removed call to java/util/stream/Stream::findFirst → KILLED
				.findFirst()
36 1 1. pickRandomFunction : removed call to java/util/Optional::get → KILLED
				.get();
37
	}
38
39
	public <T> OperationFactory pickRandomFunction(final Program program, final Class<T> requiredClass) {
40
		Objects.requireNonNull(program);
41
		Objects.requireNonNull(requiredClass);
42
		Validate.isTrue(program.functions()
43 7 1. pickRandomFunction : changed conditional boundary → SURVIVED
2. pickRandomFunction : Substituted 0 with 1 → NO_COVERAGE
3. pickRandomFunction : removed conditional - replaced comparison check with true → SURVIVED
4. pickRandomFunction : removed call to java/util/Set::size → KILLED
5. pickRandomFunction : Substituted 1 with 0 → KILLED
6. pickRandomFunction : negated conditional → KILLED
7. pickRandomFunction : removed conditional - replaced comparison check with false → KILLED
				.size() > 0);
44
45 1 1. pickRandomFunction : removed call to net/bmahe/genetics4j/gp/program/Program::functions → KILLED
		final Set<OperationFactory> functions = program.functions();
46
		@SuppressWarnings("unchecked")
47 1 1. pickRandomFunction : removed call to java/util/Set::stream → KILLED
		final List<OperationFactory> candidates = functions.stream()
48 5 1. pickRandomFunction : removed call to java/util/stream/Stream::filter → KILLED
2. pickRandomFunction : replaced call to java/util/stream/Stream::filter with receiver → KILLED
3. lambda$pickRandomFunction$0 : removed call to net/bmahe/genetics4j/gp/OperationFactory::returnedType → KILLED
4. lambda$pickRandomFunction$0 : replaced boolean return with false for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomFunction$0 → KILLED
5. lambda$pickRandomFunction$0 : replaced boolean return with true for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomFunction$0 → KILLED
				.filter((operationFactory) -> operationFactory.returnedType()
49 1 1. lambda$pickRandomFunction$0 : removed call to java/lang/Class::isAssignableFrom → KILLED
						.isAssignableFrom(requiredClass))
50 2 1. pickRandomFunction : removed call to java/util/stream/Stream::collect → KILLED
2. pickRandomFunction : removed call to java/util/stream/Collectors::toList → KILLED
				.collect(Collectors.toList());
51
52 7 1. pickRandomFunction : removed conditional - replaced equality check with false → SURVIVED
2. pickRandomFunction : removed call to java/util/List::isEmpty → SURVIVED
3. pickRandomFunction : removed conditional - replaced equality check with true → SURVIVED
4. pickRandomFunction : removed conditional - replaced equality check with true → KILLED
5. pickRandomFunction : negated conditional → KILLED
6. pickRandomFunction : negated conditional → KILLED
7. pickRandomFunction : removed conditional - replaced equality check with false → KILLED
		if (candidates == null || candidates.isEmpty()) {
53 2 1. pickRandomFunction : removed call to java/lang/String::valueOf → SURVIVED
2. pickRandomFunction : removed call to java/lang/IllegalArgumentException::<init> → KILLED
			throw new IllegalArgumentException("Could not find a suitable function returning a " + requiredClass);
54
		}
55
56 5 1. pickRandomFunction : removed call to java/util/random/RandomGenerator::nextInt → SURVIVED
2. pickRandomFunction : removed call to java/util/List::get → KILLED
3. pickRandomFunction : removed call to java/util/List::size → KILLED
4. pickRandomFunction : replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomFunction → KILLED
5. pickRandomFunction : replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED
		return candidates.get(randomGenerator.nextInt(candidates.size()));
57
	}
58
59
	public <T> OperationFactory pickRandomTerminal(final Program program, final Class<T> requiredClass) {
60
		Objects.requireNonNull(program);
61
		Objects.requireNonNull(requiredClass);
62
63 1 1. pickRandomTerminal : removed call to net/bmahe/genetics4j/gp/program/Program::terminal → KILLED
		final Set<OperationFactory> terminals = program.terminal();
64
		@SuppressWarnings("unchecked")
65 1 1. pickRandomTerminal : removed call to java/util/Set::stream → KILLED
		final List<OperationFactory> candidates = terminals.stream()
66 5 1. lambda$pickRandomTerminal$1 : removed call to net/bmahe/genetics4j/gp/OperationFactory::returnedType → KILLED
2. pickRandomTerminal : replaced call to java/util/stream/Stream::filter with receiver → KILLED
3. lambda$pickRandomTerminal$1 : replaced boolean return with false for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomTerminal$1 → KILLED
4. pickRandomTerminal : removed call to java/util/stream/Stream::filter → KILLED
5. lambda$pickRandomTerminal$1 : replaced boolean return with true for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomTerminal$1 → KILLED
				.filter((operationFactory) -> operationFactory.returnedType()
67 1 1. lambda$pickRandomTerminal$1 : removed call to java/lang/Class::isAssignableFrom → KILLED
						.isAssignableFrom(requiredClass))
68 2 1. pickRandomTerminal : removed call to java/util/stream/Collectors::toList → KILLED
2. pickRandomTerminal : removed call to java/util/stream/Stream::collect → KILLED
				.collect(Collectors.toList());
69
70 7 1. pickRandomTerminal : removed conditional - replaced equality check with false → SURVIVED
2. pickRandomTerminal : removed conditional - replaced equality check with true → SURVIVED
3. pickRandomTerminal : removed call to java/util/List::isEmpty → SURVIVED
4. pickRandomTerminal : removed conditional - replaced equality check with false → KILLED
5. pickRandomTerminal : negated conditional → KILLED
6. pickRandomTerminal : removed conditional - replaced equality check with true → KILLED
7. pickRandomTerminal : negated conditional → KILLED
		if (candidates == null || candidates.isEmpty()) {
71 2 1. pickRandomTerminal : removed call to java/lang/String::valueOf → SURVIVED
2. pickRandomTerminal : removed call to java/lang/IllegalArgumentException::<init> → KILLED
			throw new IllegalArgumentException("Could not find a suitable terminal returning a " + requiredClass);
72
		}
73
74 5 1. pickRandomTerminal : removed call to java/util/random/RandomGenerator::nextInt → SURVIVED
2. pickRandomTerminal : removed call to java/util/List::get → KILLED
3. pickRandomTerminal : replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED
4. pickRandomTerminal : replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomTerminal → KILLED
5. pickRandomTerminal : removed call to java/util/List::size → KILLED
		return candidates.get(randomGenerator.nextInt(candidates.size()));
75
	}
76
77
	public OperationFactory pickRandomTerminal(final Program program) {
78
		Objects.requireNonNull(program);
79
80 1 1. pickRandomTerminal : removed call to net/bmahe/genetics4j/gp/program/Program::terminal → KILLED
		final Set<OperationFactory> terminals = program.terminal();
81 1 1. pickRandomTerminal : removed call to java/util/Set::stream → KILLED
		final List<OperationFactory> candidates = terminals.stream()
82 2 1. pickRandomTerminal : removed call to java/util/stream/Collectors::toList → KILLED
2. pickRandomTerminal : removed call to java/util/stream/Stream::collect → KILLED
				.collect(Collectors.toList());
83
84 5 1. pickRandomTerminal : removed call to java/util/List::get → KILLED
2. pickRandomTerminal : replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomTerminal → KILLED
3. pickRandomTerminal : removed call to java/util/List::size → KILLED
4. pickRandomTerminal : removed call to java/util/random/RandomGenerator::nextInt → KILLED
5. pickRandomTerminal : replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED
		return candidates.get(randomGenerator.nextInt(candidates.size()));
85
	}
86
87
	public OperationFactory pickRandomFunctionOrTerminal(final Program program) {
88
		Objects.requireNonNull(program);
89
90 1 1. pickRandomFunctionOrTerminal : removed call to net/bmahe/genetics4j/gp/program/Program::terminal → KILLED
		final Set<OperationFactory> terminals = program.terminal();
91 1 1. pickRandomFunctionOrTerminal : removed call to net/bmahe/genetics4j/gp/program/Program::functions → KILLED
		final Set<OperationFactory> functions = program.functions();
92 3 1. pickRandomFunctionOrTerminal : removed call to java/util/Set::size → SURVIVED
2. pickRandomFunctionOrTerminal : removed call to java/util/Set::size → SURVIVED
3. pickRandomFunctionOrTerminal : Replaced integer addition with subtraction → KILLED
		final int totalNumberCandidates = terminals.size() + functions.size();
93
94 4 1. pickRandomFunctionOrTerminal : replaced call to java/util/stream/Stream::concat with argument → KILLED
2. pickRandomFunctionOrTerminal : removed call to java/util/Set::stream → KILLED
3. pickRandomFunctionOrTerminal : removed call to java/util/stream/Stream::concat → KILLED
4. pickRandomFunctionOrTerminal : removed call to java/util/Set::stream → KILLED
		final Stream<OperationFactory> candidates = Stream.concat(terminals.stream(), functions.stream());
95 2 1. pickRandomFunctionOrTerminal : removed call to java/util/random/RandomGenerator::nextInt → KILLED
2. pickRandomFunctionOrTerminal : replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED
		final int chosenCandidate = randomGenerator.nextInt(totalNumberCandidates);
96
97 3 1. pickRandomFunctionOrTerminal : removed call to java/util/stream/Stream::skip → KILLED
2. pickRandomFunctionOrTerminal : replaced call to java/util/stream/Stream::skip with receiver → KILLED
3. pickRandomFunctionOrTerminal : replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomFunctionOrTerminal → KILLED
		return candidates.skip(chosenCandidate)
98 1 1. pickRandomFunctionOrTerminal : removed call to java/util/stream/Stream::findFirst → KILLED
				.findFirst()
99 1 1. pickRandomFunctionOrTerminal : removed call to java/util/Optional::get → KILLED
				.get();
100
	}
101
102
	public <T> OperationFactory pickRandomFunctionOrTerminal(final Program program, final Class<T> requiredClass) {
103
		Objects.requireNonNull(program);
104
		Objects.requireNonNull(requiredClass);
105
106 1 1. pickRandomFunctionOrTerminal : removed call to net/bmahe/genetics4j/gp/program/Program::terminal → KILLED
		final Set<OperationFactory> terminals = program.terminal();
107 1 1. pickRandomFunctionOrTerminal : removed call to net/bmahe/genetics4j/gp/program/Program::functions → KILLED
		final Set<OperationFactory> functions = program.functions();
108
109 4 1. pickRandomFunctionOrTerminal : replaced call to java/util/stream/Stream::concat with argument → SURVIVED
2. pickRandomFunctionOrTerminal : removed call to java/util/Set::stream → KILLED
3. pickRandomFunctionOrTerminal : removed call to java/util/stream/Stream::concat → KILLED
4. pickRandomFunctionOrTerminal : removed call to java/util/Set::stream → KILLED
		final Stream<OperationFactory> candidates = Stream.concat(terminals.stream(), functions.stream());
110
111
		@SuppressWarnings("unchecked")
112
		final List<OperationFactory> filteredCandidates = candidates
113 5 1. lambda$pickRandomFunctionOrTerminal$2 : removed call to net/bmahe/genetics4j/gp/OperationFactory::returnedType → KILLED
2. lambda$pickRandomFunctionOrTerminal$2 : replaced boolean return with false for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomFunctionOrTerminal$2 → KILLED
3. pickRandomFunctionOrTerminal : replaced call to java/util/stream/Stream::filter with receiver → KILLED
4. pickRandomFunctionOrTerminal : removed call to java/util/stream/Stream::filter → KILLED
5. lambda$pickRandomFunctionOrTerminal$2 : replaced boolean return with true for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomFunctionOrTerminal$2 → KILLED
				.filter((operationFactory) -> operationFactory.returnedType()
114 1 1. lambda$pickRandomFunctionOrTerminal$2 : removed call to java/lang/Class::isAssignableFrom → KILLED
						.isAssignableFrom(requiredClass))
115 2 1. pickRandomFunctionOrTerminal : removed call to java/util/stream/Stream::collect → KILLED
2. pickRandomFunctionOrTerminal : removed call to java/util/stream/Collectors::toList → KILLED
				.collect(Collectors.toList());
116
117 1 1. pickRandomFunctionOrTerminal : removed call to java/util/List::size → KILLED
		final int filteredCandidatesCount = filteredCandidates.size();
118 3 1. pickRandomFunctionOrTerminal : removed conditional - replaced equality check with false → SURVIVED
2. pickRandomFunctionOrTerminal : removed conditional - replaced equality check with true → KILLED
3. pickRandomFunctionOrTerminal : negated conditional → KILLED
		if (filteredCandidatesCount == 0) {
119
			logger.error("No candidate terminals or functions found that can return an instance of class {}",
120
					requiredClass);
121
			logger.debug("\tKnown terminals: {}",
122 1 1. pickRandomFunctionOrTerminal : removed call to net/bmahe/genetics4j/gp/program/Program::terminal → NO_COVERAGE
					program.terminal()
123 1 1. pickRandomFunctionOrTerminal : removed call to java/util/Set::stream → NO_COVERAGE
							.stream());
124
			logger.debug("\tKnown functions: {}", program.functions());
125
126 2 1. pickRandomFunctionOrTerminal : removed call to java/lang/String::valueOf → NO_COVERAGE
2. pickRandomFunctionOrTerminal : removed call to java/lang/IllegalArgumentException::<init> → NO_COVERAGE
			throw new IllegalArgumentException(
127
					"No candidate terminals or functions found that can return an instance of class " + requiredClass);
128
		}
129
130 3 1. pickRandomFunctionOrTerminal : removed call to java/util/random/RandomGenerator::nextInt → SURVIVED
2. pickRandomFunctionOrTerminal : removed call to java/util/List::size → KILLED
3. pickRandomFunctionOrTerminal : replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED
		final int chosenCandidate = randomGenerator.nextInt(filteredCandidates.size());
131
132 2 1. pickRandomFunctionOrTerminal : replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomFunctionOrTerminal → KILLED
2. pickRandomFunctionOrTerminal : removed call to java/util/List::get → KILLED
		return filteredCandidates.get(chosenCandidate);
133
	}
134
}

Mutations

24

1.1
Location : <init>
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalSingleFunction()]
Removed assignment to member variable randomGenerator → KILLED

30

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
Substituted 1 with 0 → KILLED

2.2
Location : pickRandomFunction
Killed by : none
removed conditional - replaced comparison check with true → SURVIVED
Covering tests

3.3
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
removed call to java/util/Set::size → KILLED

4.4
Location : pickRandomFunction
Killed by : none
Substituted 0 with 1 → SURVIVED Covering tests

5.5
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
removed conditional - replaced comparison check with false → KILLED

6.6
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
negated conditional → KILLED

7.7
Location : pickRandomFunction
Killed by : none
changed conditional boundary → SURVIVED Covering tests

32

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
removed call to net/bmahe/genetics4j/gp/program/Program::functions → KILLED

33

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomFunction → KILLED

2.2
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
removed call to java/util/Set::stream → KILLED

34

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunction()]
removed call to java/util/random/RandomGenerator::nextInt → KILLED

2.2
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
removed call to java/util/Set::size → KILLED

3.3
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunction()]
replaced call to java/util/stream/Stream::skip with receiver → KILLED

4.4
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED

5.5
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
removed call to java/util/stream/Stream::skip → KILLED

35

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
removed call to java/util/stream/Stream::findFirst → KILLED

36

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionSingleFunction()]
removed call to java/util/Optional::get → KILLED

43

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
removed call to java/util/Set::size → KILLED

2.2
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
Substituted 1 with 0 → KILLED

3.3
Location : pickRandomFunction
Killed by : none
changed conditional boundary → SURVIVED
Covering tests

4.4
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
negated conditional → KILLED

5.5
Location : pickRandomFunction
Killed by : none
Substituted 0 with 1 → NO_COVERAGE

6.6
Location : pickRandomFunction
Killed by : none
removed conditional - replaced comparison check with true → SURVIVED Covering tests

7.7
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
removed conditional - replaced comparison check with false → KILLED

45

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraintButNoFunctionAvailable()]
removed call to net/bmahe/genetics4j/gp/program/Program::functions → KILLED

47

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraintButNoFunctionAvailable()]
removed call to java/util/Set::stream → KILLED

48

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraintButNoFunctionAvailable()]
removed call to java/util/stream/Stream::filter → KILLED

2.2
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraintButNoFunctionAvailable()]
replaced call to java/util/stream/Stream::filter with receiver → KILLED

3.3
Location : lambda$pickRandomFunction$0
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraintButNoFunctionAvailable()]
removed call to net/bmahe/genetics4j/gp/OperationFactory::returnedType → KILLED

4.4
Location : lambda$pickRandomFunction$0
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
replaced boolean return with false for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomFunction$0 → KILLED

5.5
Location : lambda$pickRandomFunction$0
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraintButNoFunctionAvailable()]
replaced boolean return with true for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomFunction$0 → KILLED

49

1.1
Location : lambda$pickRandomFunction$0
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
removed call to java/lang/Class::isAssignableFrom → KILLED

50

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
removed call to java/util/stream/Stream::collect → KILLED

2.2
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraintButNoFunctionAvailable()]
removed call to java/util/stream/Collectors::toList → KILLED

52

1.1
Location : pickRandomFunction
Killed by : none
removed conditional - replaced equality check with false → SURVIVED
Covering tests

2.2
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
removed conditional - replaced equality check with true → KILLED

3.3
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
negated conditional → KILLED

4.4
Location : pickRandomFunction
Killed by : none
removed call to java/util/List::isEmpty → SURVIVED Covering tests

5.5
Location : pickRandomFunction
Killed by : none
removed conditional - replaced equality check with true → SURVIVED Covering tests

6.6
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
negated conditional → KILLED

7.7
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
removed conditional - replaced equality check with false → KILLED

53

1.1
Location : pickRandomFunction
Killed by : none
removed call to java/lang/String::valueOf → SURVIVED
Covering tests

2.2
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraintButNoFunctionAvailable()]
removed call to java/lang/IllegalArgumentException::<init> → KILLED

56

1.1
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
removed call to java/util/List::get → KILLED

2.2
Location : pickRandomFunction
Killed by : none
removed call to java/util/random/RandomGenerator::nextInt → SURVIVED
Covering tests

3.3
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
removed call to java/util/List::size → KILLED

4.4
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomFunction → KILLED

5.5
Location : pickRandomFunction
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomFunctionWithConstraint()]
replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED

63

1.1
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraintButNoTerminalAvailable()]
removed call to net/bmahe/genetics4j/gp/program/Program::terminal → KILLED

65

1.1
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraintButNoTerminalAvailable()]
removed call to java/util/Set::stream → KILLED

66

1.1
Location : lambda$pickRandomTerminal$1
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraintButNoTerminalAvailable()]
removed call to net/bmahe/genetics4j/gp/OperationFactory::returnedType → KILLED

2.2
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraintButNoTerminalAvailable()]
replaced call to java/util/stream/Stream::filter with receiver → KILLED

3.3
Location : lambda$pickRandomTerminal$1
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
replaced boolean return with false for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomTerminal$1 → KILLED

4.4
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraintButNoTerminalAvailable()]
removed call to java/util/stream/Stream::filter → KILLED

5.5
Location : lambda$pickRandomTerminal$1
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraintButNoTerminalAvailable()]
replaced boolean return with true for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomTerminal$1 → KILLED

67

1.1
Location : lambda$pickRandomTerminal$1
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
removed call to java/lang/Class::isAssignableFrom → KILLED

68

1.1
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraintButNoTerminalAvailable()]
removed call to java/util/stream/Collectors::toList → KILLED

2.2
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
removed call to java/util/stream/Stream::collect → KILLED

70

1.1
Location : pickRandomTerminal
Killed by : none
removed conditional - replaced equality check with false → SURVIVED
Covering tests

2.2
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
removed conditional - replaced equality check with false → KILLED

3.3
Location : pickRandomTerminal
Killed by : none
removed conditional - replaced equality check with true → SURVIVED Covering tests

4.4
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
negated conditional → KILLED

5.5
Location : pickRandomTerminal
Killed by : none
removed call to java/util/List::isEmpty → SURVIVED Covering tests

6.6
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
removed conditional - replaced equality check with true → KILLED

7.7
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
negated conditional → KILLED

71

1.1
Location : pickRandomTerminal
Killed by : none
removed call to java/lang/String::valueOf → SURVIVED
Covering tests

2.2
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraintButNoTerminalAvailable()]
removed call to java/lang/IllegalArgumentException::<init> → KILLED

74

1.1
Location : pickRandomTerminal
Killed by : none
removed call to java/util/random/RandomGenerator::nextInt → SURVIVED
Covering tests

2.2
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
removed call to java/util/List::get → KILLED

3.3
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED

4.4
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomTerminal → KILLED

5.5
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalWithConstraint()]
removed call to java/util/List::size → KILLED

80

1.1
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalSingleFunction()]
removed call to net/bmahe/genetics4j/gp/program/Program::terminal → KILLED

81

1.1
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalSingleFunction()]
removed call to java/util/Set::stream → KILLED

82

1.1
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalSingleFunction()]
removed call to java/util/stream/Collectors::toList → KILLED

2.2
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalSingleFunction()]
removed call to java/util/stream/Stream::collect → KILLED

84

1.1
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalSingleFunction()]
removed call to java/util/List::get → KILLED

2.2
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalSingleFunction()]
replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomTerminal → KILLED

3.3
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalSingleFunction()]
removed call to java/util/List::size → KILLED

4.4
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalButNoTerminal()]
removed call to java/util/random/RandomGenerator::nextInt → KILLED

5.5
Location : pickRandomTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalSingleFunction()]
replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED

90

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
removed call to net/bmahe/genetics4j/gp/program/Program::terminal → KILLED

91

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
removed call to net/bmahe/genetics4j/gp/program/Program::functions → KILLED

92

1.1
Location : pickRandomFunctionOrTerminal
Killed by : none
removed call to java/util/Set::size → SURVIVED
Covering tests

2.2
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generate()]
Replaced integer addition with subtraction → KILLED

3.3
Location : pickRandomFunctionOrTerminal
Killed by : none
removed call to java/util/Set::size → SURVIVED Covering tests

94

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
replaced call to java/util/stream/Stream::concat with argument → KILLED

2.2
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
removed call to java/util/Set::stream → KILLED

3.3
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
removed call to java/util/stream/Stream::concat → KILLED

4.4
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
removed call to java/util/Set::stream → KILLED

95

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
removed call to java/util/random/RandomGenerator::nextInt → KILLED

2.2
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED

97

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
removed call to java/util/stream/Stream::skip → KILLED

2.2
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
replaced call to java/util/stream/Stream::skip with receiver → KILLED

3.3
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomFunctionOrTerminal → KILLED

98

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
removed call to java/util/stream/Stream::findFirst → KILLED

99

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.ProgramHelperTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.ProgramHelperTest]/[method:pickRandomTerminalOrFunciton()]
removed call to java/util/Optional::get → KILLED

106

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to net/bmahe/genetics4j/gp/program/Program::terminal → KILLED

107

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to net/bmahe/genetics4j/gp/program/Program::functions → KILLED

109

1.1
Location : pickRandomFunctionOrTerminal
Killed by : none
replaced call to java/util/stream/Stream::concat with argument → SURVIVED
Covering tests

2.2
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to java/util/Set::stream → KILLED

3.3
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to java/util/stream/Stream::concat → KILLED

4.4
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to java/util/Set::stream → KILLED

113

1.1
Location : lambda$pickRandomFunctionOrTerminal$2
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to net/bmahe/genetics4j/gp/OperationFactory::returnedType → KILLED

2.2
Location : lambda$pickRandomFunctionOrTerminal$2
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
replaced boolean return with false for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomFunctionOrTerminal$2 → KILLED

3.3
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
replaced call to java/util/stream/Stream::filter with receiver → KILLED

4.4
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to java/util/stream/Stream::filter → KILLED

5.5
Location : lambda$pickRandomFunctionOrTerminal$2
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
replaced boolean return with true for net/bmahe/genetics4j/gp/program/ProgramHelper::lambda$pickRandomFunctionOrTerminal$2 → KILLED

114

1.1
Location : lambda$pickRandomFunctionOrTerminal$2
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to java/lang/Class::isAssignableFrom → KILLED

115

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to java/util/stream/Stream::collect → KILLED

2.2
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to java/util/stream/Collectors::toList → KILLED

117

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to java/util/List::size → KILLED

118

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed conditional - replaced equality check with true → KILLED

2.2
Location : pickRandomFunctionOrTerminal
Killed by : none
removed conditional - replaced equality check with false → SURVIVED
Covering tests

3.3
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
negated conditional → KILLED

122

1.1
Location : pickRandomFunctionOrTerminal
Killed by : none
removed call to net/bmahe/genetics4j/gp/program/Program::terminal → NO_COVERAGE

123

1.1
Location : pickRandomFunctionOrTerminal
Killed by : none
removed call to java/util/Set::stream → NO_COVERAGE

126

1.1
Location : pickRandomFunctionOrTerminal
Killed by : none
removed call to java/lang/String::valueOf → NO_COVERAGE

2.2
Location : pickRandomFunctionOrTerminal
Killed by : none
removed call to java/lang/IllegalArgumentException::<init> → NO_COVERAGE

130

1.1
Location : pickRandomFunctionOrTerminal
Killed by : none
removed call to java/util/random/RandomGenerator::nextInt → SURVIVED
Covering tests

2.2
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to java/util/List::size → KILLED

3.3
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED

132

1.1
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
replaced return value with null for net/bmahe/genetics4j/gp/program/ProgramHelper::pickRandomFunctionOrTerminal → KILLED

2.2
Location : pickRandomFunctionOrTerminal
Killed by : net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.gp.program.GrowProgramGeneratorTest]/[method:generateWithRootType()]
removed call to java/util/List::get → KILLED

Active mutators

Tests examined


Report generated by PIT 1.19.6