SplitContractEarningByRedundancyDate_GiveRedundancyDateOutsideLearningPeriod_LeaveEarningEventUnaffected() { var act1Builder = new TestContractTypeEarningEventBuilder <ApprenticeshipContractType1EarningEvent>(); var act1Earning = act1Builder.Build(); var redundancyDate = new DateTime(1921, 5, 1); var events = service.SplitContractEarningByRedundancyDate(act1Earning, redundancyDate); events.Should().HaveCount(2); }
public void SplitContractEarningByRedundancyDate_ShouldCreateSplitOriginalEarningAtCorrectPeriodAndRemoveCorrectPeriods() { var act1Builder = new TestContractTypeEarningEventBuilder <ApprenticeshipContractType1EarningEvent>(); var act1Earning = act1Builder.Build(); ValidateContractTypeEarningsSplitAndType(act1Earning, typeof(ApprenticeshipContractType1RedundancyEarningEvent)); var act2Builder = new TestContractTypeEarningEventBuilder <ApprenticeshipContractType2EarningEvent>(); var act2Earning = act2Builder.Build(); ValidateContractTypeEarningsSplitAndType(act2Earning, typeof(ApprenticeshipContractType2RedundancyEarningEvent)); }
SplitContractEarningByRedundancyDate_GiveRedundancyDateOutsideLearningPeriod_LeaveEarningEventUnaffected() { var act1Builder = new TestContractTypeEarningEventBuilder <ApprenticeshipContractType1EarningEvent>(); var act1Earning = act1Builder.Build(); var redundancyDate = new DateTime(1921, 5, 1); var events = service.OriginalAndRedundancyEarningEventIfRequired(act1Earning, new List <byte> { 10, 11, 12 }); events.Should().HaveCount(2); }