public void CreateRedundancyContractType_CreatesCorrectContractTypeEvents(Type inputType, Type expectedType)
        {
            var factory = new RedundancyEarningEventFactory(Mapper.Instance);

            var earningEvent = factory.CreateRedundancyContractTypeEarningsEvent(
                (ApprenticeshipContractTypeEarningsEvent)Activator.CreateInstance(inputType));

            earningEvent.GetType().Should().Be(expectedType);
        }
        public void CreateRedundancyContractType_ForAct2ContractType_ShouldCreateANewEventId()
        {
            var factory      = new RedundancyEarningEventFactory(Mapper.Instance);
            var earningEvent = new ApprenticeshipContractType2EarningEvent {
                EventId = Guid.NewGuid()
            };

            var createdEvent = factory.CreateRedundancyContractTypeEarningsEvent(earningEvent);

            earningEvent.EventId.Should().NotBe(createdEvent.EventId);
            createdEvent.EventId.Should().NotBe(Guid.Empty);
        }
        public void CreateRedundancyContractType_ForAct2RedundancyFunctionalSkillEarningsEvent_ShouldCreateANewEventId()
        {
            var factory      = new RedundancyEarningEventFactory(Mapper.Instance);
            var earningEvent = new Act2FunctionalSkillEarningsEvent
            {
                EventId  = Guid.NewGuid(),
                Earnings = new ReadOnlyCollection <FunctionalSkillEarning>(new List <FunctionalSkillEarning>())
            };

            var createdEvent = factory.CreateRedundancyFunctionalSkillTypeEarningsEvent(earningEvent);

            earningEvent.EventId.Should().NotBe(createdEvent.EventId);
            createdEvent.EventId.Should().NotBe(Guid.Empty);
        }