### Question:
DoubleRangeLimitTransform implements ParameterLimitsTransform { @Override public double transform(double x) { ArgChecker.isTrue(x <= _upper && x >= _lower, "parameter out of range"); if (x == _upper) { return TANH_MAX; } else if (x == _lower) { return -TANH_MAX; } return TrigonometricFunctionUtils.atanh((x - _mid) / _scale); } DoubleRangeLimitTransform(double lower, double upper); @Override double inverseTransform(double y); @Override double transform(double x); @Override double inverseTransformGradient(double y); @Override double transformGradient(double x); @Override int hashCode(); @Override boolean equals(Object obj);  }### Answer:
@Test public void testOutOfRange1() { assertThatIllegalArgumentException() .isThrownBy(() -> RANGE_LIMITS.transform(-3)); }
@Test public void testOutOfRange2() { assertThatIllegalArgumentException() .isThrownBy(() -> RANGE_LIMITS.transform(1.01)); }