public void test_of_CurveMetadata() {
ConstantNodalCurve test = ConstantNodalCurve.of(METADATA_ENTRIES, XVALUE, YVALUE);
ConstantNodalCurve testRe = ConstantNodalCurve.of(METADATA_ENTRIES, XVALUE, YVALUE);
assertThat(test).isEqualTo(testRe);
assertThat(test.getName()).isEqualTo(CURVE_NAME);
assertThat(test.getParameterCount()).isEqualTo(SIZE);
assertThat(test.getParameter(0)).isEqualTo(YVALUE);
assertThrowsIllegalArg(() -> test.getParameter(1));
assertThat(test.getParameterMetadata(0)).isSameAs(METADATA_ENTRIES.getParameterMetadata().get().get(0));
assertThat(test.withParameter(0, 2d)).isEqualTo(ConstantNodalCurve.of(METADATA_ENTRIES, XVALUE, 2d));
assertThrowsIllegalArg(() -> test.withParameter(1, 2d));
assertThat(test.withPerturbation((i, v, m) -> v - 2d)).isEqualTo(
ConstantNodalCurve.of(METADATA_ENTRIES, XVALUE, YVALUE_BUMPED));
assertThat(test.getMetadata()).isEqualTo(METADATA_ENTRIES);
assertThat(test.getXValues()).isEqualTo(XVALUE_ARRAY);
assertThat(test.getYValues()).isEqualTo(YVALUE_ARRAY);
}