NonNullOverride.java

1
package fr.sii.ogham.core.builder.configuration;
2
3
/**
4
 * Override current value only if the new value is not {@code null}.
5
 * 
6
 * @author Aurélien Baudet
7
 *
8
 * @param <V>
9
 *            the type of the value
10
 */
11
public class NonNullOverride<V> implements MayOverride<V> {
12
	private final V value;
13
14
	/**
15
	 * Initializes with the new value to set if the new value is not
16
	 * {@code null}.
17
	 * 
18
	 * @param value
19
	 *            the new value
20
	 */
21
	public NonNullOverride(V value) {
22
		super();
23
		this.value = value;
24
	}
25
26
	@Override
27
	public V override(V currentValue) {
28 4 1. override : negated conditional → NO_COVERAGE
2. override : replaced return value with null for fr/sii/ogham/core/builder/configuration/NonNullOverride::override → NO_COVERAGE
3. override : negated conditional → KILLED
4. override : replaced return value with null for fr/sii/ogham/core/builder/configuration/NonNullOverride::override → KILLED
		return value == null ? currentValue : value;
29
	}
30
31
}

Mutations

28

1.1
Location : override
Killed by : none
negated conditional → NO_COVERAGE

2.2
Location : override
Killed by : oghamcore.ut.core.builder.configuration.MayOverrideSpec
negated conditional → KILLED

3.3
Location : override
Killed by : none
replaced return value with null for fr/sii/ogham/core/builder/configuration/NonNullOverride::override → NO_COVERAGE

4.4
Location : override
Killed by : oghamcore.ut.core.builder.configuration.MayOverrideSpec
replaced return value with null for fr/sii/ogham/core/builder/configuration/NonNullOverride::override → KILLED

Active mutators

Tests examined


Report generated by PIT OGHAM