Skip to content

Commit b8b80e5

Browse files
committed
Add input validation for duration parameters with 1-second minimum requirement
1 parent ed1aeed commit b8b80e5

2 files changed

Lines changed: 6 additions & 6 deletions

File tree

sdk/src/main/java/com/amazonaws/lambda/durable/validation/ParameterValidator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public static void validateDuration(Duration duration, String parameterName) {
3030
}
3131
if (duration.toSeconds() < MIN_DURATION_SECONDS) {
3232
throw new IllegalArgumentException(parameterName + " must be at least " + MIN_DURATION_SECONDS
33-
+ " second, got: " + duration.toSeconds() + " seconds");
33+
+ " second, got: " + duration);
3434
}
3535
}
3636

@@ -44,7 +44,7 @@ public static void validateDuration(Duration duration, String parameterName) {
4444
public static void validateOptionalDuration(Duration duration, String parameterName) {
4545
if (duration != null && duration.toSeconds() < MIN_DURATION_SECONDS) {
4646
throw new IllegalArgumentException(parameterName + " must be at least " + MIN_DURATION_SECONDS
47-
+ " second, got: " + duration.toSeconds() + " seconds");
47+
+ " second, got: " + duration);
4848
}
4949
}
5050

sdk/src/test/java/com/amazonaws/lambda/durable/validation/ParameterValidatorTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ void validateDuration_withZeroDuration_shouldThrow() {
3030
IllegalArgumentException.class,
3131
() -> ParameterValidator.validateDuration(Duration.ofSeconds(0), "testParam"));
3232

33-
assertEquals("testParam must be at least 1 second, got: 0 seconds", exception.getMessage());
33+
assertEquals("testParam must be at least 1 second, got: PT0S", exception.getMessage());
3434
}
3535

3636
@Test
@@ -39,7 +39,7 @@ void validateDuration_withSubSecondDuration_shouldThrow() {
3939
IllegalArgumentException.class,
4040
() -> ParameterValidator.validateDuration(Duration.ofMillis(500), "testParam"));
4141

42-
assertEquals("testParam must be at least 1 second, got: 0 seconds", exception.getMessage());
42+
assertEquals("testParam must be at least 1 second, got: PT0.5S", exception.getMessage());
4343
}
4444

4545
@Test
@@ -48,7 +48,7 @@ void validateDuration_withNegativeDuration_shouldThrow() {
4848
IllegalArgumentException.class,
4949
() -> ParameterValidator.validateDuration(Duration.ofSeconds(-5), "testParam"));
5050

51-
assertEquals("testParam must be at least 1 second, got: -5 seconds", exception.getMessage());
51+
assertEquals("testParam must be at least 1 second, got: PT-5S", exception.getMessage());
5252
}
5353

5454
@Test
@@ -68,7 +68,7 @@ void validateOptionalDuration_withInvalidDuration_shouldThrow() {
6868
IllegalArgumentException.class,
6969
() -> ParameterValidator.validateOptionalDuration(Duration.ofMillis(999), "testParam"));
7070

71-
assertEquals("testParam must be at least 1 second, got: 0 seconds", exception.getMessage());
71+
assertEquals("testParam must be at least 1 second, got: PT0.999S", exception.getMessage());
7272
}
7373

7474
@Test

0 commit comments

Comments
 (0)