StringToNumberConverter.java

1
package fr.sii.ogham.core.convert;
2
3
import java.math.BigDecimal;
4
import java.math.BigInteger;
5
6
import fr.sii.ogham.core.exception.convert.ConversionException;
7
8
/**
9
 * Converts a string to a number. It also handles {@link Byte}s. This class is
10
 * copied from Spring.
11
 * 
12
 * @author Aurélien Baudet
13
 *
14
 */
15
public class StringToNumberConverter implements SupportingConverter {
16
17
	@Override
18
	public <T> T convert(Object source, Class<T> targetType) {
19
		String text = (String) source;
20
		String trimmed = trimAllWhitespace(text);
21 5 1. convert : negated conditional → NO_COVERAGE
2. convert : negated conditional → KILLED
3. convert : negated conditional → KILLED
4. convert : negated conditional → KILLED
5. convert : negated conditional → KILLED
		if(trimmed==null) {
22
			return null;
23
		}
24
		try {
25
			T value = convertNumber(trimmed, targetType);
26 5 1. convert : negated conditional → NO_COVERAGE
2. convert : negated conditional → KILLED
3. convert : negated conditional → KILLED
4. convert : negated conditional → KILLED
5. convert : negated conditional → KILLED
			if(value==null) {
27
				throw new ConversionException("Cannot convert String [" + text + "] to target class [" + targetType.getName() + "]");
28
			}
29 5 1. convert : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convert → NO_COVERAGE
2. convert : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convert → KILLED
3. convert : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convert → KILLED
4. convert : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convert → KILLED
5. convert : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convert → KILLED
			return value;
30
		} catch(NumberFormatException e) {
31
			throw new ConversionException("Failed to convert "+source+" to "+targetType.getSimpleName(), e);
32
		}
33
	}
34
35
	@Override
36
	public boolean supports(Class<?> sourceType, Class<?> targetType) {
37 21 1. supports : replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → NO_COVERAGE
2. supports : negated conditional → SURVIVED
3. supports : negated conditional → NO_COVERAGE
4. supports : negated conditional → NO_COVERAGE
5. supports : replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → TIMED_OUT
6. supports : negated conditional → TIMED_OUT
7. supports : negated conditional → TIMED_OUT
8. supports : replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → KILLED
9. supports : replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → KILLED
10. supports : replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → KILLED
11. supports : replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → KILLED
12. supports : replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → KILLED
13. supports : negated conditional → KILLED
14. supports : negated conditional → KILLED
15. supports : negated conditional → KILLED
16. supports : negated conditional → KILLED
17. supports : negated conditional → KILLED
18. supports : negated conditional → KILLED
19. supports : negated conditional → KILLED
20. supports : negated conditional → KILLED
21. supports : negated conditional → KILLED
		return String.class.isAssignableFrom(sourceType) && Number.class.isAssignableFrom(targetType);
38
	}
39
	
40
	@SuppressWarnings("unchecked")
41
	private <T> T convertNumber(String trimmed, Class<T> targetType) {	// NOSONAR: code from Spring
42 5 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : negated conditional → KILLED
3. convertNumber : negated conditional → KILLED
4. convertNumber : negated conditional → KILLED
5. convertNumber : negated conditional → KILLED
		if (Byte.class == targetType) {
43 4 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE
3. convertNumber : negated conditional → KILLED
4. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
			return (T) (isHexOrOctalNumber(trimmed) ? Byte.decode(trimmed) : Byte.valueOf(trimmed));
44
		}
45 5 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : negated conditional → KILLED
3. convertNumber : negated conditional → KILLED
4. convertNumber : negated conditional → KILLED
5. convertNumber : negated conditional → KILLED
		if (Short.class == targetType) {
46 4 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE
3. convertNumber : negated conditional → KILLED
4. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
			return (T) (isHexOrOctalNumber(trimmed) ? Short.decode(trimmed) : Short.valueOf(trimmed));
47
		}
48 5 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : negated conditional → KILLED
3. convertNumber : negated conditional → KILLED
4. convertNumber : negated conditional → KILLED
5. convertNumber : negated conditional → KILLED
		if (Integer.class == targetType) {
49 8 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : negated conditional → SURVIVED
3. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE
4. convertNumber : negated conditional → KILLED
5. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
6. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
7. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
8. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
			return (T) (isHexOrOctalNumber(trimmed) ? Integer.decode(trimmed) : Integer.valueOf(trimmed));
50
		}
51 4 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : negated conditional → KILLED
3. convertNumber : negated conditional → KILLED
4. convertNumber : negated conditional → KILLED
		if (Long.class == targetType) {
52 7 1. convertNumber : negated conditional → SURVIVED
2. convertNumber : negated conditional → NO_COVERAGE
3. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE
4. convertNumber : negated conditional → KILLED
5. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
6. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
7. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
			return (T) (isHexOrOctalNumber(trimmed) ? Long.decode(trimmed) : Long.valueOf(trimmed));
53
		}
54 2 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : negated conditional → KILLED
		if (BigInteger.class == targetType) {
55 4 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE
3. convertNumber : negated conditional → KILLED
4. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
			return (T) (isHexOrOctalNumber(trimmed) ? decodeBigInteger(trimmed) : new BigInteger(trimmed));
56
		}
57 2 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : negated conditional → KILLED
		if (Float.class == targetType) {
58 2 1. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE
2. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
			return (T) Float.valueOf(trimmed);
59
		}
60 2 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : negated conditional → KILLED
		if (Double.class == targetType) {
61 2 1. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE
2. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
			return (T) Double.valueOf(trimmed);
62
		}
63 4 1. convertNumber : negated conditional → NO_COVERAGE
2. convertNumber : negated conditional → NO_COVERAGE
3. convertNumber : negated conditional → KILLED
4. convertNumber : negated conditional → KILLED
		if (BigDecimal.class == targetType || Number.class == targetType) {
64 2 1. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE
2. convertNumber : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED
			return (T) new BigDecimal(trimmed);
65
		}
66
		return null;
67
	}
68
69
	private static boolean isHexOrOctalNumber(String value) {
70 3 1. isHexOrOctalNumber : negated conditional → NO_COVERAGE
2. isHexOrOctalNumber : negated conditional → SURVIVED
3. isHexOrOctalNumber : negated conditional → KILLED
		int index = value.startsWith("-") ? 1 : 0;
71 9 1. isHexOrOctalNumber : replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::isHexOrOctalNumber → SURVIVED
2. isHexOrOctalNumber : replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::isHexOrOctalNumber → NO_COVERAGE
3. isHexOrOctalNumber : negated conditional → NO_COVERAGE
4. isHexOrOctalNumber : negated conditional → SURVIVED
5. isHexOrOctalNumber : negated conditional → SURVIVED
6. isHexOrOctalNumber : negated conditional → NO_COVERAGE
7. isHexOrOctalNumber : negated conditional → KILLED
8. isHexOrOctalNumber : negated conditional → KILLED
9. isHexOrOctalNumber : negated conditional → KILLED
		return value.startsWith("#", index) || value.startsWith("0", index);
72
	}
73
74
	private static String trimAllWhitespace(String str) {
75 10 1. trimAllWhitespace : negated conditional → NO_COVERAGE
2. trimAllWhitespace : negated conditional → NO_COVERAGE
3. trimAllWhitespace : negated conditional → KILLED
4. trimAllWhitespace : negated conditional → KILLED
5. trimAllWhitespace : negated conditional → KILLED
6. trimAllWhitespace : negated conditional → KILLED
7. trimAllWhitespace : negated conditional → KILLED
8. trimAllWhitespace : negated conditional → KILLED
9. trimAllWhitespace : negated conditional → KILLED
10. trimAllWhitespace : negated conditional → KILLED
		if (str == null || str.length() == 0) {
76 2 1. trimAllWhitespace : replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → NO_COVERAGE
2. trimAllWhitespace : replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → KILLED
			return null;
77
		}
78
		int len = str.length();
79
		StringBuilder sb = new StringBuilder(str.length());
80 15 1. trimAllWhitespace : changed conditional boundary → NO_COVERAGE
2. trimAllWhitespace : Changed increment from 1 to -1 → NO_COVERAGE
3. trimAllWhitespace : negated conditional → NO_COVERAGE
4. trimAllWhitespace : changed conditional boundary → KILLED
5. trimAllWhitespace : changed conditional boundary → KILLED
6. trimAllWhitespace : changed conditional boundary → KILLED
7. trimAllWhitespace : changed conditional boundary → KILLED
8. trimAllWhitespace : Changed increment from 1 to -1 → KILLED
9. trimAllWhitespace : Changed increment from 1 to -1 → KILLED
10. trimAllWhitespace : Changed increment from 1 to -1 → KILLED
11. trimAllWhitespace : Changed increment from 1 to -1 → KILLED
12. trimAllWhitespace : negated conditional → KILLED
13. trimAllWhitespace : negated conditional → KILLED
14. trimAllWhitespace : negated conditional → KILLED
15. trimAllWhitespace : negated conditional → KILLED
		for (int i = 0; i < len; i++) {
81
			char c = str.charAt(i);
82 5 1. trimAllWhitespace : negated conditional → NO_COVERAGE
2. trimAllWhitespace : negated conditional → KILLED
3. trimAllWhitespace : negated conditional → KILLED
4. trimAllWhitespace : negated conditional → KILLED
5. trimAllWhitespace : negated conditional → KILLED
			if (!Character.isWhitespace(c)) {
83
				sb.append(c);
84
			}
85
		}
86 5 1. trimAllWhitespace : replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → NO_COVERAGE
2. trimAllWhitespace : replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → KILLED
3. trimAllWhitespace : replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → KILLED
4. trimAllWhitespace : replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → KILLED
5. trimAllWhitespace : replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → KILLED
		return sb.toString();
87
	}
88
89
	private static BigInteger decodeBigInteger(String value) {
90
		int radix = 10;
91
		int index = 0;
92
		boolean negative = false;
93
94
		// Handle minus sign, if present.
95 2 1. decodeBigInteger : negated conditional → NO_COVERAGE
2. decodeBigInteger : negated conditional → KILLED
		if (value.startsWith("-")) {
96
			negative = true;
97 2 1. decodeBigInteger : Changed increment from 1 to -1 → NO_COVERAGE
2. decodeBigInteger : Changed increment from 1 to -1 → KILLED
			index++;
98
		}
99
100
		// Handle radix specifier, if present.
101 4 1. decodeBigInteger : negated conditional → NO_COVERAGE
2. decodeBigInteger : negated conditional → NO_COVERAGE
3. decodeBigInteger : negated conditional → KILLED
4. decodeBigInteger : negated conditional → KILLED
		if (value.startsWith("0x", index) || value.startsWith("0X", index)) {
102 2 1. decodeBigInteger : Changed increment from 2 to -2 → NO_COVERAGE
2. decodeBigInteger : Changed increment from 2 to -2 → KILLED
			index += 2;
103
			radix = 16;
104 2 1. decodeBigInteger : negated conditional → NO_COVERAGE
2. decodeBigInteger : negated conditional → KILLED
		} else if (value.startsWith("#", index)) {
105 2 1. decodeBigInteger : Changed increment from 1 to -1 → NO_COVERAGE
2. decodeBigInteger : Changed increment from 1 to -1 → KILLED
			index++;
106
			radix = 16;
107 8 1. decodeBigInteger : changed conditional boundary → SURVIVED
2. decodeBigInteger : changed conditional boundary → NO_COVERAGE
3. decodeBigInteger : Replaced integer addition with subtraction → SURVIVED
4. decodeBigInteger : Replaced integer addition with subtraction → NO_COVERAGE
5. decodeBigInteger : negated conditional → NO_COVERAGE
6. decodeBigInteger : negated conditional → NO_COVERAGE
7. decodeBigInteger : negated conditional → KILLED
8. decodeBigInteger : negated conditional → KILLED
		} else if (value.startsWith("0", index) && value.length() > 1 + index) {
108 2 1. decodeBigInteger : Changed increment from 1 to -1 → NO_COVERAGE
2. decodeBigInteger : Changed increment from 1 to -1 → KILLED
			index++;
109
			radix = 8;
110
		}
111
112
		BigInteger result = new BigInteger(value.substring(index), radix);
113 4 1. decodeBigInteger : negated conditional → NO_COVERAGE
2. decodeBigInteger : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::decodeBigInteger → NO_COVERAGE
3. decodeBigInteger : negated conditional → KILLED
4. decodeBigInteger : replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::decodeBigInteger → KILLED
		return negative ? result.negate() : result;
114
	}
115
}

Mutations

21

1.1
Location : convert
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

2.2
Location : convert
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

3.3
Location : convert
Killed by : oghamall.it.email.EmailSMTPAuthenticationTest.authenticated(oghamall.it.email.EmailSMTPAuthenticationTest)
negated conditional → KILLED

4.4
Location : convert
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

5.5
Location : convert
Killed by : none
negated conditional → NO_COVERAGE

26

1.1
Location : convert
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

2.2
Location : convert
Killed by : none
negated conditional → NO_COVERAGE

3.3
Location : convert
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

4.4
Location : convert
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

5.5
Location : convert
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
negated conditional → KILLED

29

1.1
Location : convert
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convert → KILLED

2.2
Location : convert
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convert → KILLED

3.3
Location : convert
Killed by : oghamall.it.email.EmailSMTPAuthenticationTest.authenticated(oghamall.it.email.EmailSMTPAuthenticationTest)
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convert → KILLED

4.4
Location : convert
Killed by : none
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convert → NO_COVERAGE

5.5
Location : convert
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convert → KILLED

37

1.1
Location : supports
Killed by : oghamsmsglobal.it.SmsglobalServiceProviderConfigurerSpec
replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → KILLED

2.2
Location : supports
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → KILLED

3.3
Location : supports
Killed by : oghamcloudhopper.it.ConnectionFailureTest.invalidSystemId(oghamcloudhopper.it.ConnectionFailureTest)
replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → KILLED

4.4
Location : supports
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → KILLED

5.5
Location : supports
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → KILLED

6.6
Location : supports
Killed by : none
replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → NO_COVERAGE

7.7
Location : supports
Killed by : none
replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::supports → TIMED_OUT

8.8
Location : supports
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

9.9
Location : supports
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

10.10
Location : supports
Killed by : none
negated conditional → SURVIVED

11.11
Location : supports
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

12.12
Location : supports
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
negated conditional → KILLED

13.13
Location : supports
Killed by : none
negated conditional → TIMED_OUT

14.14
Location : supports
Killed by : none
negated conditional → NO_COVERAGE

15.15
Location : supports
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

16.16
Location : supports
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

17.17
Location : supports
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
negated conditional → KILLED

18.18
Location : supports
Killed by : none
negated conditional → TIMED_OUT

19.19
Location : supports
Killed by : oghamsmsglobal.it.SmsglobalServiceProviderConfigurerSpec
negated conditional → KILLED

20.20
Location : supports
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

21.21
Location : supports
Killed by : none
negated conditional → NO_COVERAGE

42

1.1
Location : convertNumber
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
negated conditional → KILLED

2.2
Location : convertNumber
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

3.3
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

4.4
Location : convertNumber
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

5.5
Location : convertNumber
Killed by : none
negated conditional → NO_COVERAGE

43

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

2.2
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

3.3
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

4.4
Location : convertNumber
Killed by : none
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE

45

1.1
Location : convertNumber
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

2.2
Location : convertNumber
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
negated conditional → KILLED

3.3
Location : convertNumber
Killed by : none
negated conditional → NO_COVERAGE

4.4
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

5.5
Location : convertNumber
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

46

1.1
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

2.2
Location : convertNumber
Killed by : none
negated conditional → NO_COVERAGE

3.3
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

4.4
Location : convertNumber
Killed by : none
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE

48

1.1
Location : convertNumber
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

2.2
Location : convertNumber
Killed by : none
negated conditional → NO_COVERAGE

3.3
Location : convertNumber
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

4.4
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

5.5
Location : convertNumber
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
negated conditional → KILLED

49

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

2.2
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

3.3
Location : convertNumber
Killed by : none
negated conditional → SURVIVED

4.4
Location : convertNumber
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

5.5
Location : convertNumber
Killed by : none
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE

6.6
Location : convertNumber
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

7.7
Location : convertNumber
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

8.8
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

51

1.1
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

2.2
Location : convertNumber
Killed by : oghamall.it.retry.AutoRetryTest.doNotResendEmailIfTemplateNotFound(oghamall.it.retry.AutoRetryTest)
negated conditional → KILLED

3.3
Location : convertNumber
Killed by : none
negated conditional → NO_COVERAGE

4.4
Location : convertNumber
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

52

1.1
Location : convertNumber
Killed by : none
negated conditional → SURVIVED

2.2
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

3.3
Location : convertNumber
Killed by : none
negated conditional → NO_COVERAGE

4.4
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

5.5
Location : convertNumber
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

6.6
Location : convertNumber
Killed by : oghamall.it.retry.AutoRetryTest.doNotResendEmailIfTemplateNotFound(oghamall.it.retry.AutoRetryTest)
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

7.7
Location : convertNumber
Killed by : none
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE

54

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

2.2
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

55

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

2.2
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

3.3
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

4.4
Location : convertNumber
Killed by : none
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE

57

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

2.2
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

58

1.1
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

2.2
Location : convertNumber
Killed by : none
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE

60

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

2.2
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

61

1.1
Location : convertNumber
Killed by : none
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE

2.2
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

63

1.1
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

2.2
Location : convertNumber
Killed by : none
negated conditional → NO_COVERAGE

3.3
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

4.4
Location : convertNumber
Killed by : none
negated conditional → NO_COVERAGE

64

1.1
Location : convertNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → KILLED

2.2
Location : convertNumber
Killed by : none
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::convertNumber → NO_COVERAGE

70

1.1
Location : isHexOrOctalNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

2.2
Location : isHexOrOctalNumber
Killed by : none
negated conditional → NO_COVERAGE

3.3
Location : isHexOrOctalNumber
Killed by : none
negated conditional → SURVIVED

71

1.1
Location : isHexOrOctalNumber
Killed by : none
replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::isHexOrOctalNumber → SURVIVED

2.2
Location : isHexOrOctalNumber
Killed by : none
replaced boolean return with true for fr/sii/ogham/core/convert/StringToNumberConverter::isHexOrOctalNumber → NO_COVERAGE

3.3
Location : isHexOrOctalNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

4.4
Location : isHexOrOctalNumber
Killed by : none
negated conditional → NO_COVERAGE

5.5
Location : isHexOrOctalNumber
Killed by : none
negated conditional → SURVIVED

6.6
Location : isHexOrOctalNumber
Killed by : none
negated conditional → SURVIVED

7.7
Location : isHexOrOctalNumber
Killed by : none
negated conditional → NO_COVERAGE

8.8
Location : isHexOrOctalNumber
Killed by : oghamall.it.sms.SmsSMPPDefaultsTest.longMessage(oghamall.it.sms.SmsSMPPDefaultsTest)
negated conditional → KILLED

9.9
Location : isHexOrOctalNumber
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

75

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

2.2
Location : trimAllWhitespace
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

3.3
Location : trimAllWhitespace
Killed by : oghamall.it.email.EmailSMTPAuthenticationTest.authenticated(oghamall.it.email.EmailSMTPAuthenticationTest)
negated conditional → KILLED

4.4
Location : trimAllWhitespace
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

5.5
Location : trimAllWhitespace
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

6.6
Location : trimAllWhitespace
Killed by : oghamall.it.email.EmailSMTPAuthenticationTest.authenticated(oghamall.it.email.EmailSMTPAuthenticationTest)
negated conditional → KILLED

7.7
Location : trimAllWhitespace
Killed by : none
negated conditional → NO_COVERAGE

8.8
Location : trimAllWhitespace
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

9.9
Location : trimAllWhitespace
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

10.10
Location : trimAllWhitespace
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

76

1.1
Location : trimAllWhitespace
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → KILLED

2.2
Location : trimAllWhitespace
Killed by : none
replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → NO_COVERAGE

80

1.1
Location : trimAllWhitespace
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
changed conditional boundary → KILLED

2.2
Location : trimAllWhitespace
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
changed conditional boundary → KILLED

3.3
Location : trimAllWhitespace
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
changed conditional boundary → KILLED

4.4
Location : trimAllWhitespace
Killed by : none
changed conditional boundary → NO_COVERAGE

5.5
Location : trimAllWhitespace
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
changed conditional boundary → KILLED

6.6
Location : trimAllWhitespace
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
Changed increment from 1 to -1 → KILLED

7.7
Location : trimAllWhitespace
Killed by : none
Changed increment from 1 to -1 → NO_COVERAGE

8.8
Location : trimAllWhitespace
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
Changed increment from 1 to -1 → KILLED

9.9
Location : trimAllWhitespace
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
Changed increment from 1 to -1 → KILLED

10.10
Location : trimAllWhitespace
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
Changed increment from 1 to -1 → KILLED

11.11
Location : trimAllWhitespace
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
negated conditional → KILLED

12.12
Location : trimAllWhitespace
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

13.13
Location : trimAllWhitespace
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

14.14
Location : trimAllWhitespace
Killed by : none
negated conditional → NO_COVERAGE

15.15
Location : trimAllWhitespace
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

82

1.1
Location : trimAllWhitespace
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
negated conditional → KILLED

2.2
Location : trimAllWhitespace
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

3.3
Location : trimAllWhitespace
Killed by : none
negated conditional → NO_COVERAGE

4.4
Location : trimAllWhitespace
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
negated conditional → KILLED

5.5
Location : trimAllWhitespace
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
negated conditional → KILLED

86

1.1
Location : trimAllWhitespace
Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredButUnconfiguredTemplateParsersCantHandleMultiTemplateContent(oghamall.it.configuration.EmptyBuilderTest)
replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → KILLED

2.2
Location : trimAllWhitespace
Killed by : oghamjavamail.it.builder.OverridePropertiesTest.overrideProperties(oghamjavamail.it.builder.OverridePropertiesTest)
replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → KILLED

3.3
Location : trimAllWhitespace
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → KILLED

4.4
Location : trimAllWhitespace
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → KILLED

5.5
Location : trimAllWhitespace
Killed by : none
replaced return value with "" for fr/sii/ogham/core/convert/StringToNumberConverter::trimAllWhitespace → NO_COVERAGE

95

1.1
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

2.2
Location : decodeBigInteger
Killed by : none
negated conditional → NO_COVERAGE

97

1.1
Location : decodeBigInteger
Killed by : none
Changed increment from 1 to -1 → NO_COVERAGE

2.2
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
Changed increment from 1 to -1 → KILLED

101

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

2.2
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

3.3
Location : decodeBigInteger
Killed by : none
negated conditional → NO_COVERAGE

4.4
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

102

1.1
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
Changed increment from 2 to -2 → KILLED

2.2
Location : decodeBigInteger
Killed by : none
Changed increment from 2 to -2 → NO_COVERAGE

104

1.1
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

2.2
Location : decodeBigInteger
Killed by : none
negated conditional → NO_COVERAGE

105

1.1
Location : decodeBigInteger
Killed by : none
Changed increment from 1 to -1 → NO_COVERAGE

2.2
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
Changed increment from 1 to -1 → KILLED

107

1.1
Location : decodeBigInteger
Killed by : none
changed conditional boundary → SURVIVED

2.2
Location : decodeBigInteger
Killed by : none
changed conditional boundary → NO_COVERAGE

3.3
Location : decodeBigInteger
Killed by : none
Replaced integer addition with subtraction → SURVIVED

4.4
Location : decodeBigInteger
Killed by : none
Replaced integer addition with subtraction → NO_COVERAGE

5.5
Location : decodeBigInteger
Killed by : none
negated conditional → NO_COVERAGE

6.6
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

7.7
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

8.8
Location : decodeBigInteger
Killed by : none
negated conditional → NO_COVERAGE

108

1.1
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
Changed increment from 1 to -1 → KILLED

2.2
Location : decodeBigInteger
Killed by : none
Changed increment from 1 to -1 → NO_COVERAGE

113

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

2.2
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
negated conditional → KILLED

3.3
Location : decodeBigInteger
Killed by : none
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::decodeBigInteger → NO_COVERAGE

4.4
Location : decodeBigInteger
Killed by : oghamcore.ut.core.convert.StringToNumberConverterSpec
replaced return value with null for fr/sii/ogham/core/convert/StringToNumberConverter::decodeBigInteger → KILLED

Active mutators

Tests examined


Report generated by PIT OGHAM