public virtual void test_of_noCurveMetadata()
        {
            ConstantNodalCurve test = ConstantNodalCurve.of(METADATA_NOPARAM, XVALUE, YVALUE);

            assertThat(test.Name).isEqualTo(CURVE_NAME);
            assertThat(test.ParameterCount).isEqualTo(SIZE);
            assertThat(test.getParameter(0)).isEqualTo(YVALUE);
            assertThat(test.getParameterMetadata(0)).isEqualTo(SimpleCurveParameterMetadata.of(ValueType.YEAR_FRACTION, XVALUE));
        }
        //-------------------------------------------------------------------------
        public virtual 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.Name).isEqualTo(CURVE_NAME);
            assertThat(test.ParameterCount).isEqualTo(SIZE);
            assertThat(test.getParameter(0)).isEqualTo(YVALUE);
            assertThrowsIllegalArg(() => test.getParameter(1));
            assertThat(test.getParameterMetadata(0)).isSameAs(METADATA_ENTRIES.ParameterMetadata.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.Metadata).isEqualTo(METADATA_ENTRIES);
            assertThat(test.XValues).isEqualTo(XVALUE_ARRAY);
            assertThat(test.YValues).isEqualTo(YVALUE_ARRAY);
        }