Esempio n. 1
0
        public virtual void test_createSchedule_dualStub()
        {
            PaymentSchedule test     = PaymentSchedule.builder().paymentFrequency(P2M).paymentDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)).build();
            Schedule        schedule = test.createSchedule(ACCRUAL_SCHEDULE_STUBS, REF_DATA);

            assertEquals(schedule, ACCRUAL_SCHEDULE_STUBS.toBuilder().frequency(P2M).build());
        }
Esempio n. 2
0
        public virtual void test_createSchedule_term()
        {
            PaymentSchedule test     = PaymentSchedule.builder().paymentFrequency(TERM).paymentDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)).build();
            Schedule        schedule = test.createSchedule(ACCRUAL_SCHEDULE, REF_DATA);

            assertEquals(schedule, ACCRUAL_SCHEDULE_TERM);
        }
Esempio n. 3
0
        public virtual void test_createSchedule_lastDate_finalAccrualStub()
        {
            PaymentSchedule test     = PaymentSchedule.builder().paymentFrequency(P2M).paymentDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)).lastRegularEndDate(DATE_03_05).build();
            Schedule        schedule = test.createSchedule(ACCRUAL_SCHEDULE_FINAL_STUB_4PERIODS, REF_DATA);
            Schedule        expected = Schedule.builder().periods(SchedulePeriod.of(DATE_01_06, DATE_03_05, DATE_01_05, DATE_03_05), SchedulePeriod.of(DATE_03_05, DATE_04_30, DATE_03_05, DATE_04_30)).frequency(P2M).rollConvention(DAY_5).build();

            assertEquals(schedule, expected);
        }
Esempio n. 4
0
        public virtual void test_createSchedule_firstDate_validInitialStub()
        {
            PaymentSchedule test     = PaymentSchedule.builder().paymentFrequency(P2M).paymentDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)).firstRegularStartDate(DATE_02_05).build();
            Schedule        schedule = test.createSchedule(ACCRUAL_SCHEDULE, REF_DATA);
            Schedule        expected = Schedule.builder().periods(SchedulePeriod.of(DATE_01_06, DATE_02_05, DATE_01_05, DATE_02_05), SchedulePeriod.of(DATE_02_05, DATE_04_07, DATE_02_05, DATE_04_05)).frequency(P2M).rollConvention(DAY_5).build();

            assertEquals(schedule, expected);
        }
Esempio n. 5
0
        public virtual void test_createSchedule_finalStubFullMerge()
        {
            PaymentSchedule test     = PaymentSchedule.builder().paymentFrequency(P2M).paymentDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)).build();
            Schedule        schedule = test.createSchedule(ACCRUAL_SCHEDULE_FINAL_STUB, REF_DATA);
            Schedule        expected = Schedule.builder().periods(SchedulePeriod.of(DATE_01_06, DATE_03_05, DATE_01_05, DATE_03_05), ACCRUAL3STUB).frequency(P2M).rollConvention(DAY_5).build();

            assertEquals(schedule, expected);
        }
Esempio n. 6
0
        public virtual void test_createSchedule_initialStubPartMergeBackwards()
        {
            PaymentSchedule test     = PaymentSchedule.builder().paymentFrequency(P2M).paymentDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)).build();
            Schedule        schedule = test.createSchedule(ACCRUAL_SCHEDULE_INITIAL_STUB, REF_DATA);
            Schedule        expected = Schedule.builder().periods(ACCRUAL1STUB, SchedulePeriod.of(DATE_02_05, DATE_03_05, DATE_02_05, DATE_03_05), SchedulePeriod.of(DATE_03_05, DATE_05_06, DATE_03_05, DATE_05_05)).frequency(P2M).rollConvention(DAY_5).build();

            assertEquals(schedule, expected);
        }
Esempio n. 7
0
        public virtual void test_createSchedule_lastDate_invalidFinalStub()
        {
            PaymentSchedule test = PaymentSchedule.builder().paymentFrequency(P2M).paymentDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)).lastRegularEndDate(DATE_04_05).build();

            assertThrows(() => test.createSchedule(ACCRUAL_SCHEDULE, REF_DATA), typeof(ScheduleException));
        }
Esempio n. 8
0
        public virtual void test_createSchedule_term_badLastRegular()
        {
            PaymentSchedule test = PaymentSchedule.builder().paymentFrequency(TERM).paymentDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)).lastRegularEndDate(DATE_05_05).build();

            assertThrowsIllegalArg(() => test.createSchedule(ACCRUAL_SCHEDULE, REF_DATA));
        }