SelectionPolicyHandlerResolver.java

1
package net.bmahe.genetics4j.core.selection;
2
3
import java.util.List;
4
import java.util.Objects;
5
6
import org.apache.logging.log4j.LogManager;
7
import org.apache.logging.log4j.Logger;
8
9
import net.bmahe.genetics4j.core.spec.AbstractEAExecutionContext;
10
import net.bmahe.genetics4j.core.spec.selection.SelectionPolicy;
11
12
public class SelectionPolicyHandlerResolver<T extends Comparable<T>> {
13
	public final static Logger logger = LogManager.getLogger(SelectionPolicyHandlerResolver.class);
14
15
	private final AbstractEAExecutionContext<T> eaExecutionContext;
16
17
	private final List<SelectionPolicyHandler<T>> selectionPolicyHandlers;
18
19
	public SelectionPolicyHandlerResolver(final AbstractEAExecutionContext<T> _eaExecutionContext) {
20
		Objects.requireNonNull(_eaExecutionContext);
21
22 1 1. <init> : Removed assignment to member variable eaExecutionContext → KILLED
		this.eaExecutionContext = _eaExecutionContext;
23 2 1. <init> : Removed assignment to member variable selectionPolicyHandlers → KILLED
2. <init> : removed call to net/bmahe/genetics4j/core/spec/AbstractEAExecutionContext::selectionPolicyHandlers → KILLED
		this.selectionPolicyHandlers = eaExecutionContext.selectionPolicyHandlers();
24
	}
25
26
	public SelectionPolicyHandler<T> resolve(final SelectionPolicy selectionPolicy) {
27
		Objects.requireNonNull(selectionPolicy);
28
29 2 1. resolve : removed call to java/util/List::stream → KILLED
2. resolve : replaced return value with null for net/bmahe/genetics4j/core/selection/SelectionPolicyHandlerResolver::resolve → KILLED
		return selectionPolicyHandlers.stream()
30 9 1. resolve : replaced call to java/util/stream/Stream::dropWhile with receiver → KILLED
2. lambda$resolve$0 : removed conditional - replaced equality check with true → KILLED
3. lambda$resolve$0 : removed conditional - replaced equality check with false → KILLED
4. resolve : removed call to java/util/stream/Stream::dropWhile → KILLED
5. lambda$resolve$0 : removed call to net/bmahe/genetics4j/core/selection/SelectionPolicyHandler::canHandle → KILLED
6. lambda$resolve$0 : negated conditional → KILLED
7. lambda$resolve$0 : Substituted 1 with 0 → KILLED
8. lambda$resolve$0 : Substituted 0 with 1 → KILLED
9. lambda$resolve$0 : replaced boolean return with true for net/bmahe/genetics4j/core/selection/SelectionPolicyHandlerResolver::lambda$resolve$0 → KILLED
				.dropWhile((sph) -> sph.canHandle(selectionPolicy) == false)
31 1 1. resolve : removed call to java/util/stream/Stream::findFirst → KILLED
				.findFirst()
32 1 1. resolve : removed call to java/util/Optional::orElseThrow → KILLED
				.orElseThrow(() -> {
33
34
					if (logger.isDebugEnabled()) {
35
						logger.debug("Could not find suitable selection policy handler for policy {}", selectionPolicy);
36
						logger.debug("Currently known selectionPolicyHandlers: {}", selectionPolicyHandlers);
37
					}
38
39 2 1. lambda$resolve$1 : removed call to java/lang/String::valueOf → NO_COVERAGE
2. lambda$resolve$1 : removed call to java/lang/IllegalStateException::<init> → NO_COVERAGE
					throw new IllegalStateException(
40
							"Could not find suitable selection policy handler for policy: " + selectionPolicy);
41
				});
42
43
	}
44
}

Mutations

22

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

23

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 selectionPolicyHandlers → KILLED

2.2
Location : <init>
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/spec/AbstractEAExecutionContext::selectionPolicyHandlers → KILLED

29

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

2.2
Location : resolve
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
replaced return value with null for net/bmahe/genetics4j/core/selection/SelectionPolicyHandlerResolver::resolve → KILLED

30

1.1
Location : resolve
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
replaced call to java/util/stream/Stream::dropWhile with receiver → KILLED

2.2
Location : lambda$resolve$0
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
removed conditional - replaced equality check with true → KILLED

3.3
Location : lambda$resolve$0
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
removed conditional - replaced equality check with false → KILLED

4.4
Location : resolve
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
removed call to java/util/stream/Stream::dropWhile → KILLED

5.5
Location : lambda$resolve$0
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/selection/SelectionPolicyHandler::canHandle → KILLED

6.6
Location : lambda$resolve$0
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
negated conditional → KILLED

7.7
Location : lambda$resolve$0
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
Substituted 1 with 0 → KILLED

8.8
Location : lambda$resolve$0
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
Substituted 0 with 1 → KILLED

9.9
Location : lambda$resolve$0
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
replaced boolean return with true for net/bmahe/genetics4j/core/selection/SelectionPolicyHandlerResolver::lambda$resolve$0 → KILLED

31

1.1
Location : resolve
Killed by : net.bmahe.genetics4j.core.EASystemTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.EASystemTest]/[method:testGetterMethods()]
removed call to java/util/stream/Stream::findFirst → KILLED

32

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

39

1.1
Location : lambda$resolve$1
Killed by : none
removed call to java/lang/String::valueOf → NO_COVERAGE

2.2
Location : lambda$resolve$1
Killed by : none
removed call to java/lang/IllegalStateException::<init> → NO_COVERAGE

Active mutators

Tests examined


Report generated by PIT 1.19.6