RetryProperties.java

1
package org.sanmibuh.framework.resilience;
2
3
import jakarta.validation.constraints.AssertTrue;
4
import jakarta.validation.constraints.Positive;
5
import jakarta.validation.constraints.PositiveOrZero;
6
7
public record RetryProperties(
8
    @PositiveOrZero int maxRetries,
9
    @Positive long initialInterval,
10
    @Positive double multiplier,
11
    @Positive long maxInterval) {
12
13
  @AssertTrue(message = "multiplier must be greater than or equal to 1")
14
  boolean isMultiplierAtLeastOne() {
15 3 1. isMultiplierAtLeastOne : negated conditional → KILLED
2. isMultiplierAtLeastOne : replaced boolean return with true for org/sanmibuh/framework/resilience/RetryProperties::isMultiplierAtLeastOne → KILLED
3. isMultiplierAtLeastOne : changed conditional boundary → KILLED
    return multiplier >= 1;
16
  }
17
18
  @AssertTrue(message = "initialInterval must not exceed maxInterval")
19
  boolean isInitialIntervalWithinMaxInterval() {
20 3 1. isInitialIntervalWithinMaxInterval : negated conditional → KILLED
2. isInitialIntervalWithinMaxInterval : replaced boolean return with true for org/sanmibuh/framework/resilience/RetryProperties::isInitialIntervalWithinMaxInterval → KILLED
3. isInitialIntervalWithinMaxInterval : changed conditional boundary → KILLED
    return initialInterval <= maxInterval;
21
  }
22
}

Mutations

15

1.1
Location : isMultiplierAtLeastOne
Killed by : org.sanmibuh.framework.resilience.RetryPropertiesTest.[engine:junit-jupiter]/[class:org.sanmibuh.framework.resilience.RetryPropertiesTest]/[test-template:should_rejectMultiplier_whenBelowOne(double)]/[test-template-invocation:#2]
negated conditional → KILLED

2.2
Location : isMultiplierAtLeastOne
Killed by : org.sanmibuh.framework.resilience.RetryPropertiesTest.[engine:junit-jupiter]/[class:org.sanmibuh.framework.resilience.RetryPropertiesTest]/[test-template:should_rejectMultiplier_whenBelowOne(double)]/[test-template-invocation:#2]
replaced boolean return with true for org/sanmibuh/framework/resilience/RetryProperties::isMultiplierAtLeastOne → KILLED

3.3
Location : isMultiplierAtLeastOne
Killed by : org.sanmibuh.tedee.lock.infrastructure.TedeeInfrastructureConfigurationTest.[engine:junit-jupiter]/[class:org.sanmibuh.tedee.lock.infrastructure.TedeeInfrastructureConfigurationTest]/[method:should_registerTedeeProperties_whenConfigurationIsLoaded()]
changed conditional boundary → KILLED

20

1.1
Location : isInitialIntervalWithinMaxInterval
Killed by : org.sanmibuh.framework.resilience.RetryPropertiesTest.[engine:junit-jupiter]/[class:org.sanmibuh.framework.resilience.RetryPropertiesTest]/[method:should_rejectInitialInterval_whenExceedingMaximum()]
negated conditional → KILLED

2.2
Location : isInitialIntervalWithinMaxInterval
Killed by : org.sanmibuh.framework.resilience.RetryPropertiesTest.[engine:junit-jupiter]/[class:org.sanmibuh.framework.resilience.RetryPropertiesTest]/[method:should_rejectInitialInterval_whenExceedingMaximum()]
replaced boolean return with true for org/sanmibuh/framework/resilience/RetryProperties::isInitialIntervalWithinMaxInterval → KILLED

3.3
Location : isInitialIntervalWithinMaxInterval
Killed by : org.sanmibuh.tedee.lock.infrastructure.TedeePropertiesTest.[engine:junit-jupiter]/[class:org.sanmibuh.tedee.lock.infrastructure.TedeePropertiesTest]/[test-template:should_startUp_whenRetryValuesAreAtTheirValidBoundary(%5BLjava.lang.String;)]/[test-template-invocation:#3]
changed conditional boundary → KILLED

Active mutators

Tests examined


Report generated by PIT 1.30.0 support