public void Generate_No_Earnings_When_Fm36_Only_Has_Invalid_Contracts() { var cmd = new LearnerBuilder() .BuildLearnerCommand(); // Arrange cmd.Learner.PriceEpisodes.First().PriceEpisodeValues.PriceEpisodeContractType = "none"; // Act var earningsEvents = sut.Build(cmd); // Assert earningsEvents.Should().BeEmpty(); }
public void Generate_Valid_Earnings_When_Ignoring_Invalid_Contracts_In_Fm36() { var cmd = new LearnerBuilder() .WithMultipleDeliveries() .BuildLearnerCommand(); // Arrange cmd.Learner.PriceEpisodes.First().PriceEpisodeValues.PriceEpisodeContractType = null; // Act var earningsEvents = sut.Build(cmd); // Assert var expectedEarnings = cmd.Learner.PriceEpisodes.Skip(1).Select(x => new ApprenticeshipContractType1EarningEvent { StartDate = x.PriceEpisodeValues.EpisodeStartDate.GetValueOrDefault() }); earningsEvents.Should().BeEquivalentTo(expectedEarnings); }