NullSupport.java

1
package com.ancientprogramming.fixedformat4j.format.impl;
2
3
import com.ancientprogramming.fixedformat4j.format.FormatInstructions;
4
5
import static com.ancientprogramming.fixedformat4j.annotation.Field.UNSET_NULL_CHAR;
6
7
/**
8
 * Shared null-sentinel helpers used by both {@link FixedFormatManagerImpl} and
9
 * {@link RepeatingFieldSupport}. Covers the single-character {@code nullChar}
10
 * convention (since 1.7.1) and the literal-string {@code nullValue} convention
11
 * (since 1.9.0).
12
 *
13
 * @author Jacob von Eyben - <a href="https://eybenconsult.com">https://eybenconsult.com</a>
14
 * @since 1.7.1
15
 */
16
final class NullSupport {
17
18
  private NullSupport() {}
19
20
  /**
21
   * Returns {@code true} when {@code @Field.nullChar()} is explicitly configured (non-sentinel).
22
   * The sentinel {@link com.ancientprogramming.fixedformat4j.annotation.Field#UNSET_NULL_CHAR}
23
   * marks "not configured" and is never treated as a real null character. Setting
24
   * {@code nullChar} equal to {@code paddingChar} activates the "blank-is-null" convention
25
   * (Issue 84).
26
   */
27
  static boolean isNullCharActive(FormatInstructions instructions) {
28 7 1. isNullCharActive : removed conditional - replaced equality check with true → KILLED
2. isNullCharActive : negated conditional → KILLED
3. isNullCharActive : Substituted 1 with 0 → KILLED
4. isNullCharActive : Substituted 0 with 1 → KILLED
5. isNullCharActive : removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullChar → KILLED
6. isNullCharActive : removed conditional - replaced equality check with false → KILLED
7. isNullCharActive : replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullCharActive → KILLED
    return instructions.getNullChar() != UNSET_NULL_CHAR;
29
  }
30
31
  /**
32
   * Returns {@code true} when the raw slice consists entirely of the configured
33
   * {@code nullChar}. An empty slice is never treated as null.
34
   */
35
  static boolean isNullSlice(String slice, FormatInstructions instructions) {
36 11 1. isNullSlice : removed conditional - replaced equality check with true → SURVIVED
2. isNullSlice : removed conditional - replaced equality check with false → SURVIVED
3. isNullSlice : removed conditional - replaced equality check with true → SURVIVED
4. isNullSlice : removed call to java/lang/String::isEmpty → SURVIVED
5. isNullSlice : negated conditional → KILLED
6. isNullSlice : negated conditional → KILLED
7. isNullSlice : removed conditional - replaced equality check with false → KILLED
8. isNullSlice : removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullCharActive → KILLED
9. isNullSlice : negated conditional → KILLED
10. isNullSlice : removed conditional - replaced equality check with true → KILLED
11. isNullSlice : removed conditional - replaced equality check with false → KILLED
    if (!isNullCharActive(instructions) || slice == null || slice.isEmpty()) {
37 2 1. isNullSlice : replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSlice → KILLED
2. isNullSlice : Substituted 0 with 1 → KILLED
      return false;
38
    }
39 1 1. isNullSlice : removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullChar → KILLED
    char nullChar = instructions.getNullChar();
40 6 1. isNullSlice : Substituted 0 with 1 → SURVIVED
2. isNullSlice : removed conditional - replaced comparison check with true → KILLED
3. isNullSlice : negated conditional → KILLED
4. isNullSlice : removed conditional - replaced comparison check with false → KILLED
5. isNullSlice : changed conditional boundary → KILLED
6. isNullSlice : removed call to java/lang/String::length → KILLED
    for (int i = 0; i < slice.length(); i++) {
41 4 1. isNullSlice : removed conditional - replaced equality check with true → KILLED
2. isNullSlice : removed call to java/lang/String::charAt → KILLED
3. isNullSlice : removed conditional - replaced equality check with false → KILLED
4. isNullSlice : negated conditional → KILLED
      if (slice.charAt(i) != nullChar) {
42 2 1. isNullSlice : replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSlice → KILLED
2. isNullSlice : Substituted 0 with 1 → KILLED
        return false;
43
      }
44
    }
45 2 1. isNullSlice : replaced boolean return with false for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSlice → KILLED
2. isNullSlice : Substituted 1 with 0 → KILLED
    return true;
46
  }
47
48
  /**
49
   * Returns {@code true} when {@code @Field.nullValue()} is explicitly configured.
50
   * The default empty string marks "not configured" (Issue 130).
51
   *
52
   * @since 1.9.0
53
   */
54
  static boolean isNullValueActive(FormatInstructions instructions) {
55 8 1. isNullValueActive : removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullValue → KILLED
2. isNullValueActive : removed call to java/lang/String::isEmpty → KILLED
3. isNullValueActive : replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullValueActive → KILLED
4. isNullValueActive : removed conditional - replaced equality check with false → KILLED
5. isNullValueActive : Substituted 0 with 1 → KILLED
6. isNullValueActive : Substituted 1 with 0 → KILLED
7. isNullValueActive : removed conditional - replaced equality check with true → KILLED
8. isNullValueActive : negated conditional → KILLED
    return !instructions.getNullValue().isEmpty();
56
  }
57
58
  /**
59
   * Returns {@code true} when the raw slice equals the configured {@code nullValue} literal.
60
   *
61
   * @since 1.9.0
62
   */
63
  static boolean isNullValueSlice(String slice, FormatInstructions instructions) {
64 12 1. isNullValueSlice : removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullValueActive → KILLED
2. isNullValueSlice : negated conditional → KILLED
3. isNullValueSlice : removed call to java/lang/String::equals → KILLED
4. isNullValueSlice : removed conditional - replaced equality check with false → KILLED
5. isNullValueSlice : replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullValueSlice → KILLED
6. isNullValueSlice : removed conditional - replaced equality check with false → KILLED
7. isNullValueSlice : removed conditional - replaced equality check with true → KILLED
8. isNullValueSlice : removed conditional - replaced equality check with true → KILLED
9. isNullValueSlice : removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullValue → KILLED
10. isNullValueSlice : negated conditional → KILLED
11. isNullValueSlice : Substituted 0 with 1 → KILLED
12. isNullValueSlice : Substituted 1 with 0 → KILLED
    return isNullValueActive(instructions) && instructions.getNullValue().equals(slice);
65
  }
66
67
  /**
68
   * Unified load-side check: {@code true} when the slice matches either the
69
   * {@code nullChar} or the {@code nullValue} convention. The two are mutually
70
   * exclusive per field, enforced by {@link FieldValidator}.
71
   *
72
   * @since 1.9.0
73
   */
74
  static boolean isNullSliceOrValue(String slice, FormatInstructions instructions) {
75 11 1. isNullSliceOrValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSlice → KILLED
2. isNullSliceOrValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullValueSlice → KILLED
3. isNullSliceOrValue : Substituted 1 with 0 → KILLED
4. isNullSliceOrValue : negated conditional → KILLED
5. isNullSliceOrValue : negated conditional → KILLED
6. isNullSliceOrValue : Substituted 0 with 1 → KILLED
7. isNullSliceOrValue : replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSliceOrValue → KILLED
8. isNullSliceOrValue : removed conditional - replaced equality check with false → KILLED
9. isNullSliceOrValue : removed conditional - replaced equality check with false → KILLED
10. isNullSliceOrValue : removed conditional - replaced equality check with true → KILLED
11. isNullSliceOrValue : removed conditional - replaced equality check with true → KILLED
    return isNullSlice(slice, instructions) || isNullValueSlice(slice, instructions);
76
  }
77
}

Mutations

28

1.1
Location : isNullCharActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:exportNullValue_emitsSentinelVerbatim()]
removed conditional - replaced equality check with true → KILLED

2.2
Location : isNullCharActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
negated conditional → KILLED

3.3
Location : isNullCharActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
Substituted 1 with 0 → KILLED

4.4
Location : isNullCharActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:exportNullValue_emitsSentinelVerbatim()]
Substituted 0 with 1 → KILLED

5.5
Location : isNullCharActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullChar → KILLED

6.6
Location : isNullCharActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed conditional - replaced equality check with false → KILLED

7.7
Location : isNullCharActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:exportNullValue_emitsSentinelVerbatim()]
replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullCharActive → KILLED

36

1.1
Location : isNullSlice
Killed by : none
removed conditional - replaced equality check with true → SURVIVED
Covering tests

2.2
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
negated conditional → KILLED

3.3
Location : isNullSlice
Killed by : none
removed conditional - replaced equality check with false → SURVIVED Covering tests

4.4
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
negated conditional → KILLED

5.5
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed conditional - replaced equality check with false → KILLED

6.6
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullCharActive → KILLED

7.7
Location : isNullSlice
Killed by : none
removed conditional - replaced equality check with true → SURVIVED Covering tests

8.8
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
negated conditional → KILLED

9.9
Location : isNullSlice
Killed by : none
removed call to java/lang/String::isEmpty → SURVIVED Covering tests

10.10
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed conditional - replaced equality check with true → KILLED

11.11
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed conditional - replaced equality check with false → KILLED

37

1.1
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSlice → KILLED

2.2
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
Substituted 0 with 1 → KILLED

39

1.1
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullChar → KILLED

40

1.1
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed conditional - replaced comparison check with true → KILLED

2.2
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_nullCharPartialMatch_fieldIsParsed()]
negated conditional → KILLED

3.3
Location : isNullSlice
Killed by : none
Substituted 0 with 1 → SURVIVED
Covering tests

4.4
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_nullCharPartialMatch_fieldIsParsed()]
removed conditional - replaced comparison check with false → KILLED

5.5
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
changed conditional boundary → KILLED

6.6
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_nullCharPartialMatch_fieldIsParsed()]
removed call to java/lang/String::length → KILLED

41

1.1
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed conditional - replaced equality check with true → KILLED

2.2
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed call to java/lang/String::charAt → KILLED

3.3
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_nullCharPartialMatch_fieldIsParsed()]
removed conditional - replaced equality check with false → KILLED

4.4
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
negated conditional → KILLED

42

1.1
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_nullCharPartialMatch_fieldIsParsed()]
replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSlice → KILLED

2.2
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_nullCharPartialMatch_fieldIsParsed()]
Substituted 0 with 1 → KILLED

45

1.1
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
replaced boolean return with false for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSlice → KILLED

2.2
Location : isNullSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
Substituted 1 with 0 → KILLED

55

1.1
Location : isNullValueActive
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullValue → KILLED

2.2
Location : isNullValueActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue33.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue33]/[method:nullDateFieldExportsAsAllPadding()]
removed call to java/lang/String::isEmpty → KILLED

3.3
Location : isNullValueActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue33.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue33]/[method:nullDateFieldExportsAsAllPadding()]
replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullValueActive → KILLED

4.4
Location : isNullValueActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:exportNullValue_emitsSentinelVerbatim()]
removed conditional - replaced equality check with false → KILLED

5.5
Location : isNullValueActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue33.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue33]/[method:nullDateFieldExportsAsAllPadding()]
Substituted 0 with 1 → KILLED

6.6
Location : isNullValueActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:exportNullValue_emitsSentinelVerbatim()]
Substituted 1 with 0 → KILLED

7.7
Location : isNullValueActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue33.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue33]/[method:nullDateFieldExportsAsAllPadding()]
removed conditional - replaced equality check with true → KILLED

8.8
Location : isNullValueActive
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:exportNullValue_emitsSentinelVerbatim()]
negated conditional → KILLED

64

1.1
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadSentinelSliceOnDecimalField_returnsNull()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullValueActive → KILLED

2.2
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadSentinelSliceOnDecimalField_returnsNull()]
negated conditional → KILLED

3.3
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadSentinelSliceOnDecimalField_returnsNull()]
removed call to java/lang/String::equals → KILLED

4.4
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadSentinelSliceOnDecimalField_returnsNull()]
removed conditional - replaced equality check with false → KILLED

5.5
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullValueSlice → KILLED

6.6
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadSentinelSliceOnDecimalField_returnsNull()]
removed conditional - replaced equality check with false → KILLED

7.7
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue97RestOfLine.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue97RestOfLine]/[method:load_restOfLineFromOffset1_emptyLineYieldsEmptyString()]
removed conditional - replaced equality check with true → KILLED

8.8
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadAllZerosSlice_parsesAsZero()]
removed conditional - replaced equality check with true → KILLED

9.9
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadSentinelSliceOnDecimalField_returnsNull()]
removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullValue → KILLED

10.10
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadSentinelSliceOnDecimalField_returnsNull()]
negated conditional → KILLED

11.11
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
Substituted 0 with 1 → KILLED

12.12
Location : isNullValueSlice
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadSentinelSliceOnDecimalField_returnsNull()]
Substituted 1 with 0 → KILLED

75

1.1
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSlice → KILLED

2.2
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadSentinelSliceOnDecimalField_returnsNull()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullValueSlice → KILLED

3.3
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
Substituted 1 with 0 → KILLED

4.4
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
negated conditional → KILLED

5.5
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
negated conditional → KILLED

6.6
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
Substituted 0 with 1 → KILLED

7.7
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
replaced boolean return with true for com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSliceOrValue → KILLED

8.8
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
removed conditional - replaced equality check with false → KILLED

9.9
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:loadSentinelSliceOnDecimalField_returnsNull()]
removed conditional - replaced equality check with false → KILLED

10.10
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestRepeatingFieldSupport]/[method:read_repeatingField_parsesAllElements()]
removed conditional - replaced equality check with true → KILLED

11.11
Location : isNullSliceOrValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue84BlankIsNull]/[method:loadAllSpacesOnStringField_returnsNull()]
removed conditional - replaced equality check with true → KILLED

Active mutators

Tests examined


Report generated by PIT 1.23.1 support