RandomMutationPolicyHandler.java

1
package net.bmahe.genetics4j.core.mutation;
2
3
import java.util.random.RandomGenerator;
4
5
import org.apache.commons.lang3.Validate;
6
7
import net.bmahe.genetics4j.core.chromosomes.Chromosome;
8
import net.bmahe.genetics4j.core.mutation.chromosome.ChromosomeMutationHandler;
9
import net.bmahe.genetics4j.core.spec.AbstractEAConfiguration;
10
import net.bmahe.genetics4j.core.spec.AbstractEAExecutionContext;
11
import net.bmahe.genetics4j.core.spec.mutation.MutationPolicy;
12
import net.bmahe.genetics4j.core.spec.mutation.RandomMutation;
13
import net.bmahe.genetics4j.core.util.ChromosomeResolverUtils;
14
15
public class RandomMutationPolicyHandler<T extends Comparable<T>> implements MutationPolicyHandler<T> {
16
17
	private final RandomGenerator randomGenerator;
18
19
	public RandomMutationPolicyHandler(final RandomGenerator _randomGenerator) {
20
		Validate.notNull(_randomGenerator);
21
22 1 1. <init> : Removed assignment to member variable randomGenerator → KILLED
		this.randomGenerator = _randomGenerator;
23
	}
24
25
	@Override
26
	public boolean canHandle(final MutationPolicyHandlerResolver<T> mutationPolicyHandlerResolver,
27
			final MutationPolicy mutationPolicy) {
28
		Validate.notNull(mutationPolicy);
29
30 2 1. canHandle : replaced boolean return with false for net/bmahe/genetics4j/core/mutation/RandomMutationPolicyHandler::canHandle → KILLED
2. canHandle : replaced boolean return with true for net/bmahe/genetics4j/core/mutation/RandomMutationPolicyHandler::canHandle → KILLED
		return mutationPolicy instanceof RandomMutation;
31
	}
32
33
	@Override
34
	public Mutator createMutator(final AbstractEAExecutionContext<T> eaExecutionContext,
35
			final AbstractEAConfiguration<T> eaConfiguration,
36
			final MutationPolicyHandlerResolver<T> mutationPolicyHandlerResolver, final MutationPolicy mutationPolicy) {
37
		Validate.notNull(eaExecutionContext);
38
		Validate.notNull(eaConfiguration);
39
		Validate.notNull(mutationPolicy);
40
		Validate.notNull(mutationPolicyHandlerResolver);
41
42
		final RandomMutation randomMutationPolicy = (RandomMutation) mutationPolicy;
43 1 1. createMutator : removed call to net/bmahe/genetics4j/core/spec/mutation/RandomMutation::populationMutationProbability → SURVIVED
		final double populationMutationProbability = randomMutationPolicy.populationMutationProbability();
44
45
		final ChromosomeMutationHandler<? extends Chromosome>[] chromosomeMutationHandlers = ChromosomeResolverUtils
46 1 1. createMutator : removed call to net/bmahe/genetics4j/core/util/ChromosomeResolverUtils::resolveChromosomeMutationHandlers → KILLED
				.resolveChromosomeMutationHandlers(eaExecutionContext, eaConfiguration, mutationPolicy);
47
48 2 1. createMutator : replaced return value with null for net/bmahe/genetics4j/core/mutation/RandomMutationPolicyHandler::createMutator → KILLED
2. createMutator : removed call to net/bmahe/genetics4j/core/mutation/GenericMutatorImpl::<init> → KILLED
		return new GenericMutatorImpl(randomGenerator,
49
				chromosomeMutationHandlers,
50
				mutationPolicy,
51
				populationMutationProbability);
52
	}
53
}

Mutations

22

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

30

1.1
Location : canHandle
Killed by : net.bmahe.genetics4j.core.mutation.RandomMutationPolicyHandlerTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.mutation.RandomMutationPolicyHandlerTest]/[method:canHandle()]
replaced boolean return with false for net/bmahe/genetics4j/core/mutation/RandomMutationPolicyHandler::canHandle → KILLED

2.2
Location : canHandle
Killed by : net.bmahe.genetics4j.core.mutation.SupersimpleTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.mutation.SupersimpleTest]/[method:simple()]
replaced boolean return with true for net/bmahe/genetics4j/core/mutation/RandomMutationPolicyHandler::canHandle → KILLED

43

1.1
Location : createMutator
Killed by : none
removed call to net/bmahe/genetics4j/core/spec/mutation/RandomMutation::populationMutationProbability → SURVIVED
Covering tests

46

1.1
Location : createMutator
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
removed call to net/bmahe/genetics4j/core/util/ChromosomeResolverUtils::resolveChromosomeMutationHandlers → KILLED

48

1.1
Location : createMutator
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testEvolveWithPostEvaluationProcessor()]
replaced return value with null for net/bmahe/genetics4j/core/mutation/RandomMutationPolicyHandler::createMutator → KILLED

2.2
Location : createMutator
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testEvolveWithPostEvaluationProcessor()]
removed call to net/bmahe/genetics4j/core/mutation/GenericMutatorImpl::<init> → KILLED

Active mutators

Tests examined


Report generated by PIT 1.19.6