public static <T extends Comparable> RangeValidator<T> min(T min) { return new RangeValidator<>(min, null, true); }
@Test void testMin() { final RangeValidator<Integer> validator = RangeValidator.min(1); assertThatThrownBy(() -> validator.assertValid(0)).isInstanceOf(IllegalArgumentException.class); validator.assertValid(1); validator.assertValid(2); }
@Test void testMax() { final RangeValidator<Integer> validator = RangeValidator.max(3); validator.assertValid(1); validator.assertValid(2); validator.assertValid(3); assertThatThrownBy(() -> validator.assertValid(4)).isInstanceOf(IllegalArgumentException.class); }
@Test void testRange() { final RangeValidator<Integer> validator = RangeValidator.isInRange(1, 3); assertThatThrownBy(() -> validator.assertValid(0)).isInstanceOf(IllegalArgumentException.class); validator.assertValid(1); validator.assertValid(2); validator.assertValid(3); assertThatThrownBy(() -> validator.assertValid(4)).isInstanceOf(IllegalArgumentException.class); }
@Test void testNotInRange() { final RangeValidator<Integer> validator = RangeValidator.isNotInRange(1, 3); validator.assertValid(0); assertThatThrownBy(() -> validator.assertValid(1)).isInstanceOf(IllegalArgumentException.class); assertThatThrownBy(() -> validator.assertValid(2)).isInstanceOf(IllegalArgumentException.class); assertThatThrownBy(() -> validator.assertValid(3)).isInstanceOf(IllegalArgumentException.class); validator.assertValid(4); }
@Test void testTimeDuration() { final RangeValidator<TimeDuration> validator = RangeValidator.min(TimeDuration.of("1s")); assertThatThrownBy(() -> validator.assertValid(TimeDuration.of("0s"))).isInstanceOf(IllegalArgumentException.class); validator.assertValid(TimeDuration.of("1s")); validator.assertValid(TimeDuration.of("2s")); } }
public static <T extends Comparable> RangeValidator<T> max(T max) { return new RangeValidator<>(null, max, true); }
public static <T extends Comparable> RangeValidator<T> isInRange(T min, T max) { return new RangeValidator<>(min, max, true); }
public static <T extends Comparable> RangeValidator<T> isNotInRange(T min, T max) { return new RangeValidator<>(min, max, false); }