//-------------------------------------------------------------------------
        public virtual void coverage()
        {
            XCcyIborIborSwapCurveNode test = XCcyIborIborSwapCurveNode.of(TEMPLATE, SPREAD_ID, SPREAD_ADJ);

            coverImmutableBean(test);
            XCcyIborIborSwapCurveNode test2 = XCcyIborIborSwapCurveNode.builder().label(LABEL).template(TEMPLATE2).fxRateId(FX_RATE_ID2).spreadId(SPREAD_ID2).additionalSpread(0.1).date(CurveNodeDate.LAST_FIXING).build();

            coverBeanEquals(test, test2);
        }
        public virtual void test_builder_defaults()
        {
            XCcyIborIborSwapCurveNode test = XCcyIborIborSwapCurveNode.builder().template(TEMPLATE).spreadId(SPREAD_ID).build();

            assertEquals(test.Label, LABEL_AUTO);
            assertEquals(test.FxRateId, FX_RATE_ID);
            assertEquals(test.SpreadId, SPREAD_ID);
            assertEquals(test.Template, TEMPLATE);
            assertEquals(test.Date, CurveNodeDate.END);
        }
        //-------------------------------------------------------------------------
        public virtual void test_builder()
        {
            XCcyIborIborSwapCurveNode test = XCcyIborIborSwapCurveNode.builder().label(LABEL).template(TEMPLATE).fxRateId(FX_RATE_ID2).spreadId(SPREAD_ID).additionalSpread(SPREAD_ADJ).build();

            assertEquals(test.Label, LABEL);
            assertEquals(test.FxRateId, FX_RATE_ID2);
            assertEquals(test.SpreadId, SPREAD_ID);
            assertEquals(test.AdditionalSpread, SPREAD_ADJ);
            assertEquals(test.Template, TEMPLATE);
            assertEquals(test.Date, CurveNodeDate.END);
        }
 public virtual void test_builder_noTemplate()
 {
     assertThrowsIllegalArg(() => XCcyIborIborSwapCurveNode.builder().label(LABEL).spreadId(SPREAD_ID).build());
 }