SwapMutationPolicyHandler.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.SwapMutation;
13
import net.bmahe.genetics4j.core.util.ChromosomeResolverUtils;
14
15
public class SwapMutationPolicyHandler<T extends Comparable<T>> implements MutationPolicyHandler<T> {
16
17
	private final RandomGenerator randomGenerator;
18
19
	public SwapMutationPolicyHandler(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/SwapMutationPolicyHandler::canHandle → KILLED
2. canHandle : replaced boolean return with true for net/bmahe/genetics4j/core/mutation/SwapMutationPolicyHandler::canHandle → KILLED
		return mutationPolicy instanceof SwapMutation;
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(mutationPolicyHandlerResolver);
40
		Validate.notNull(mutationPolicy);
41
		Validate.isInstanceOf(SwapMutation.class, mutationPolicy);
42
43
		final SwapMutation swapMutation = (SwapMutation) mutationPolicy;
44 1 1. createMutator : removed call to net/bmahe/genetics4j/core/spec/mutation/SwapMutation::populationMutationProbability → SURVIVED
		final double populationMutationProbability = swapMutation.populationMutationProbability();
45
46
		final ChromosomeMutationHandler<? extends Chromosome>[] chromosomeMutationHandlers = ChromosomeResolverUtils
47 1 1. createMutator : removed call to net/bmahe/genetics4j/core/util/ChromosomeResolverUtils::resolveChromosomeMutationHandlers → KILLED
				.resolveChromosomeMutationHandlers(eaExecutionContext, eaConfiguration, mutationPolicy);
48
49 2 1. createMutator : removed call to net/bmahe/genetics4j/core/mutation/GenericMutatorImpl::<init> → SURVIVED
2. createMutator : replaced return value with null for net/bmahe/genetics4j/core/mutation/SwapMutationPolicyHandler::createMutator → SURVIVED
		return new GenericMutatorImpl(randomGenerator,
50
				chromosomeMutationHandlers,
51
				mutationPolicy,
52
				populationMutationProbability);
53
	}
54
}

Mutations

22

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

30

1.1
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 false for net/bmahe/genetics4j/core/mutation/SwapMutationPolicyHandler::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/SwapMutationPolicyHandler::canHandle → KILLED

44

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

47

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

49

1.1
Location : createMutator
Killed by : none
removed call to net/bmahe/genetics4j/core/mutation/GenericMutatorImpl::<init> → SURVIVED
Covering tests

2.2
Location : createMutator
Killed by : none
replaced return value with null for net/bmahe/genetics4j/core/mutation/SwapMutationPolicyHandler::createMutator → SURVIVED Covering tests

Active mutators

Tests examined


Report generated by PIT 1.19.6