DoubleRangeUtil { public static double requireEquals(double val, double otherVal) { if (Double.compare(val, otherVal) != 0) { throw new IllegalArgumentException(val + IS_NOT_EQUAL_TO + otherVal); } return val; } private  DoubleRangeUtil(); static double requirePositive(double val); static double requireNegative(double val); static double requireZero(double val); static double requireNonPositive(double val); static double requireNonNegative(double val); static double requireNonZero(double val); static double requireEquals(double val, double otherVal); static double requireNotEquals(double val, double otherVal); static double requireInRange(double val, double first, double lastExclusive); static double requireInRangeClosed(double val, double first, double lastInclusive); static double requirePositive(double val, Function<String, E> exceptionConstructor); static double requireNegative(double val, Function<String, E> exceptionConstructor); static double requireZero(double val, Function<String, E> exceptionConstructor); static double requireNonPositive(double val, Function<String, E> exceptionConstructor); static double requireNonNegative(double val, Function<String, E> exceptionConstructor); static double requireNonZero(double val, Function<String, E> exceptionConstructor); static double requireEquals(double val, double otherVal,
                  Function<String, E> exceptionConstructor); static double requireNotEquals(double val, double otherVal,
                     Function<String, E> exceptionConstructor); static double requireInRange(double val, double first, double lastExclusive,
                   Function<String, E> exceptionConstructor); static double requireInRangeClosed(double val, double first, double lastInclusive,
                         Function<String, E> exceptionConstructor);  }
@Test void requireEquals() { assertEquals(0.0, DoubleRangeUtil.requireEquals(0.0, 0.0)); }
@Test void requireEquals2() { assertThrows(IllegalArgumentException.class, () -> DoubleRangeUtil.requireEquals(0.0,-1.0)); }
@Test void requireEquals3() { assertThrows(IllegalArgumentException.class, () -> DoubleRangeUtil.requireEquals(0.0,1.0)); }
@Test void requireEquals4() { assertEquals(1.0, DoubleRangeUtil.requireEquals(1.0, 1.0)); }
@Test void requireEquals5() { assertThrows(IllegalArgumentException.class, () -> DoubleRangeUtil.requireEquals(1.0,0.0)); }
@Test void requireEquals6() { assertThrows(IllegalArgumentException.class, () -> DoubleRangeUtil.requireEquals(1.0,-1.0)); }
@Test void requireEquals7() { assertEquals(-1.0, DoubleRangeUtil.requireEquals(-1.0, -1.0)); }
@Test void requireEquals8() { assertThrows(IllegalArgumentException.class, () -> DoubleRangeUtil.requireEquals(-1.0,0.0)); }
@Test void requireEquals9() { assertThrows(IllegalArgumentException.class, () -> DoubleRangeUtil.requireEquals(-1.0,1.0)); }
@Test void testRequireEquals() { assertEquals(0.0, DoubleRangeUtil.requireEquals(0.0, 0.0, RuntimeException::new)); }
@Test void testRequireEquals2() { assertThrows(RuntimeException.class, () -> DoubleRangeUtil.requireEquals(0.0,-1.0, RuntimeException::new)); }
@Test void testRequireEquals3() { assertThrows(RuntimeException.class, () -> DoubleRangeUtil.requireEquals(0.0,1.0, RuntimeException::new)); }
@Test void testRequireEquals4() { assertEquals(1.0, DoubleRangeUtil.requireEquals(1.0, 1.0, RuntimeException::new)); }
@Test void testRequireEquals5() { assertThrows(RuntimeException.class, () -> DoubleRangeUtil.requireEquals(1.0,0.0, RuntimeException::new)); }
@Test void testRequireEquals6() { assertThrows(RuntimeException.class, () -> DoubleRangeUtil.requireEquals(1.0,-1.0, RuntimeException::new)); }
@Test void testRequireEquals7() { assertEquals(-1.0, DoubleRangeUtil.requireEquals(-1.0, -1.0, RuntimeException::new)); }
@Test void testRequireEquals8() { assertThrows(RuntimeException.class, () -> DoubleRangeUtil.requireEquals(-1.0,0.0, RuntimeException::new)); }
@Test void testRequireEquals9() { assertThrows(RuntimeException.class, () -> DoubleRangeUtil.requireEquals(-1.0,1.0, RuntimeException::new)); }