SwapMutationPolicyHandler.java

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

Mutations

23

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

31

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

45

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

48

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

50

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.25.7 support