FormatInstructions.java

1
/*
2
 * Copyright 2004 the original author or authors.
3
 *
4
 * Licensed under the Apache License, Version 2.0 (the "License");
5
 * you may not use this file except in compliance with the License.
6
 * You may obtain a copy of the License at
7
 *
8
 *     http://www.apache.org/licenses/LICENSE-2.0
9
 *
10
 * Unless required by applicable law or agreed to in writing, software
11
 * distributed under the License is distributed on an "AS IS" BASIS,
12
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
 * See the License for the specific language governing permissions and
14
 * limitations under the License.
15
 */
16
package com.ancientprogramming.fixedformat4j.format;
17
18
import com.ancientprogramming.fixedformat4j.annotation.Align;
19
import com.ancientprogramming.fixedformat4j.format.data.FixedFormatBooleanData;
20
import com.ancientprogramming.fixedformat4j.format.data.FixedFormatDecimalData;
21
import com.ancientprogramming.fixedformat4j.format.data.FixedFormatEnumData;
22
import com.ancientprogramming.fixedformat4j.format.data.FixedFormatNumberData;
23
import com.ancientprogramming.fixedformat4j.format.data.FixedFormatPatternData;
24
25
/**
26
 * Contains instructions on how to export and load fixed formatted data.
27
 *
28
 * @author Jacob von Eyben - <a href="https://eybenconsult.com">https://eybenconsult.com</a>
29
 * @since 1.0.0
30
 */
31
public class FormatInstructions {
32
33
  private final int length;
34
  private final Align alignment;
35
  private final char paddingChar;
36
  private final char nullChar;
37
  private final String nullValue;
38
  private final FixedFormatPatternData fixedFormatPatternData;
39
  private final FixedFormatBooleanData fixedFormatBooleanData;
40
  private final FixedFormatNumberData fixedFormatNumberData;
41
  private final FixedFormatDecimalData fixedFormatDecimalData;
42
  private final FixedFormatEnumData fixedFormatEnumData;
43
44
  /**
45
   * Creates format instructions with enum data defaulting to {@link FixedFormatEnumData#DEFAULT}
46
   * and null-char detection disabled ({@code nullChar == paddingChar}).
47
   *
48
   * @param length                  the fixed width of the field in characters
49
   * @param alignment               the alignment strategy used to pad and strip the field
50
   * @param paddingChar             the character used for padding
51
   * @param fixedFormatPatternData  date/time pattern configuration, or {@code null} if unused
52
   * @param fixedFormatBooleanData  boolean value configuration, or {@code null} if unused
53
   * @param fixedFormatNumberData   number sign configuration, or {@code null} if unused
54
   * @param fixedFormatDecimalData  decimal precision configuration, or {@code null} if unused
55
   */
56
  public FormatInstructions(int length, Align alignment, char paddingChar, FixedFormatPatternData fixedFormatPatternData, FixedFormatBooleanData fixedFormatBooleanData, FixedFormatNumberData fixedFormatNumberData, FixedFormatDecimalData fixedFormatDecimalData) {
57
    this(length, alignment, paddingChar, paddingChar, fixedFormatPatternData, fixedFormatBooleanData, fixedFormatNumberData, fixedFormatDecimalData, FixedFormatEnumData.DEFAULT);
58
  }
59
60
  /**
61
   * Creates a fully-populated set of format instructions including enum configuration, with
62
   * null-char detection disabled ({@code nullChar == paddingChar}).
63
   *
64
   * @param length                  the fixed width of the field in characters
65
   * @param alignment               the alignment strategy used to pad and strip the field
66
   * @param paddingChar             the character used for padding
67
   * @param fixedFormatPatternData  date/time pattern configuration, or {@code null} if unused
68
   * @param fixedFormatBooleanData  boolean value configuration, or {@code null} if unused
69
   * @param fixedFormatNumberData   number sign configuration, or {@code null} if unused
70
   * @param fixedFormatDecimalData  decimal precision configuration, or {@code null} if unused
71
   * @param fixedFormatEnumData     enum serialization configuration, or {@code null} if unused
72
   */
73
  public FormatInstructions(int length, Align alignment, char paddingChar, FixedFormatPatternData fixedFormatPatternData, FixedFormatBooleanData fixedFormatBooleanData, FixedFormatNumberData fixedFormatNumberData, FixedFormatDecimalData fixedFormatDecimalData, FixedFormatEnumData fixedFormatEnumData) {
74
    this(length, alignment, paddingChar, paddingChar, fixedFormatPatternData, fixedFormatBooleanData, fixedFormatNumberData, fixedFormatDecimalData, fixedFormatEnumData);
75
  }
76
77
  /**
78
   * Creates a fully-populated set of format instructions including a {@code nullChar} sentinel
79
   * used to represent a {@code null} field value on load and export. When
80
   * {@code nullChar == paddingChar} the detection is disabled and existing behavior is preserved.
81
   *
82
   * @param length                  the fixed width of the field in characters
83
   * @param alignment               the alignment strategy used to pad and strip the field
84
   * @param paddingChar             the character used for padding
85
   * @param nullChar                the sentinel character signalling a {@code null} field
86
   * @param fixedFormatPatternData  date/time pattern configuration, or {@code null} if unused
87
   * @param fixedFormatBooleanData  boolean value configuration, or {@code null} if unused
88
   * @param fixedFormatNumberData   number sign configuration, or {@code null} if unused
89
   * @param fixedFormatDecimalData  decimal precision configuration, or {@code null} if unused
90
   * @param fixedFormatEnumData     enum serialization configuration, or {@code null} if unused
91
   * @since 1.7.1
92
   */
93
  public FormatInstructions(int length, Align alignment, char paddingChar, char nullChar, FixedFormatPatternData fixedFormatPatternData, FixedFormatBooleanData fixedFormatBooleanData, FixedFormatNumberData fixedFormatNumberData, FixedFormatDecimalData fixedFormatDecimalData, FixedFormatEnumData fixedFormatEnumData) {
94
    this(length, alignment, paddingChar, nullChar, "", fixedFormatPatternData, fixedFormatBooleanData, fixedFormatNumberData, fixedFormatDecimalData, fixedFormatEnumData);
95
  }
96
97
  /**
98
   * Creates a fully-populated set of format instructions including both null sentinels:
99
   * the single-character {@code nullChar} and the literal string {@code nullValue}. The
100
   * string sentinel is active when non-empty; an empty string disables it and preserves
101
   * existing behavior.
102
   *
103
   * @param length                  the fixed width of the field in characters
104
   * @param alignment               the alignment strategy used to pad and strip the field
105
   * @param paddingChar             the character used for padding
106
   * @param nullChar                the sentinel character signalling a {@code null} field
107
   * @param nullValue               the literal sentinel string signalling a {@code null} field; {@code ""} disables it
108
   * @param fixedFormatPatternData  date/time pattern configuration, or {@code null} if unused
109
   * @param fixedFormatBooleanData  boolean value configuration, or {@code null} if unused
110
   * @param fixedFormatNumberData   number sign configuration, or {@code null} if unused
111
   * @param fixedFormatDecimalData  decimal precision configuration, or {@code null} if unused
112
   * @param fixedFormatEnumData     enum serialization configuration, or {@code null} if unused
113
   * @since 1.9.0
114
   */
115
  public FormatInstructions(int length, Align alignment, char paddingChar, char nullChar, String nullValue, FixedFormatPatternData fixedFormatPatternData, FixedFormatBooleanData fixedFormatBooleanData, FixedFormatNumberData fixedFormatNumberData, FixedFormatDecimalData fixedFormatDecimalData, FixedFormatEnumData fixedFormatEnumData) {
116 1 1. <init> : Removed assignment to member variable length → KILLED
    this.length = length;
117 1 1. <init> : Removed assignment to member variable alignment → KILLED
    this.alignment = alignment;
118 1 1. <init> : Removed assignment to member variable paddingChar → KILLED
    this.paddingChar = paddingChar;
119 1 1. <init> : Removed assignment to member variable nullChar → KILLED
    this.nullChar = nullChar;
120 1 1. <init> : Removed assignment to member variable nullValue → KILLED
    this.nullValue = nullValue;
121 1 1. <init> : Removed assignment to member variable fixedFormatPatternData → KILLED
    this.fixedFormatPatternData = fixedFormatPatternData;
122 1 1. <init> : Removed assignment to member variable fixedFormatBooleanData → KILLED
    this.fixedFormatBooleanData = fixedFormatBooleanData;
123 1 1. <init> : Removed assignment to member variable fixedFormatNumberData → KILLED
    this.fixedFormatNumberData = fixedFormatNumberData;
124 1 1. <init> : Removed assignment to member variable fixedFormatDecimalData → KILLED
    this.fixedFormatDecimalData = fixedFormatDecimalData;
125 1 1. <init> : Removed assignment to member variable fixedFormatEnumData → KILLED
    this.fixedFormatEnumData = fixedFormatEnumData;
126
  }
127
128
  /**
129
   * Returns the fixed character width of the field.
130
   *
131
   * @return the field length in characters
132
   */
133
  public int getLength() {
134 1 1. getLength : replaced int return with 0 for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getLength → KILLED
    return length;
135
  }
136
137
  /**
138
   * Returns the alignment strategy used to pad and strip the field value.
139
   *
140
   * @return the {@link Align} constant for this field
141
   */
142
  public Align getAlignment() {
143 1 1. getAlignment : replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getAlignment → KILLED
    return alignment;
144
  }
145
146
  /**
147
   * Returns the character used to pad the field to its full length.
148
   *
149
   * @return the padding character
150
   */
151
  public char getPaddingChar() {
152 1 1. getPaddingChar : replaced char return with 0 for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getPaddingChar → KILLED
    return paddingChar;
153
  }
154
155
  /**
156
   * Returns the sentinel character that signals a {@code null} field value. When it equals
157
   * {@link #getPaddingChar()} the null-char detection is disabled and existing behavior is
158
   * preserved.
159
   *
160
   * @return the null sentinel character
161
   * @since 1.7.1
162
   */
163
  public char getNullChar() {
164 1 1. getNullChar : replaced char return with 0 for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullChar → KILLED
    return nullChar;
165
  }
166
167
  /**
168
   * Returns the literal sentinel string that signals a {@code null} field value. When empty
169
   * the null-value detection is disabled and existing behavior is preserved.
170
   *
171
   * @return the null sentinel string; never {@code null}, {@code ""} when not configured
172
   * @since 1.9.0
173
   */
174
  public String getNullValue() {
175 1 1. getNullValue : replaced return value with "" for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullValue → KILLED
    return nullValue;
176
  }
177
178
  /**
179
   * Returns the date/time pattern configuration for this field.
180
   *
181
   * @return the {@link FixedFormatPatternData}, or {@code null} if no pattern annotation is present
182
   */
183
  public FixedFormatPatternData getFixedFormatPatternData() {
184 1 1. getFixedFormatPatternData : replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getFixedFormatPatternData → KILLED
    return fixedFormatPatternData;
185
  }
186
187
  /**
188
   * Returns the boolean value configuration for this field.
189
   *
190
   * @return the {@link FixedFormatBooleanData}, or {@code null} if no boolean annotation is present
191
   */
192
  public FixedFormatBooleanData getFixedFormatBooleanData() {
193 1 1. getFixedFormatBooleanData : replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getFixedFormatBooleanData → KILLED
    return fixedFormatBooleanData;
194
  }
195
196
  /**
197
   * Returns the decimal precision configuration for this field.
198
   *
199
   * @return the {@link FixedFormatDecimalData}, or {@code null} if no decimal annotation is present
200
   */
201
  public FixedFormatDecimalData getFixedFormatDecimalData() {
202 1 1. getFixedFormatDecimalData : replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getFixedFormatDecimalData → KILLED
    return fixedFormatDecimalData;
203
  }
204
205
  /**
206
   * Returns the number sign configuration for this field.
207
   *
208
   * @return the {@link FixedFormatNumberData}, or {@code null} if no number annotation is present
209
   */
210
  public FixedFormatNumberData getFixedFormatNumberData() {
211 1 1. getFixedFormatNumberData : replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getFixedFormatNumberData → KILLED
    return fixedFormatNumberData;
212
  }
213
214
  /**
215
   * Returns the enum format configuration for this field.
216
   *
217
   * @return the {@link FixedFormatEnumData}; never {@code null}
218
   */
219
  public FixedFormatEnumData getFixedFormatEnumData() {
220 1 1. getFixedFormatEnumData : replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getFixedFormatEnumData → KILLED
    return fixedFormatEnumData;
221
  }
222
223
  public String toString() {
224 5 1. toString : Substituted 10 with 11 → SURVIVED
2. toString : replaced call to java/lang/String::format with argument → SURVIVED
3. toString : replaced return value with "" for com/ancientprogramming/fixedformat4j/format/FormatInstructions::toString → SURVIVED
4. toString : Substituted 0 with 1 → SURVIVED
5. toString : removed call to java/lang/String::format → SURVIVED
    return String.format("FormatInstructions{length=%d, alignment=%s, paddingChar='%c', nullChar='%c', nullValue='%s', fixedFormatPatternData=%s, fixedFormatBooleanData=%s, fixedFormatNumberData=%s, fixedFormatDecimalData=%s, fixedFormatEnumData=%s}",
225 12 1. toString : removed call to java/lang/Integer::valueOf → SURVIVED
2. toString : Substituted 5 with 6 → SURVIVED
3. toString : Substituted 7 with 8 → SURVIVED
4. toString : Substituted 2 with 3 → SURVIVED
5. toString : removed call to java/lang/Character::valueOf → SURVIVED
6. toString : Substituted 3 with 4 → SURVIVED
7. toString : Substituted 4 with 5 → SURVIVED
8. toString : removed call to java/lang/Character::valueOf → SURVIVED
9. toString : Substituted 6 with 7 → SURVIVED
10. toString : Substituted 8 with 9 → SURVIVED
11. toString : Substituted 9 with 10 → KILLED
12. toString : Substituted 1 with 0 → KILLED
        length, alignment, paddingChar, nullChar, nullValue, fixedFormatPatternData, fixedFormatBooleanData, fixedFormatNumberData, fixedFormatDecimalData, fixedFormatEnumData);
226
  }
227
}

Mutations

116

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.TestFixedFormatUtilExtended.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.TestFixedFormatUtilExtended]/[method:fetchData_fieldExactlyFillsRecord()]
Removed assignment to member variable length → KILLED

117

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestCharacterFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestCharacterFormatter]/[method:testOnlyFirstCharUsedFromLongerString()]
Removed assignment to member variable alignment → KILLED

118

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestCharacterFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestCharacterFormatter]/[method:testFormat()]
Removed assignment to member variable paddingChar → KILLED

119

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFormatInstructionsBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFormatInstructionsBuilder]/[method:build_capturesFieldLengthPaddingCharAndNullChar()]
Removed assignment to member variable nullChar → KILLED

120

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:registerType_builtInType_customFormatterShadowsBuiltIn()]
Removed assignment to member variable nullValue → KILLED

121

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestLocalDateFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestLocalDateFormatter]/[method:testFormatYearOnlyPattern()]
Removed assignment to member variable fixedFormatPatternData → KILLED

122

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestBooleanNumberDecimalFormatting.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestBooleanNumberDecimalFormatting]/[test-template:parseBooleanInvalidValueThrowsException(java.lang.String, java.lang.String, int, java.lang.String)]/[test-template-invocation:#3]
Removed assignment to member variable fixedFormatBooleanData → KILLED

123

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntegerFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntegerFormatter]/[method:testMaxAndMinValue()]
Removed assignment to member variable fixedFormatNumberData → KILLED

124

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFormatInstructionsBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFormatInstructionsBuilder]/[method:build_withFixedFormatDecimal_capturesDecimals()]
Removed assignment to member variable fixedFormatDecimalData → KILLED

125

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestEnumFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestEnumFormatter]/[method:nonNumericOrdinal_exceptionMessageMentionsCannotParseOrdinal()]
Removed assignment to member variable fixedFormatEnumData → KILLED

134

1.1
Location : getLength
Killed by : com.ancientprogramming.fixedformat4j.format.TestFixedFormatUtilExtended.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.TestFixedFormatUtilExtended]/[method:fetchData_fieldExactlyFillsRecord()]
replaced int return with 0 for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getLength → KILLED

143

1.1
Location : getAlignment
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestCharacterFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestCharacterFormatter]/[method:testOnlyFirstCharUsedFromLongerString()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getAlignment → KILLED

152

1.1
Location : getPaddingChar
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestCharacterFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestCharacterFormatter]/[method:testFormat()]
replaced char return with 0 for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getPaddingChar → KILLED

164

1.1
Location : getNullChar
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFormatInstructionsBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFormatInstructionsBuilder]/[method:build_capturesFieldLengthPaddingCharAndNullChar()]
replaced char return with 0 for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullChar → KILLED

175

1.1
Location : getNullValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:exportNullValue_emitsSentinelVerbatim()]
replaced return value with "" for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullValue → KILLED

184

1.1
Location : getFixedFormatPatternData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestLocalDateTimeFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestLocalDateTimeFormatter]/[method:testFormatCompactPattern()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getFixedFormatPatternData → KILLED

193

1.1
Location : getFixedFormatBooleanData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFormatInstructionsBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFormatInstructionsBuilder]/[method:build_withFixedFormatBoolean_capturesTrueFalseValues()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getFixedFormatBooleanData → KILLED

202

1.1
Location : getFixedFormatDecimalData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFormatInstructionsBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFormatInstructionsBuilder]/[method:build_withFixedFormatDecimal_capturesDecimals()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getFixedFormatDecimalData → KILLED

211

1.1
Location : getFixedFormatNumberData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestShortFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestShortFormatter]/[method:testMaxAndMinValue()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getFixedFormatNumberData → KILLED

220

1.1
Location : getFixedFormatEnumData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestEnumFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestEnumFormatter]/[method:nonNumericOrdinal_exceptionMessageMentionsCannotParseOrdinal()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/FormatInstructions::getFixedFormatEnumData → KILLED

224

1.1
Location : toString
Killed by : none
Substituted 10 with 11 → SURVIVED
Covering tests

2.2
Location : toString
Killed by : none
replaced call to java/lang/String::format with argument → SURVIVED Covering tests

3.3
Location : toString
Killed by : none
replaced return value with "" for com/ancientprogramming/fixedformat4j/format/FormatInstructions::toString → SURVIVED Covering tests

4.4
Location : toString
Killed by : none
Substituted 0 with 1 → SURVIVED Covering tests

5.5
Location : toString
Killed by : none
removed call to java/lang/String::format → SURVIVED Covering tests

225

1.1
Location : toString
Killed by : none
removed call to java/lang/Integer::valueOf → SURVIVED
Covering tests

2.2
Location : toString
Killed by : none
Substituted 5 with 6 → SURVIVED Covering tests

3.3
Location : toString
Killed by : none
Substituted 7 with 8 → SURVIVED Covering tests

4.4
Location : toString
Killed by : none
Substituted 2 with 3 → SURVIVED Covering tests

5.5
Location : toString
Killed by : none
removed call to java/lang/Character::valueOf → SURVIVED Covering tests

6.6
Location : toString
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testParseFail()]
Substituted 9 with 10 → KILLED

7.7
Location : toString
Killed by : none
Substituted 3 with 4 → SURVIVED Covering tests

8.8
Location : toString
Killed by : none
Substituted 4 with 5 → SURVIVED Covering tests

9.9
Location : toString
Killed by : none
removed call to java/lang/Character::valueOf → SURVIVED Covering tests

10.10
Location : toString
Killed by : none
Substituted 6 with 7 → SURVIVED Covering tests

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

12.12
Location : toString
Killed by : none
Substituted 8 with 9 → SURVIVED Covering tests

Active mutators

Tests examined


Report generated by PIT 1.23.1 support