Align.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.annotation;
17
18
import org.apache.commons.lang3.StringUtils;
19
20
/**
21
 * Capable of pad or chop data in a given direction
22
 *
23
 * @author Jacob von Eyben - <a href="https://eybenconsult.com">https://eybenconsult.com</a>
24
 * @since 1.0.0
25
 */
26
public enum Align {
27
28
  /**
29
   * Sentinel value meaning "inherit alignment from the enclosing {@link Record#align()}.
30
   * This value is resolved by the framework before any formatter runs and must never be
31
   * passed to {@link #apply} or {@link #remove}.
32
   *
33
   * @since 1.7.1
34
   */
35
  INHERIT {
36
    public String apply(String data, int length, char paddingChar) {
37 1 1. apply : removed call to java/lang/UnsupportedOperationException::<init> → NO_COVERAGE
      throw new UnsupportedOperationException("Align.INHERIT must be resolved to LEFT or RIGHT before use");
38
    }
39
    public String remove(String data, char paddingChar) {
40 1 1. remove : removed call to java/lang/UnsupportedOperationException::<init> → NO_COVERAGE
      throw new UnsupportedOperationException("Align.INHERIT must be resolved to LEFT or RIGHT before use");
41
    }
42
  },
43
44
  /**
45
   * Pad or chop data to the left, so the text is aligned to the right
46
   */
47
  RIGHT {
48
    /** {@inheritDoc} */
49
    public String apply(String data, int length, char paddingChar) {
50
      String result;
51 3 1. apply : removed conditional - replaced equality check with true → KILLED
2. apply : removed conditional - replaced equality check with false → KILLED
3. apply : negated conditional → KILLED
      if (data == null) {
52
        data = "";
53
      }
54 1 1. apply : removed call to java/lang/String::length → KILLED
      int dataLength = data.length();
55 4 1. apply : changed conditional boundary → SURVIVED
2. apply : removed conditional - replaced comparison check with false → KILLED
3. apply : negated conditional → KILLED
4. apply : removed conditional - replaced comparison check with true → KILLED
      if (dataLength > length) {
56 3 1. apply : Replaced integer subtraction with addition → KILLED
2. apply : removed call to org/apache/commons/lang3/StringUtils::substring → KILLED
3. apply : replaced call to org/apache/commons/lang3/StringUtils::substring with argument → KILLED
        result = StringUtils.substring(data, dataLength - length, dataLength);
57
      } else {
58 2 1. apply : replaced call to org/apache/commons/lang3/StringUtils::leftPad with argument → KILLED
2. apply : removed call to org/apache/commons/lang3/StringUtils::leftPad → KILLED
        result = StringUtils.leftPad(data, length, paddingChar);
59
      }
60 1 1. apply : replaced return value with "" for com/ancientprogramming/fixedformat4j/annotation/Align$2::apply → KILLED
      return result;
61
    }
62
    /** {@inheritDoc} */
63
    public String remove(String data, char paddingChar) {
64 3 1. remove : removed conditional - replaced equality check with false → KILLED
2. remove : negated conditional → KILLED
3. remove : removed conditional - replaced equality check with true → KILLED
      if (data == null) {
65
        return "";
66
      }
67 1 1. remove : Substituted 0 with 1 → KILLED
      int start = 0;
68 9 1. remove : removed conditional - replaced equality check with false → KILLED
2. remove : negated conditional → KILLED
3. remove : removed call to java/lang/String::length → KILLED
4. remove : removed conditional - replaced comparison check with true → KILLED
5. remove : removed call to java/lang/String::charAt → KILLED
6. remove : negated conditional → KILLED
7. remove : removed conditional - replaced equality check with true → KILLED
8. remove : removed conditional - replaced comparison check with false → KILLED
9. remove : changed conditional boundary → KILLED
      while (start < data.length() && data.charAt(start) == paddingChar) {
69
        start++;
70
      }
71 3 1. remove : replaced call to java/lang/String::substring with receiver → KILLED
2. remove : removed call to java/lang/String::substring → KILLED
3. remove : replaced return value with "" for com/ancientprogramming/fixedformat4j/annotation/Align$2::remove → KILLED
      return data.substring(start);
72
    }},
73
74
75
  /**
76
   * Pad or chop data to the right, so the text is aligned to the left
77
   */
78
  LEFT {
79
    /** {@inheritDoc} */
80
    public String apply(String data, int length, char paddingChar) {
81
      String result;
82 3 1. apply : removed conditional - replaced equality check with true → KILLED
2. apply : negated conditional → KILLED
3. apply : removed conditional - replaced equality check with false → KILLED
      if (data == null) {
83
        data = "";
84
      }
85 1 1. apply : removed call to java/lang/String::length → KILLED
      int dataLength = data.length();
86 4 1. apply : changed conditional boundary → SURVIVED
2. apply : removed conditional - replaced comparison check with true → KILLED
3. apply : negated conditional → KILLED
4. apply : removed conditional - replaced comparison check with false → KILLED
      if (dataLength > length) {
87 3 1. apply : replaced call to org/apache/commons/lang3/StringUtils::substring with argument → KILLED
2. apply : Substituted 0 with 1 → KILLED
3. apply : removed call to org/apache/commons/lang3/StringUtils::substring → KILLED
        result = StringUtils.substring(data, 0, length);
88
      } else {
89 2 1. apply : removed call to org/apache/commons/lang3/StringUtils::rightPad → KILLED
2. apply : replaced call to org/apache/commons/lang3/StringUtils::rightPad with argument → KILLED
        result = StringUtils.rightPad(data, length, paddingChar);
90
      }
91 1 1. apply : replaced return value with "" for com/ancientprogramming/fixedformat4j/annotation/Align$3::apply → KILLED
      return result;
92
    }
93
94
    /** {@inheritDoc} */
95
    public String remove(String data, char paddingChar) {
96 3 1. remove : removed conditional - replaced equality check with true → KILLED
2. remove : removed conditional - replaced equality check with false → KILLED
3. remove : negated conditional → KILLED
      if (data == null) {
97
        return "";
98
      }
99 1 1. remove : removed call to java/lang/String::length → KILLED
      int end = data.length();
100 10 1. remove : negated conditional → KILLED
2. remove : removed conditional - replaced comparison check with false → KILLED
3. remove : removed conditional - replaced equality check with true → KILLED
4. remove : Substituted 1 with 0 → KILLED
5. remove : Replaced integer subtraction with addition → KILLED
6. remove : removed call to java/lang/String::charAt → KILLED
7. remove : negated conditional → KILLED
8. remove : removed conditional - replaced equality check with false → KILLED
9. remove : changed conditional boundary → KILLED
10. remove : removed conditional - replaced comparison check with true → KILLED
      while (end > 0 && data.charAt(end - 1) == paddingChar) {
101
        end--;
102
      }
103 4 1. remove : Substituted 0 with 1 → KILLED
2. remove : replaced return value with "" for com/ancientprogramming/fixedformat4j/annotation/Align$3::remove → KILLED
3. remove : replaced call to java/lang/String::substring with receiver → KILLED
4. remove : removed call to java/lang/String::substring → KILLED
      return data.substring(0, end);
104
    }};
105
106
  /**
107
   * Pads the data in the length specified with the given padding char.
108
   * No padding will be applied if the length of the data is longer than the given length.
109
   *
110
   * @param data        the data to pad.
111
   * @param length      the minimum length after the padding is applied.
112
   * @param paddingChar the char the data is padded with.
113
   * @return the data after padding is applied.
114
   */
115
  public abstract String apply(String data, int length, char paddingChar);
116
117
  /**
118
   * Remove the padding chars from the data.
119
   *
120
   * @param data        the data including padding chars
121
   * @param paddingChar the padding char to remove
122
   * @return the data after padding is removed.
123
   */
124
  public abstract String remove(String data, char paddingChar);
125
}

Mutations

37

1.1
Location : apply
Killed by : none
removed call to java/lang/UnsupportedOperationException::<init> → NO_COVERAGE

40

1.1
Location : remove
Killed by : none
removed call to java/lang/UnsupportedOperationException::<init> → NO_COVERAGE

51

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testStringExactlyAtBoundary()]
removed conditional - replaced equality check with true → KILLED

2.2
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftPadding()]
removed conditional - replaced equality check with false → KILLED

3.3
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testStringExactlyAtBoundary()]
negated conditional → KILLED

54

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftPadding()]
removed call to java/lang/String::length → KILLED

55

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftPadding()]
removed conditional - replaced comparison check with false → KILLED

2.2
Location : apply
Killed by : none
changed conditional boundary → SURVIVED
Covering tests

3.3
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftPadding()]
negated conditional → KILLED

4.4
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftPadding()]
removed conditional - replaced comparison check with true → KILLED

56

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftPadding()]
Replaced integer subtraction with addition → KILLED

2.2
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftPadding()]
removed call to org/apache/commons/lang3/StringUtils::substring → KILLED

3.3
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftPadding()]
replaced call to org/apache/commons/lang3/StringUtils::substring with argument → KILLED

58

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftPadding()]
replaced call to org/apache/commons/lang3/StringUtils::leftPad with argument → KILLED

2.2
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testStringExactlyAtBoundary()]
removed call to org/apache/commons/lang3/StringUtils::leftPad → KILLED

60

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testStringExactlyAtBoundary()]
replaced return value with "" for com/ancientprogramming/fixedformat4j/annotation/Align$2::apply → KILLED

64

1.1
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
removed conditional - replaced equality check with false → KILLED

2.2
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
negated conditional → KILLED

3.3
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
removed conditional - replaced equality check with true → KILLED

67

1.1
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
Substituted 0 with 1 → KILLED

68

1.1
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
removed conditional - replaced equality check with false → KILLED

2.2
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
negated conditional → KILLED

3.3
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
removed call to java/lang/String::length → KILLED

4.4
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
removed conditional - replaced comparison check with true → KILLED

5.5
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
removed call to java/lang/String::charAt → KILLED

6.6
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
negated conditional → KILLED

7.7
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
removed conditional - replaced equality check with true → KILLED

8.8
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
removed conditional - replaced comparison check with false → KILLED

9.9
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
changed conditional boundary → KILLED

71

1.1
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
replaced call to java/lang/String::substring with receiver → KILLED

2.2
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
removed call to java/lang/String::substring → KILLED

3.3
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testLeftRemove()]
replaced return value with "" for com/ancientprogramming/fixedformat4j/annotation/Align$2::remove → KILLED

82

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testStringExactlyAtBoundary()]
removed conditional - replaced equality check with true → KILLED

2.2
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testStringExactlyAtBoundary()]
negated conditional → KILLED

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

85

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestStringFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestStringFormatter]/[method:testFormat()]
removed call to java/lang/String::length → KILLED

86

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testEmptyStringInput()]
removed conditional - replaced comparison check with true → KILLED

2.2
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testEmptyStringInput()]
negated conditional → KILLED

3.3
Location : apply
Killed by : none
changed conditional boundary → SURVIVED
Covering tests

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

87

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestStringFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestStringFormatter]/[method:testFormat()]
replaced call to org/apache/commons/lang3/StringUtils::substring with argument → KILLED

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

3.3
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestStringFormatter.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestStringFormatter]/[method:testFormat()]
removed call to org/apache/commons/lang3/StringUtils::substring → KILLED

89

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testStringExactlyAtBoundary()]
removed call to org/apache/commons/lang3/StringUtils::rightPad → KILLED

2.2
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testEmptyStringInput()]
replaced call to org/apache/commons/lang3/StringUtils::rightPad with argument → KILLED

91

1.1
Location : apply
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testStringExactlyAtBoundary()]
replaced return value with "" for com/ancientprogramming/fixedformat4j/annotation/Align$3::apply → KILLED

96

1.1
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
removed conditional - replaced equality check with true → KILLED

2.2
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
removed conditional - replaced equality check with false → KILLED

3.3
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
negated conditional → KILLED

99

1.1
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
removed call to java/lang/String::length → KILLED

100

1.1
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
negated conditional → KILLED

2.2
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
removed conditional - replaced comparison check with false → KILLED

3.3
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
removed conditional - replaced equality check with true → KILLED

4.4
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
Substituted 1 with 0 → KILLED

5.5
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
Replaced integer subtraction with addition → KILLED

6.6
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
removed call to java/lang/String::charAt → KILLED

7.7
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
negated conditional → KILLED

8.8
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
removed conditional - replaced equality check with false → KILLED

9.9
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
changed conditional boundary → KILLED

10.10
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
removed conditional - replaced comparison check with true → KILLED

103

1.1
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
Substituted 0 with 1 → KILLED

2.2
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
replaced return value with "" for com/ancientprogramming/fixedformat4j/annotation/Align$3::remove → KILLED

3.3
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
replaced call to java/lang/String::substring with receiver → KILLED

4.4
Location : remove
Killed by : com.ancientprogramming.fixedformat4j.annotation.TestAlign.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.annotation.TestAlign]/[method:testRightRemove()]
removed call to java/lang/String::substring → KILLED

Active mutators

Tests examined


Report generated by PIT 1.23.1 support