IntRangeUtil { public static int requireNonZero(int val) { if (val == 0) { throw new IllegalArgumentException(val + IS_ZERO); } return val; } private  IntRangeUtil(); static int requirePositive(int val); static int requireNegative(int val); static int requireZero(int val); static int requireNonPositive(int val); static int requireNonNegative(int val); static int requireNonZero(int val); static int requireEquals(int val, int otherVal); static int requireNotEquals(int val, int otherVal); static int requireInRange(int val, int first, int lastExclusive); static int requireInRangeClosed(int val, int first, int lastInclusive); static int requirePositive(int val, Function<String, E> exceptionConstructor); static int requireNegative(int val, Function<String, E> exceptionConstructor); static int requireZero(int val, Function<String, E> exceptionConstructor); static int requireNonPositive(int val, Function<String, E> exceptionConstructor); static int requireNonNegative(int val, Function<String, E> exceptionConstructor); static int requireNonZero(int val, Function<String, E> exceptionConstructor); static int requireEquals(int val, int otherVal, Function<String, E> exceptionConstructor); static int requireNotEquals(int val, int otherVal, Function<String, E> exceptionConstructor); static int requireInRange(int val, int first, int lastExclusive, Function<String, E> exceptionConstructor); static int requireInRangeClosed(int val, int first, int lastInclusive, Function<String, E> exceptionConstructor);  }
@Test void requireNonZero() { testHelper(IS_ZERO.negate(), IntRangeUtil::requireNonZero); }
@Test void testRequireNonZero() { assertEquals(1, IntRangeUtil.requireNonZero(1, RuntimeException::new)); }
@Test void testRequireNonZero2() { assertThrows(RuntimeException.class, () -> IntRangeUtil.requireNonZero(0, RuntimeException::new)); }
@Test void testRequireNonZero3() { assertEquals(-1, IntRangeUtil.requireNonZero(-1, RuntimeException::new)); }