FixedFormatManagerImpl.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.impl;
17
18
import com.ancientprogramming.fixedformat4j.annotation.Record;
19
import com.ancientprogramming.fixedformat4j.exception.FixedFormatException;
20
import com.ancientprogramming.fixedformat4j.format.FieldInfo;
21
import com.ancientprogramming.fixedformat4j.format.FixedFormatIntrospector;
22
import com.ancientprogramming.fixedformat4j.format.FixedFormatManager;
23
import com.ancientprogramming.fixedformat4j.format.FixedFormatter;
24
import com.ancientprogramming.fixedformat4j.format.ParseException;
25
import org.slf4j.Logger;
26
import org.slf4j.LoggerFactory;
27
28
import java.util.Collections;
29
import java.util.HashMap;
30
import java.util.LinkedHashMap;
31
import java.util.List;
32
import java.util.Map;
33
import java.util.Objects;
34
35
import static com.ancientprogramming.fixedformat4j.format.FixedFormatUtil.fetchData;
36
import static java.lang.String.format;
37
38
/**
39
 * Load and export objects to and from fixed formatted string representation
40
 *
41
 * @author Jacob von Eyben - <a href="https://eybenconsult.com">https://eybenconsult.com</a>
42
 * @since 1.0.0
43
 */
44
public class FixedFormatManagerImpl implements FixedFormatManager, FixedFormatIntrospector {
45
46
  private static final Logger LOG = LoggerFactory.getLogger(FixedFormatManagerImpl.class);
47
48
  public FixedFormatManagerImpl() {
49 1 1. <init> : Removed assignment to member variable metadataCache → KILLED
    this.metadataCache = ClassMetadataCache.INSTANCE;
50
  }
51
52
  private FixedFormatManagerImpl(Map<Class<?>, Class<? extends FixedFormatter<?>>> customRegistry) {
53 4 1. <init> : removed call to java/util/Map::isEmpty → SURVIVED
2. <init> : removed conditional - replaced equality check with false → SURVIVED
3. <init> : removed conditional - replaced equality check with true → KILLED
4. <init> : negated conditional → KILLED
    this.metadataCache = customRegistry.isEmpty()
54
        ? ClassMetadataCache.INSTANCE
55 2 1. <init> : Removed assignment to member variable metadataCache → KILLED
2. <init> : removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::<init> → KILLED
        : new ClassMetadataCache(customRegistry);
56
  }
57
58
  /**
59
   * Returns a new instance of this implementation as a {@link FixedFormatManager}.
60
   *
61
   * @return a new {@code FixedFormatManagerImpl}; never {@code null}
62
   * @since 1.8.0
63
   */
64
  public static FixedFormatManager create() {
65 2 1. create : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::<init> → KILLED
2. create : replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::create → KILLED
    return new FixedFormatManagerImpl();
66
  }
67
68
  /**
69
   * Returns a builder for constructing a {@code FixedFormatManagerImpl} with a custom type registry.
70
   *
71
   * @return a new {@code Builder}; never {@code null}
72
   * @since 1.9.0
73
   */
74
  public static Builder builder() {
75 2 1. builder : replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::builder → KILLED
2. builder : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$Builder::<init> → KILLED
    return new Builder();
76
  }
77
78
  /**
79
   * Builder for {@link FixedFormatManagerImpl} that allows registering custom type-to-formatter
80
   * mappings. Custom registrations shadow built-in formatters; last registration wins on duplicates.
81
   *
82
   * @since 1.9.0
83
   */
84
  public static final class Builder {
85 2 1. <init> : Removed assignment to member variable registry → KILLED
2. <init> : removed call to java/util/LinkedHashMap::<init> → KILLED
    private final Map<Class<?>, Class<? extends FixedFormatter<?>>> registry = new LinkedHashMap<>();
86
87
    private Builder() {}
88
89
    /**
90
     * Registers a formatter class for the given type. If the type already has a mapping
91
     * (either a prior {@code registerType} call or a built-in), this registration overwrites it.
92
     * Last registration wins — no exception is thrown on duplicates.
93
     *
94
     * @param type           the Java type to map; must not be {@code null}
95
     * @param formatterClass the formatter to use for {@code type}; must not be {@code null}
96
     * @return this builder, for chaining
97
     */
98
    public <T> Builder registerType(Class<T> type, Class<? extends FixedFormatter<T>> formatterClass) {
99 2 1. registerType : replaced call to java/util/Objects::requireNonNull with argument → SURVIVED
2. registerType : removed call to java/util/Objects::requireNonNull → SURVIVED
      Objects.requireNonNull(type, "type must not be null");
100 2 1. registerType : removed call to java/util/Objects::requireNonNull → SURVIVED
2. registerType : replaced call to java/util/Objects::requireNonNull with argument → SURVIVED
      Objects.requireNonNull(formatterClass, "formatterClass must not be null");
101 2 1. registerType : replaced call to java/util/Map::put with argument → KILLED
2. registerType : removed call to java/util/Map::put → KILLED
      registry.put(type, formatterClass);
102 1 1. registerType : replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$Builder::registerType → KILLED
      return this;
103
    }
104
105
    /**
106
     * Builds and returns a {@link FixedFormatManager} with the registered type mappings.
107
     *
108
     * @return a new manager instance; never {@code null}
109
     */
110
    public FixedFormatManager build() {
111 5 1. build : replaced call to java/util/Collections::unmodifiableMap with argument → SURVIVED
2. build : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::<init> → KILLED
3. build : replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$Builder::build → KILLED
4. build : removed call to java/util/Collections::unmodifiableMap → KILLED
5. build : removed call to java/util/LinkedHashMap::<init> → KILLED
      return new FixedFormatManagerImpl(Collections.unmodifiableMap(new LinkedHashMap<>(registry)));
112
    }
113
  }
114
115 5 1. <init> : Removed assignment to member variable this$0 → KILLED
2. <init> : Removed assignment to member variable validatedClasses → KILLED
3. <init> : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$1::<init> → KILLED
4. <init> : Removed assignment to member variable validatedClasses → KILLED
5. <init> : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$1::<init> → KILLED
  private final ClassValue<Boolean> validatedClasses = new ClassValue<>() {
116
    @Override
117
    protected Boolean computeValue(Class<?> clazz) {
118 1 1. computeValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::get → KILLED
      List<FieldDescriptor> descriptors = metadataCache.get(clazz);
119
      for (FieldDescriptor desc : descriptors) {
120 1 1. computeValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateFieldPattern → KILLED
        FieldValidator.doValidateFieldPattern(desc.target, desc.fieldAnnotation);
121 1 1. computeValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateEnumFieldLength → KILLED
        FieldValidator.doValidateEnumFieldLength(desc.target, desc.fieldAnnotation);
122 1 1. computeValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateFieldNullChar → KILLED
        FieldValidator.doValidateFieldNullChar(desc.target, desc.fieldAnnotation);
123 1 1. computeValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateNullValue → KILLED
        FieldValidator.doValidateNullValue(desc.target, desc.fieldAnnotation);
124 1 1. computeValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateRestOfLineField → KILLED
        FieldValidator.doValidateRestOfLineField(desc.target, desc.fieldAnnotation);
125
      }
126 1 1. computeValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateRestOfLineIsLastField → KILLED
      FieldValidator.doValidateRestOfLineIsLastField(clazz, descriptors);
127 1 1. computeValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateRestOfLineRecordLength → KILLED
      FieldValidator.doValidateRestOfLineRecordLength(clazz, descriptors);
128 1 1. computeValue : replaced Boolean return with False for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$1::computeValue → SURVIVED
      return Boolean.TRUE;
129
    }
130
  };
131
132
  private final ClassMetadataCache metadataCache;
133 4 1. <init> : Removed assignment to member variable recordInstantiator → KILLED
2. <init> : Removed assignment to member variable recordInstantiator → KILLED
3. <init> : removed call to com/ancientprogramming/fixedformat4j/format/impl/RecordInstantiator::<init> → KILLED
4. <init> : removed call to com/ancientprogramming/fixedformat4j/format/impl/RecordInstantiator::<init> → KILLED
  private final RecordInstantiator recordInstantiator = new RecordInstantiator();
134 4 1. <init> : removed call to com/ancientprogramming/fixedformat4j/format/impl/RepeatingFieldSupport::<init> → KILLED
2. <init> : Removed assignment to member variable repeatingFieldSupport → KILLED
3. <init> : removed call to com/ancientprogramming/fixedformat4j/format/impl/RepeatingFieldSupport::<init> → KILLED
4. <init> : Removed assignment to member variable repeatingFieldSupport → KILLED
  private final RepeatingFieldSupport repeatingFieldSupport = new RepeatingFieldSupport();
135
136
  /**
137
   * {@inheritDoc}
138
   */
139
  public <T> T load(Class<T> fixedFormatRecordClass, String data) {
140 1 1. load : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::getAndAssertRecordAnnotation → KILLED
    getAndAssertRecordAnnotation(fixedFormatRecordClass);
141 1 1. load : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::validatePatterns → KILLED
    validatePatterns(fixedFormatRecordClass);
142
143 1 1. load : removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::constructorBinding → SURVIVED
    ConstructorBinding constructorBinding = metadataCache.constructorBinding(fixedFormatRecordClass);
144 3 1. load : removed conditional - replaced equality check with false → SURVIVED
2. load : negated conditional → KILLED
3. load : removed conditional - replaced equality check with true → KILLED
    if (constructorBinding != null) {
145 2 1. load : replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::load → NO_COVERAGE
2. load : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::loadThroughConstructor → NO_COVERAGE
      return loadThroughConstructor(fixedFormatRecordClass, data, constructorBinding);
146
    }
147 2 1. load : replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::load → KILLED
2. load : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::loadThroughSetters → KILLED
    return loadThroughSetters(fixedFormatRecordClass, data);
148
  }
149
150
  private <T> T loadThroughSetters(Class<T> fixedFormatRecordClass, String data) {
151 1 1. loadThroughSetters : removed call to com/ancientprogramming/fixedformat4j/format/impl/RecordInstantiator::instantiate → KILLED
    T instance = recordInstantiator.instantiate(fixedFormatRecordClass);
152
153 1 1. loadThroughSetters : removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::get → KILLED
    for (FieldDescriptor desc : metadataCache.get(fixedFormatRecordClass)) {
154 3 1. loadThroughSetters : removed conditional - replaced equality check with true → KILLED
2. loadThroughSetters : removed conditional - replaced equality check with false → KILLED
3. loadThroughSetters : negated conditional → KILLED
      if (!desc.isLoadField) continue;
155
156 1 1. loadThroughSetters : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::parseFieldValue → KILLED
      Object value = parseFieldValue(fixedFormatRecordClass, data, desc);
157
158 6 1. loadThroughSetters : removed conditional - replaced equality check with true → KILLED
2. loadThroughSetters : removed conditional - replaced equality check with false → KILLED
3. loadThroughSetters : negated conditional → KILLED
4. loadThroughSetters : removed conditional - replaced equality check with false → KILLED
5. loadThroughSetters : removed conditional - replaced equality check with true → KILLED
6. loadThroughSetters : negated conditional → KILLED
      if (value != null && desc.setterHandle != null) {
159
        try {
160 1 1. loadThroughSetters : removed call to java/lang/invoke/MethodHandle::invoke → KILLED
          desc.setterHandle.invoke(instance, value);
161
        } catch (Throwable e) {
162 2 1. loadThroughSetters : Substituted 0 with 1 → NO_COVERAGE
2. loadThroughSetters : Substituted 3 with 4 → NO_COVERAGE
          throw new FixedFormatException(
163 7 1. loadThroughSetters : removed call to com/ancientprogramming/fixedformat4j/exception/FixedFormatException::<init> → NO_COVERAGE
2. loadThroughSetters : Substituted 1 with 0 → NO_COVERAGE
3. loadThroughSetters : removed call to java/lang/String::format → NO_COVERAGE
4. loadThroughSetters : replaced call to java/lang/String::format with argument → NO_COVERAGE
5. loadThroughSetters : removed call to java/lang/Class::getName → NO_COVERAGE
6. loadThroughSetters : removed call to java/lang/reflect/Method::getName → NO_COVERAGE
7. loadThroughSetters : Substituted 2 with 3 → NO_COVERAGE
              format("could not invoke method %s.%s(%s)", fixedFormatRecordClass.getName(), desc.setter.getName(), desc.datatype), e);
164
        }
165
      }
166
    }
167
168 1 1. loadThroughSetters : replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::loadThroughSetters → KILLED
    return instance;
169
  }
170
171
  /**
172
   * Java {@code record} path: all field values are parsed first, then the instance is created
173
   * in a single canonical-constructor call (records have no setters).
174
   */
175
  private <T> T loadThroughConstructor(Class<T> fixedFormatRecordClass, String data, ConstructorBinding binding) {
176 1 1. loadThroughConstructor : removed call to com/ancientprogramming/fixedformat4j/format/impl/ConstructorBinding::newArgs → NO_COVERAGE
    Object[] args = binding.newArgs();
177
178 1 1. loadThroughConstructor : removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::get → NO_COVERAGE
    for (FieldDescriptor desc : metadataCache.get(fixedFormatRecordClass)) {
179 3 1. loadThroughConstructor : removed conditional - replaced equality check with false → NO_COVERAGE
2. loadThroughConstructor : removed conditional - replaced equality check with true → NO_COVERAGE
3. loadThroughConstructor : negated conditional → NO_COVERAGE
      if (!desc.isLoadField) continue;
180 2 1. loadThroughConstructor : removed call to com/ancientprogramming/fixedformat4j/format/impl/ConstructorBinding::assign → NO_COVERAGE
2. loadThroughConstructor : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::parseFieldValue → NO_COVERAGE
      binding.assign(desc, parseFieldValue(fixedFormatRecordClass, data, desc), args);
181
    }
182
183 4 1. loadThroughConstructor : removed call to com/ancientprogramming/fixedformat4j/format/impl/ConstructorBinding::newInstance → NO_COVERAGE
2. loadThroughConstructor : removed call to java/lang/Class::cast → NO_COVERAGE
3. loadThroughConstructor : replaced call to java/lang/Class::cast with argument → NO_COVERAGE
4. loadThroughConstructor : replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::loadThroughConstructor → NO_COVERAGE
    return fixedFormatRecordClass.cast(binding.newInstance(fixedFormatRecordClass, args));
184
  }
185
186
  private Object parseFieldValue(Class<?> fixedFormatRecordClass, String data, FieldDescriptor desc) {
187
    Object value;
188 3 1. parseFieldValue : removed conditional - replaced equality check with false → KILLED
2. parseFieldValue : negated conditional → KILLED
3. parseFieldValue : removed conditional - replaced equality check with true → KILLED
    if (desc.isRepeating) {
189 1 1. parseFieldValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/RepeatingFieldSupport::read → KILLED
      value = repeatingFieldSupport.read(fixedFormatRecordClass, data, desc);
190
    } else {
191 2 1. parseFieldValue : removed call to com/ancientprogramming/fixedformat4j/format/FixedFormatUtil::fetchData → KILLED
2. parseFieldValue : replaced call to com/ancientprogramming/fixedformat4j/format/FixedFormatUtil::fetchData with argument → KILLED
      String dataToParse = fetchData(data, desc.formatInstructions, desc.context);
192 3 1. parseFieldValue : negated conditional → KILLED
2. parseFieldValue : removed conditional - replaced equality check with false → KILLED
3. parseFieldValue : removed conditional - replaced equality check with true → KILLED
      if (desc.isNestedRecord) {
193 1 1. parseFieldValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::load → KILLED
        value = load(desc.datatype, dataToParse);
194 4 1. parseFieldValue : negated conditional → KILLED
2. parseFieldValue : removed conditional - replaced equality check with false → KILLED
3. parseFieldValue : removed conditional - replaced equality check with true → KILLED
4. parseFieldValue : removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSliceOrValue → KILLED
      } else if (NullSupport.isNullSliceOrValue(dataToParse, desc.formatInstructions)) {
195
        value = null;
196
      } else {
197
        try {
198 1 1. parseFieldValue : removed call to com/ancientprogramming/fixedformat4j/format/FixedFormatter::parse → KILLED
          value = desc.formatter.parse(dataToParse, desc.formatInstructions);
199
        } catch (RuntimeException e) {
200 1 1. parseFieldValue : removed call to com/ancientprogramming/fixedformat4j/format/ParseException::<init> → KILLED
          throw new ParseException(data, dataToParse, fixedFormatRecordClass, desc.target.getter, desc.context, desc.formatInstructions, e);
201
        }
202
      }
203
    }
204
205
    if (LOG.isDebugEnabled()) {
206
      LOG.debug("the loaded data[{}]", value);
207
    }
208 1 1. parseFieldValue : replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::parseFieldValue → KILLED
    return value;
209
  }
210
211
  /**
212
   * {@inheritDoc}
213
   */
214
  public <T> String export(String template, T fixedFormatRecord) {
215 1 1. export : removed call to java/lang/StringBuilder::<init> → KILLED
    StringBuilder result = new StringBuilder(template);
216 2 1. export : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::getAndAssertRecordAnnotation → KILLED
2. export : removed call to java/lang/Object::getClass → KILLED
    Record record = getAndAssertRecordAnnotation(fixedFormatRecord.getClass());
217 2 1. export : removed call to java/lang/Object::getClass → KILLED
2. export : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::validatePatterns → KILLED
    validatePatterns(fixedFormatRecord.getClass());
218
219 2 1. export : removed call to java/lang/Object::getClass → KILLED
2. export : removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::get → KILLED
    List<FieldDescriptor> descriptors = metadataCache.get(fixedFormatRecord.getClass());
220 4 1. export : Replaced integer multiplication with division → SURVIVED
2. export : removed call to java/util/List::size → SURVIVED
3. export : Substituted 2 with 3 → SURVIVED
4. export : removed call to java/util/HashMap::<init> → KILLED
    HashMap<Integer, String> foundData = new HashMap<>(descriptors.size() * 2);
221
222
    for (FieldDescriptor desc : descriptors) {
223 3 1. export : removed conditional - replaced equality check with false → KILLED
2. export : negated conditional → KILLED
3. export : removed conditional - replaced equality check with true → KILLED
      if (desc.isRepeating) {
224 1 1. export : removed call to com/ancientprogramming/fixedformat4j/format/impl/RepeatingFieldSupport::export → KILLED
        repeatingFieldSupport.export(fixedFormatRecord, desc, foundData);
225
        continue;
226
      }
227
228
      Object valueObject;
229
      try {
230 2 1. export : replaced call to java/lang/invoke/MethodHandle::invoke with argument → KILLED
2. export : removed call to java/lang/invoke/MethodHandle::invoke → KILLED
        valueObject = desc.target.getterHandle.invoke(fixedFormatRecord);
231
      } catch (Throwable e) {
232 2 1. export : Substituted 0 with 1 → NO_COVERAGE
2. export : Substituted 3 with 4 → NO_COVERAGE
        throw new FixedFormatException(
233 8 1. export : removed call to java/lang/String::format → NO_COVERAGE
2. export : removed call to java/lang/Object::getClass → NO_COVERAGE
3. export : removed call to java/lang/Class::getName → NO_COVERAGE
4. export : Substituted 2 with 3 → NO_COVERAGE
5. export : removed call to com/ancientprogramming/fixedformat4j/exception/FixedFormatException::<init> → NO_COVERAGE
6. export : removed call to java/lang/reflect/Method::getName → NO_COVERAGE
7. export : Substituted 1 with 0 → NO_COVERAGE
8. export : replaced call to java/lang/String::format with argument → NO_COVERAGE
            format("could not invoke method %s.%s(%s)", fixedFormatRecord.getClass().getName(), desc.target.getter.getName(), desc.datatype), e);
234
      }
235
236
      String formatted;
237 8 1. export : negated conditional → KILLED
2. export : removed conditional - replaced equality check with true → KILLED
3. export : negated conditional → KILLED
4. export : removed conditional - replaced equality check with false → KILLED
5. export : removed call to java/lang/Object::getClass → KILLED
6. export : removed call to java/lang/Class::getAnnotation → KILLED
7. export : removed conditional - replaced equality check with true → KILLED
8. export : removed conditional - replaced equality check with false → KILLED
      if (valueObject != null && valueObject.getClass().getAnnotation(Record.class) != null) {
238 1 1. export : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::export → KILLED
        formatted = export(valueObject);
239 3 1. export : negated conditional → KILLED
2. export : removed conditional - replaced equality check with false → KILLED
3. export : removed conditional - replaced equality check with true → KILLED
      } else if (desc.isNestedRecord) {
240 5 1. export : removed call to java/lang/String::valueOf → KILLED
2. export : removed call to com/ancientprogramming/fixedformat4j/annotation/Field::length → KILLED
3. export : replaced call to java/lang/String::repeat with receiver → KILLED
4. export : removed call to java/lang/String::repeat → KILLED
5. export : removed call to com/ancientprogramming/fixedformat4j/annotation/Field::paddingChar → KILLED
        formatted = String.valueOf(desc.fieldAnnotation.paddingChar()).repeat(desc.fieldAnnotation.length());
241 7 1. export : removed conditional - replaced equality check with true → KILLED
2. export : removed conditional - replaced equality check with false → KILLED
3. export : negated conditional → KILLED
4. export : removed conditional - replaced equality check with true → KILLED
5. export : removed conditional - replaced equality check with false → KILLED
6. export : negated conditional → KILLED
7. export : removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullCharActive → KILLED
      } else if (valueObject == null && NullSupport.isNullCharActive(desc.formatInstructions)) {
242 5 1. export : removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullChar → KILLED
2. export : removed call to java/lang/String::valueOf → KILLED
3. export : removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getLength → KILLED
4. export : replaced call to java/lang/String::repeat with receiver → KILLED
5. export : removed call to java/lang/String::repeat → KILLED
        formatted = String.valueOf(desc.formatInstructions.getNullChar()).repeat(desc.formatInstructions.getLength());
243 7 1. export : removed conditional - replaced equality check with true → KILLED
2. export : removed conditional - replaced equality check with false → KILLED
3. export : negated conditional → KILLED
4. export : removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullValueActive → KILLED
5. export : removed conditional - replaced equality check with false → KILLED
6. export : removed conditional - replaced equality check with true → KILLED
7. export : negated conditional → KILLED
      } else if (valueObject == null && NullSupport.isNullValueActive(desc.formatInstructions)) {
244 1 1. export : removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullValue → KILLED
        formatted = desc.formatInstructions.getNullValue();
245
      } else {
246 1 1. export : removed call to com/ancientprogramming/fixedformat4j/format/FixedFormatter::format → KILLED
        formatted = ((FixedFormatter<Object>) desc.formatter).format(valueObject, desc.formatInstructions);
247
      }
248
249
      if (LOG.isDebugEnabled()) {
250
        LOG.debug(format("exported %s ", formatted));
251
      }
252 4 1. export : removed call to java/lang/Integer::valueOf → KILLED
2. export : removed call to java/util/HashMap::put → KILLED
3. export : replaced call to java/util/HashMap::put with argument → KILLED
4. export : removed call to com/ancientprogramming/fixedformat4j/annotation/Field::offset → KILLED
      foundData.put(desc.fieldAnnotation.offset(), formatted);
253
    }
254
255 1 1. export : removed call to java/util/HashMap::entrySet → KILLED
    for (Map.Entry<Integer, String> entry : foundData.entrySet()) {
256 5 1. export : removed call to java/util/Map$Entry::getValue → KILLED
2. export : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::appendData → KILLED
3. export : removed call to com/ancientprogramming/fixedformat4j/annotation/Record::paddingChar → KILLED
4. export : removed call to java/util/Map$Entry::getKey → KILLED
5. export : removed call to java/lang/Integer::intValue → KILLED
      appendData(result, record.paddingChar(), entry.getKey(), entry.getValue());
257
    }
258
259 5 1. export : Substituted -1 with 0 → SURVIVED
2. export : removed call to com/ancientprogramming/fixedformat4j/annotation/Record::length → SURVIVED
3. export : removed conditional - replaced equality check with true → SURVIVED
4. export : removed conditional - replaced equality check with false → KILLED
5. export : negated conditional → KILLED
    if (record.length() != -1) {
260 6 1. export : removed call to java/lang/StringBuilder::length → TIMED_OUT
2. export : negated conditional → TIMED_OUT
3. export : removed conditional - replaced comparison check with true → TIMED_OUT
4. export : removed call to com/ancientprogramming/fixedformat4j/annotation/Record::length → KILLED
5. export : changed conditional boundary → KILLED
6. export : removed conditional - replaced comparison check with false → KILLED
      while (result.length() < record.length()) {
261 3 1. export : removed call to java/lang/StringBuilder::append → TIMED_OUT
2. export : replaced call to java/lang/StringBuilder::append with receiver → TIMED_OUT
3. export : removed call to com/ancientprogramming/fixedformat4j/annotation/Record::paddingChar → KILLED
        result.append(record.paddingChar());
262
      }
263
    }
264 2 1. export : removed call to java/lang/StringBuilder::toString → KILLED
2. export : replaced return value with "" for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::export → KILLED
    return result.toString();
265
  }
266
267
  /**
268
   * {@inheritDoc}
269
   */
270
  public <T> String export(T fixedFormatRecord) {
271 3 1. export : replaced return value with "" for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::export → KILLED
2. export : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::export → KILLED
3. export : replaced call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::export with argument → KILLED
    return export("", fixedFormatRecord);
272
  }
273
274
  private void validatePatterns(Class<?> recordClass) {
275 1 1. validatePatterns : removed call to java/lang/ClassValue::get → KILLED
    validatedClasses.get(recordClass);
276
  }
277
278
  /**
279
   * {@inheritDoc}
280
   */
281
  public List<FieldInfo> introspect(Class<?> clazz) {
282 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::getAndAssertRecordAnnotation → KILLED
    getAndAssertRecordAnnotation(clazz);
283 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::validatePatterns → KILLED
    validatePatterns(clazz);
284
285 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/format/impl/JavaRecordSupport::isJavaRecord → SURVIVED
    boolean isJavaRecord = JavaRecordSupport.isJavaRecord(clazz);
286 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/format/impl/AnnotationScanner::<init> → KILLED
    AnnotationScanner scanner = new AnnotationScanner();
287 1 1. introspect : removed call to java/util/ArrayList::<init> → KILLED
    List<FieldInfo> result = new java.util.ArrayList<>();
288 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::get → KILLED
    for (FieldDescriptor desc : metadataCache.get(clazz)) {
289 1 1. introspect : removed call to java/util/List::add → KILLED
      result.add(new FieldInfo(
290 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::propertyName → KILLED
          propertyName(desc, isJavaRecord, scanner),
291 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/annotation/Field::offset → KILLED
          desc.fieldAnnotation.offset(),
292 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/annotation/Field::length → KILLED
          desc.fieldAnnotation.length(),
293
          desc.datatype,
294 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getAlignment → KILLED
          desc.formatInstructions.getAlignment(),
295 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/annotation/Field::paddingChar → KILLED
          desc.fieldAnnotation.paddingChar(),
296 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/annotation/Field::nullChar → KILLED
          desc.fieldAnnotation.nullChar(),
297 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/annotation/Field::nullValue → KILLED
          desc.fieldAnnotation.nullValue(),
298 1 1. introspect : removed call to com/ancientprogramming/fixedformat4j/annotation/Field::formatter → KILLED
          desc.fieldAnnotation.formatter(),
299 2 1. introspect : removed call to com/ancientprogramming/fixedformat4j/format/FieldInfo::<init> → KILLED
2. introspect : removed call to com/ancientprogramming/fixedformat4j/annotation/Field::count → KILLED
          desc.fieldAnnotation.count(),
300
          desc.isNestedRecord));
301
    }
302 2 1. introspect : removed call to java/util/Comparator::comparingInt → KILLED
2. introspect : removed call to java/util/List::sort → KILLED
    result.sort(java.util.Comparator.comparingInt(FieldInfo::getOffset));
303 2 1. introspect : replaced return value with Collections.emptyList for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::introspect → KILLED
2. introspect : removed call to java/util/List::copyOf → KILLED
    return List.copyOf(result);
304
  }
305
306
  private String propertyName(FieldDescriptor desc, boolean isJavaRecord, AnnotationScanner scanner) {
307 1 1. propertyName : removed call to java/lang/reflect/Method::getName → KILLED
    String getterName = desc.target.getter.getName();
308 3 1. propertyName : removed conditional - replaced equality check with false → SURVIVED
2. propertyName : negated conditional → KILLED
3. propertyName : removed conditional - replaced equality check with true → KILLED
    if (isJavaRecord) {
309 1 1. propertyName : replaced return value with "" for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::propertyName → NO_COVERAGE
      return getterName;
310
    }
311 2 1. propertyName : removed call to com/ancientprogramming/fixedformat4j/format/impl/AnnotationScanner::stripMethodPrefix → KILLED
2. propertyName : replaced call to com/ancientprogramming/fixedformat4j/format/impl/AnnotationScanner::stripMethodPrefix with argument → KILLED
    String stripped = scanner.stripMethodPrefix(getterName);
312 8 1. propertyName : replaced return value with "" for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::propertyName → KILLED
2. propertyName : replaced call to java/lang/Character::toLowerCase with argument → KILLED
3. propertyName : Substituted 0 with 1 → KILLED
4. propertyName : removed call to java/lang/Character::toLowerCase → KILLED
5. propertyName : Substituted 1 with 0 → KILLED
6. propertyName : removed call to java/lang/String::charAt → KILLED
7. propertyName : replaced call to java/lang/String::substring with receiver → KILLED
8. propertyName : removed call to java/lang/String::substring → KILLED
    return Character.toLowerCase(stripped.charAt(0)) + stripped.substring(1);
313
  }
314
315
  private static void appendData(StringBuilder result, char paddingChar, int offset, String data) {
316 2 1. appendData : Substituted 1 with 0 → KILLED
2. appendData : Replaced integer subtraction with addition → KILLED
    int zeroBasedOffset = offset - 1;
317 2 1. appendData : Replaced integer addition with subtraction → KILLED
2. appendData : removed call to java/lang/String::length → KILLED
    int end = zeroBasedOffset + data.length();
318 5 1. appendData : negated conditional → TIMED_OUT
2. appendData : removed call to java/lang/StringBuilder::length → KILLED
3. appendData : removed conditional - replaced comparison check with false → KILLED
4. appendData : changed conditional boundary → KILLED
5. appendData : removed conditional - replaced comparison check with true → KILLED
    while (result.length() < end) {
319 2 1. appendData : removed call to java/lang/StringBuilder::append → TIMED_OUT
2. appendData : replaced call to java/lang/StringBuilder::append with receiver → TIMED_OUT
      result.append(paddingChar);
320
    }
321 2 1. appendData : removed call to java/lang/StringBuilder::replace → KILLED
2. appendData : replaced call to java/lang/StringBuilder::replace with receiver → KILLED
    result.replace(zeroBasedOffset, end, data);
322
  }
323
324
  private <T> Record getAndAssertRecordAnnotation(Class<T> fixedFormatRecordClass) {
325 1 1. getAndAssertRecordAnnotation : removed call to java/lang/Class::getAnnotation → KILLED
    Record recordAnno = fixedFormatRecordClass.getAnnotation(Record.class);
326 3 1. getAndAssertRecordAnnotation : removed conditional - replaced equality check with false → KILLED
2. getAndAssertRecordAnnotation : removed conditional - replaced equality check with true → KILLED
3. getAndAssertRecordAnnotation : negated conditional → KILLED
    if (recordAnno == null) {
327 6 1. getAndAssertRecordAnnotation : replaced call to java/lang/String::format with argument → KILLED
2. getAndAssertRecordAnnotation : removed call to java/lang/Class::getName → KILLED
3. getAndAssertRecordAnnotation : removed call to com/ancientprogramming/fixedformat4j/exception/FixedFormatException::<init> → KILLED
4. getAndAssertRecordAnnotation : removed call to java/lang/String::format → KILLED
5. getAndAssertRecordAnnotation : Substituted 1 with 0 → KILLED
6. getAndAssertRecordAnnotation : Substituted 0 with 1 → KILLED
      throw new FixedFormatException(format("%s has to be marked with the record annotation to be loaded", fixedFormatRecordClass.getName()));
328
    }
329 1 1. getAndAssertRecordAnnotation : replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::getAndAssertRecordAnnotation → KILLED
    return recordAnno;
330
  }
331
}

Mutations

49

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

53

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:registerType_customUnknownType_exportWorks()]
removed conditional - replaced equality check with true → KILLED

2.2
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:registerType_customUnknownType_exportWorks()]
negated conditional → KILLED

3.3
Location : <init>
Killed by : none
removed call to java/util/Map::isEmpty → SURVIVED
Covering tests

4.4
Location : <init>
Killed by : none
removed conditional - replaced equality check with false → SURVIVED Covering tests

55

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

2.2
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:registerType_customUnknownType_exportWorks()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::<init> → KILLED

65

1.1
Location : create
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoadNonRecordAnnotatedClass()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::<init> → KILLED

2.2
Location : create
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoadNonRecordAnnotatedClass()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::create → KILLED

75

1.1
Location : builder
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:builder_returnsNonNull()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::builder → KILLED

2.2
Location : builder
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:builder_returnsNonNull()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$Builder::<init> → KILLED

85

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

2.2
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:registerType_isFluentReturnsSameBuilder()]
removed call to java/util/LinkedHashMap::<init> → KILLED

99

1.1
Location : registerType
Killed by : none
replaced call to java/util/Objects::requireNonNull with argument → SURVIVED
Covering tests

2.2
Location : registerType
Killed by : none
removed call to java/util/Objects::requireNonNull → SURVIVED Covering tests

100

1.1
Location : registerType
Killed by : none
removed call to java/util/Objects::requireNonNull → SURVIVED
Covering tests

2.2
Location : registerType
Killed by : none
replaced call to java/util/Objects::requireNonNull with argument → SURVIVED Covering tests

101

1.1
Location : registerType
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:registerType_customUnknownType_exportWorks()]
replaced call to java/util/Map::put with argument → KILLED

2.2
Location : registerType
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:registerType_customUnknownType_exportWorks()]
removed call to java/util/Map::put → KILLED

102

1.1
Location : registerType
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:registerType_isFluentReturnsSameBuilder()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$Builder::registerType → KILLED

111

1.1
Location : build
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:build_withNoRegistrations_functionalManagerForBuiltInTypes()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::<init> → KILLED

2.2
Location : build
Killed by : none
replaced call to java/util/Collections::unmodifiableMap with argument → SURVIVED
Covering tests

3.3
Location : build
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:build_withNoRegistrations_functionalManagerForBuiltInTypes()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$Builder::build → KILLED

4.4
Location : build
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:registerTypeTwice_sameFormatter_isIdempotentNoException()]
removed call to java/util/Collections::unmodifiableMap → KILLED

5.5
Location : build
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:registerTypeTwice_sameFormatter_isIdempotentNoException()]
removed call to java/util/LinkedHashMap::<init> → KILLED

115

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

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

3.3
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:build_withNoRegistrations_functionalManagerForBuiltInTypes()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$1::<init> → KILLED

4.4
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testInvalidLocalDatePatternOnLoadThrowsFixedFormatException()]
Removed assignment to member variable validatedClasses → KILLED

5.5
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testInvalidLocalDatePatternOnLoadThrowsFixedFormatException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$1::<init> → KILLED

118

1.1
Location : computeValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testInvalidLocalDatePatternOnLoadThrowsFixedFormatException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::get → KILLED

120

1.1
Location : computeValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testInvalidDatePatternOnExportThrowsFixedFormatException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateFieldPattern → KILLED

121

1.1
Location : computeValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue67EnumSupport.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue67EnumSupport]/[method:validation_enumNameTooLongForField_throwsException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateEnumFieldLength → KILLED

122

1.1
Location : computeValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestNullCharPrimitiveValidation.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestNullCharPrimitiveValidation]/[method:export_nullCharOnIntField_throwsFixedFormatException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateFieldNullChar → KILLED

123

1.1
Location : computeValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue130NullValue]/[method:nullValueCombinedWithNullChar_isRejected()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateNullValue → KILLED

124

1.1
Location : computeValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue97RestOfLine.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue97RestOfLine]/[method:validate_restOfLine_nonStringType_throwsFixedFormatException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateRestOfLineField → KILLED

126

1.1
Location : computeValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue97RestOfLine.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue97RestOfLine]/[method:validate_restOfLine_multipleRestOfLineFields_throwsFixedFormatException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateRestOfLineIsLastField → KILLED

127

1.1
Location : computeValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue97RestOfLine.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue97RestOfLine]/[method:validate_restOfLine_withExplicitRecordLength_throwsFixedFormatException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FieldValidator::doValidateRestOfLineRecordLength → KILLED

128

1.1
Location : computeValue
Killed by : none
replaced Boolean return with False for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl$1::computeValue → SURVIVED
Covering tests

133

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

2.2
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
Removed assignment to member variable recordInstantiator → KILLED

3.3
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/RecordInstantiator::<init> → KILLED

4.4
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:build_withNoRegistrations_functionalManagerForBuiltInTypes()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/RecordInstantiator::<init> → KILLED

134

1.1
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplBuilder]/[method:builderManager_repeatingFieldCustomType_exportWorks()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/RepeatingFieldSupport::<init> → KILLED

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

3.3
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_repeatingField_delegatesToRepeatingFieldSupport()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/RepeatingFieldSupport::<init> → KILLED

4.4
Location : <init>
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_repeatingField_delegatesToRepeatingFieldSupport()]
Removed assignment to member variable repeatingFieldSupport → KILLED

140

1.1
Location : load
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoadNonRecordAnnotatedClass()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::getAndAssertRecordAnnotation → KILLED

141

1.1
Location : load
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue97RestOfLine.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue97RestOfLine]/[method:validate_restOfLine_nonStringType_throwsFixedFormatException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::validatePatterns → KILLED

143

1.1
Location : load
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::constructorBinding → SURVIVED
Covering tests

144

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

2.2
Location : load
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
removed conditional - replaced equality check with true → KILLED

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

145

1.1
Location : load
Killed by : none
replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::load → NO_COVERAGE

2.2
Location : load
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::loadThroughConstructor → NO_COVERAGE

147

1.1
Location : load
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::load → KILLED

2.2
Location : load
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::loadThroughSetters → KILLED

151

1.1
Location : loadThroughSetters
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/RecordInstantiator::instantiate → KILLED

153

1.1
Location : loadThroughSetters
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::get → KILLED

154

1.1
Location : loadThroughSetters
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
removed conditional - replaced equality check with true → KILLED

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

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

156

1.1
Location : loadThroughSetters
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::parseFieldValue → KILLED

158

1.1
Location : loadThroughSetters
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_readOnlyField_doesNotThrow()]
removed conditional - replaced equality check with true → KILLED

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

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

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

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

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

160

1.1
Location : loadThroughSetters
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
removed call to java/lang/invoke/MethodHandle::invoke → KILLED

162

1.1
Location : loadThroughSetters
Killed by : none
Substituted 0 with 1 → NO_COVERAGE

2.2
Location : loadThroughSetters
Killed by : none
Substituted 3 with 4 → NO_COVERAGE

163

1.1
Location : loadThroughSetters
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/exception/FixedFormatException::<init> → NO_COVERAGE

2.2
Location : loadThroughSetters
Killed by : none
Substituted 1 with 0 → NO_COVERAGE

3.3
Location : loadThroughSetters
Killed by : none
removed call to java/lang/String::format → NO_COVERAGE

4.4
Location : loadThroughSetters
Killed by : none
replaced call to java/lang/String::format with argument → NO_COVERAGE

5.5
Location : loadThroughSetters
Killed by : none
removed call to java/lang/Class::getName → NO_COVERAGE

6.6
Location : loadThroughSetters
Killed by : none
removed call to java/lang/reflect/Method::getName → NO_COVERAGE

7.7
Location : loadThroughSetters
Killed by : none
Substituted 2 with 3 → NO_COVERAGE

168

1.1
Location : loadThroughSetters
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::loadThroughSetters → KILLED

176

1.1
Location : loadThroughConstructor
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/format/impl/ConstructorBinding::newArgs → NO_COVERAGE

178

1.1
Location : loadThroughConstructor
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::get → NO_COVERAGE

179

1.1
Location : loadThroughConstructor
Killed by : none
removed conditional - replaced equality check with false → NO_COVERAGE

2.2
Location : loadThroughConstructor
Killed by : none
removed conditional - replaced equality check with true → NO_COVERAGE

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

180

1.1
Location : loadThroughConstructor
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/format/impl/ConstructorBinding::assign → NO_COVERAGE

2.2
Location : loadThroughConstructor
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::parseFieldValue → NO_COVERAGE

183

1.1
Location : loadThroughConstructor
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/format/impl/ConstructorBinding::newInstance → NO_COVERAGE

2.2
Location : loadThroughConstructor
Killed by : none
removed call to java/lang/Class::cast → NO_COVERAGE

3.3
Location : loadThroughConstructor
Killed by : none
replaced call to java/lang/Class::cast with argument → NO_COVERAGE

4.4
Location : loadThroughConstructor
Killed by : none
replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::loadThroughConstructor → NO_COVERAGE

188

1.1
Location : parseFieldValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue29Repeating.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue29Repeating]/[method:loadBothElementsAllNullChar_returnsTwoNulls()]
removed conditional - replaced equality check with false → KILLED

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

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

189

1.1
Location : parseFieldValue
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue29Repeating.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue29Repeating]/[method:loadBothElementsAllNullChar_returnsTwoNulls()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/RepeatingFieldSupport::read → KILLED

191

1.1
Location : parseFieldValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
removed call to com/ancientprogramming/fixedformat4j/format/FixedFormatUtil::fetchData → KILLED

2.2
Location : parseFieldValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLocalDateNullRoundTrip()]
replaced call to com/ancientprogramming/fixedformat4j/format/FixedFormatUtil::fetchData with argument → KILLED

192

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

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

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

193

1.1
Location : parseFieldValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_nestedRecord_roundTrip()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::load → KILLED

194

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

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

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

4.4
Location : parseFieldValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_nullCharAllMatch_fieldIsNull()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullSliceOrValue → KILLED

198

1.1
Location : parseFieldValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
removed call to com/ancientprogramming/fixedformat4j/format/FixedFormatter::parse → KILLED

200

1.1
Location : parseFieldValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testParseFail()]
removed call to com/ancientprogramming/fixedformat4j/format/ParseException::<init> → KILLED

208

1.1
Location : parseFieldValue
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testImportAnnotatedNestedClass()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::parseFieldValue → KILLED

215

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/lang/StringBuilder::<init> → KILLED

216

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::getAndAssertRecordAnnotation → KILLED

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testInvalidDatePatternOnExportThrowsFixedFormatException()]
removed call to java/lang/Object::getClass → KILLED

217

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testInvalidDatePatternOnExportThrowsFixedFormatException()]
removed call to java/lang/Object::getClass → KILLED

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testInvalidDatePatternOnExportThrowsFixedFormatException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::validatePatterns → KILLED

219

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/lang/Object::getClass → KILLED

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::get → KILLED

220

1.1
Location : export
Killed by : none
Replaced integer multiplication with division → SURVIVED
Covering tests

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/util/HashMap::<init> → KILLED

3.3
Location : export
Killed by : none
removed call to java/util/List::size → SURVIVED Covering tests

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

223

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

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

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

224

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_repeatingField_delegatesToRepeatingFieldSupport()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/RepeatingFieldSupport::export → KILLED

230

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
replaced call to java/lang/invoke/MethodHandle::invoke with argument → KILLED

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testAppendData_exportWithTemplate_fieldsOverwriteTemplate()]
removed call to java/lang/invoke/MethodHandle::invoke → KILLED

232

1.1
Location : export
Killed by : none
Substituted 0 with 1 → NO_COVERAGE

2.2
Location : export
Killed by : none
Substituted 3 with 4 → NO_COVERAGE

233

1.1
Location : export
Killed by : none
removed call to java/lang/String::format → NO_COVERAGE

2.2
Location : export
Killed by : none
removed call to java/lang/Object::getClass → NO_COVERAGE

3.3
Location : export
Killed by : none
removed call to java/lang/Class::getName → NO_COVERAGE

4.4
Location : export
Killed by : none
Substituted 2 with 3 → NO_COVERAGE

5.5
Location : export
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/exception/FixedFormatException::<init> → NO_COVERAGE

6.6
Location : export
Killed by : none
removed call to java/lang/reflect/Method::getName → NO_COVERAGE

7.7
Location : export
Killed by : none
Substituted 1 with 0 → NO_COVERAGE

8.8
Location : export
Killed by : none
replaced call to java/lang/String::format with argument → NO_COVERAGE

237

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

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testAppendData_exportWithTemplate_fieldsOverwriteTemplate()]
removed conditional - replaced equality check with true → KILLED

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

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

5.5
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testAppendData_exportWithTemplate_fieldsOverwriteTemplate()]
removed call to java/lang/Object::getClass → KILLED

6.6
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_nestedRecord_roundTrip()]
removed call to java/lang/Class::getAnnotation → KILLED

7.7
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed conditional - replaced equality check with true → KILLED

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

238

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoad_nestedRecord_roundTrip()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::export → KILLED

239

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

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

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

240

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/lang/String::valueOf → KILLED

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Field::length → KILLED

3.3
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
replaced call to java/lang/String::repeat with receiver → KILLED

4.4
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/lang/String::repeat → KILLED

5.5
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Field::paddingChar → KILLED

241

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLocalDateNullRoundTrip()]
removed conditional - replaced equality check with true → KILLED

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

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

4.4
Location : export
Killed by : com.ancientprogramming.fixedformat4j.issues.TestIssue29.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.issues.TestIssue29]/[method:exportEmptyStringField_emitsPaddingChar()]
removed conditional - replaced equality check with true → KILLED

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

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

7.7
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nullValue_nullCharActive_outputsNullChar()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/NullSupport::isNullCharActive → KILLED

242

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nullValue_nullCharActive_outputsNullChar()]
removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getNullChar → KILLED

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nullValue_nullCharActive_outputsNullChar()]
removed call to java/lang/String::valueOf → KILLED

3.3
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nullValue_nullCharActive_outputsNullChar()]
removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getLength → KILLED

4.4
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nullValue_nullCharActive_outputsNullChar()]
replaced call to java/lang/String::repeat with receiver → KILLED

5.5
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nullValue_nullCharActive_outputsNullChar()]
removed call to java/lang/String::repeat → KILLED

243

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

2.2
Location : export
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

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

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

5.5
Location : export
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

6.6
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLocalDateNullRoundTrip()]
removed conditional - replaced equality check with true → KILLED

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

244

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

246

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testAppendData_exportWithTemplate_fieldsOverwriteTemplate()]
removed call to com/ancientprogramming/fixedformat4j/format/FixedFormatter::format → KILLED

252

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/lang/Integer::valueOf → KILLED

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/util/HashMap::put → KILLED

3.3
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
replaced call to java/util/HashMap::put with argument → KILLED

4.4
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Field::offset → KILLED

255

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/util/HashMap::entrySet → KILLED

256

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/util/Map$Entry::getValue → KILLED

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::appendData → KILLED

3.3
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExportMultibleFieldRecordObject()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Record::paddingChar → KILLED

4.4
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/util/Map$Entry::getKey → KILLED

5.5
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/lang/Integer::intValue → KILLED

259

1.1
Location : export
Killed by : none
Substituted -1 with 0 → SURVIVED
Covering tests

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

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

4.4
Location : export
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/annotation/Record::length → SURVIVED Covering tests

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

260

1.1
Location : export
Killed by : none
removed call to java/lang/StringBuilder::length → TIMED_OUT

2.2
Location : export
Killed by : none
negated conditional → TIMED_OUT

3.3
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testRecordCustomPaddingChar()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Record::length → KILLED

4.4
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_recordLengthExactBoundary_noPaddingAdded()]
changed conditional boundary → KILLED

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

6.6
Location : export
Killed by : none
removed conditional - replaced comparison check with true → TIMED_OUT

261

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testRecordCustomPaddingChar()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Record::paddingChar → KILLED

2.2
Location : export
Killed by : none
removed call to java/lang/StringBuilder::append → TIMED_OUT

3.3
Location : export
Killed by : none
replaced call to java/lang/StringBuilder::append with receiver → TIMED_OUT

264

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/lang/StringBuilder::toString → KILLED

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
replaced return value with "" for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::export → KILLED

271

1.1
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
replaced return value with "" for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::export → KILLED

2.2
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testInvalidDatePatternOnExportThrowsFixedFormatException()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::export → KILLED

3.3
Location : export
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testInvalidDatePatternOnExportThrowsFixedFormatException()]
replaced call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::export with argument → KILLED

275

1.1
Location : validatePatterns
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testInvalidDatePatternOnExportThrowsFixedFormatException()]
removed call to java/lang/ClassValue::get → KILLED

282

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:nonRecordClassIsRejected()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::getAndAssertRecordAnnotation → KILLED

283

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:invalidConfigurationFailsAtIntrospectTimeAsAPreflightCheck()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::validatePatterns → KILLED

285

1.1
Location : introspect
Killed by : none
removed call to com/ancientprogramming/fixedformat4j/format/impl/JavaRecordSupport::isJavaRecord → SURVIVED
Covering tests

286

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/AnnotationScanner::<init> → KILLED

287

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to java/util/ArrayList::<init> → KILLED

288

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/ClassMetadataCache::get → KILLED

289

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to java/util/List::add → KILLED

290

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::propertyName → KILLED

291

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Field::offset → KILLED

292

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Field::length → KILLED

294

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:defaultsAreReflectedInFieldInfo()]
removed call to com/ancientprogramming/fixedformat4j/format/FormatInstructions::getAlignment → KILLED

295

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:defaultsAreReflectedInFieldInfo()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Field::paddingChar → KILLED

296

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:sentinelsFormatterRepeatCountAndNestedRecordAreExposed()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Field::nullChar → KILLED

297

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:defaultsAreReflectedInFieldInfo()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Field::nullValue → KILLED

298

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:sentinelsFormatterRepeatCountAndNestedRecordAreExposed()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Field::formatter → KILLED

299

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to com/ancientprogramming/fixedformat4j/format/FieldInfo::<init> → KILLED

2.2
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:defaultsAreReflectedInFieldInfo()]
removed call to com/ancientprogramming/fixedformat4j/annotation/Field::count → KILLED

302

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to java/util/Comparator::comparingInt → KILLED

2.2
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to java/util/List::sort → KILLED

303

1.1
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
replaced return value with Collections.emptyList for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::introspect → KILLED

2.2
Location : introspect
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to java/util/List::copyOf → KILLED

307

1.1
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to java/lang/reflect/Method::getName → KILLED

308

1.1
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
negated conditional → KILLED

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

3.3
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed conditional - replaced equality check with true → KILLED

309

1.1
Location : propertyName
Killed by : none
replaced return value with "" for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::propertyName → NO_COVERAGE

311

1.1
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to com/ancientprogramming/fixedformat4j/format/impl/AnnotationScanner::stripMethodPrefix → KILLED

2.2
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
replaced call to com/ancientprogramming/fixedformat4j/format/impl/AnnotationScanner::stripMethodPrefix with argument → KILLED

312

1.1
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
replaced return value with "" for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::propertyName → KILLED

2.2
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
replaced call to java/lang/Character::toLowerCase with argument → KILLED

3.3
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
Substituted 0 with 1 → KILLED

4.4
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to java/lang/Character::toLowerCase → KILLED

5.5
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
Substituted 1 with 0 → KILLED

6.6
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to java/lang/String::charAt → KILLED

7.7
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
replaced call to java/lang/String::substring with receiver → KILLED

8.8
Location : propertyName
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestIntrospection]/[method:exposesPropertyNameOffsetLengthAndDataTypePerField()]
removed call to java/lang/String::substring → KILLED

316

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

2.2
Location : appendData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
Replaced integer subtraction with addition → KILLED

317

1.1
Location : appendData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
Replaced integer addition with subtraction → KILLED

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

318

1.1
Location : appendData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
removed call to java/lang/StringBuilder::length → KILLED

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

3.3
Location : appendData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testExport_nestedRecord_nullValue_outputsPadding()]
changed conditional boundary → KILLED

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

5.5
Location : appendData
Killed by : none
negated conditional → TIMED_OUT

319

1.1
Location : appendData
Killed by : none
removed call to java/lang/StringBuilder::append → TIMED_OUT

2.2
Location : appendData
Killed by : none
replaced call to java/lang/StringBuilder::append with receiver → TIMED_OUT

321

1.1
Location : appendData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testAppendData_exportWithTemplate_fieldsOverwriteTemplate()]
removed call to java/lang/StringBuilder::replace → KILLED

2.2
Location : appendData
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testAppendData_exportWithTemplate_fieldsOverwriteTemplate()]
replaced call to java/lang/StringBuilder::replace with receiver → KILLED

325

1.1
Location : getAndAssertRecordAnnotation
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testAppendData_exportWithTemplate_fieldsOverwriteTemplate()]
removed call to java/lang/Class::getAnnotation → KILLED

326

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

2.2
Location : getAndAssertRecordAnnotation
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testAppendData_exportWithTemplate_fieldsOverwriteTemplate()]
removed conditional - replaced equality check with true → KILLED

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

327

1.1
Location : getAndAssertRecordAnnotation
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplErrors.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplErrors]/[method:export_classWithoutRecordAnnotation_exceptionMessageContainsClassAndRecordAnnotation()]
replaced call to java/lang/String::format with argument → KILLED

2.2
Location : getAndAssertRecordAnnotation
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplErrors.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplErrors]/[method:export_classWithoutRecordAnnotation_exceptionMessageContainsClassAndRecordAnnotation()]
removed call to java/lang/Class::getName → KILLED

3.3
Location : getAndAssertRecordAnnotation
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testLoadNonRecordAnnotatedClass()]
removed call to com/ancientprogramming/fixedformat4j/exception/FixedFormatException::<init> → KILLED

4.4
Location : getAndAssertRecordAnnotation
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplErrors.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImplErrors]/[method:export_classWithoutRecordAnnotation_exceptionMessageContainsClassAndRecordAnnotation()]
removed call to java/lang/String::format → KILLED

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

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

329

1.1
Location : getAndAssertRecordAnnotation
Killed by : com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl.[engine:junit-jupiter]/[class:com.ancientprogramming.fixedformat4j.format.impl.TestFixedFormatManagerImpl]/[method:testAppendData_exportWithTemplate_fieldsOverwriteTemplate()]
replaced return value with null for com/ancientprogramming/fixedformat4j/format/impl/FixedFormatManagerImpl::getAndAssertRecordAnnotation → KILLED

Active mutators

Tests examined


Report generated by PIT 1.23.1 support