public void UpdatesLiveStatusToClosed() { //Arrange var message = new VacancyEligibleForClosure(42); var liveVacancy = new Fixture().Build <Vacancy>() .With(x => x.Status, VacancyStatus.Live) .With(x => x.VacancyId, message.VacancyId) .Create(); _apprenticeshipVacancyReadRepository.Setup(m => m.Get(message.VacancyId)).Returns(liveVacancy); //Act _processor.ProcessVacancyClosure(message); //Assert _apprenticeshipVacancyReadRepository.Verify(m => m.Get(message.VacancyId), Times.Once); _apprenticeshipVacancyWriteRepository.Verify(m => m.Update(It.Is <Vacancy>(av => av.VacancyId == message.VacancyId)), Times.Once); _apprenticeshipVacancyWriteRepository.Verify(m => m.Update(It.Is <Vacancy>(av => av.Status == VacancyStatus.Closed)), Times.Once); _apprenticeshipVacancyWriteRepository.Verify(m => m.Update(It.IsAny <Vacancy>()), Times.Once); }
public ServiceBusMessageStates Consume(VacancyEligibleForClosure message) { _vacancyStatusProcessor.ProcessVacancyClosure(message); return(ServiceBusMessageStates.Complete); }