public void Given_username_exist_and_consultant_record_is_deleted_when_Post_then_consultant_restored() { // Given Consultant savedConsultant = null; var adUser = new User() { EmailAddress = "*****@*****.**", Forename = "Casey", Surname = "Stone" }; var consultant = new Consultant() {Id = Guid.Parse("744905F7-62DC-4113-BB45-644E58F02D6A"), Deleted = true, Email = "*****@*****.**"}; var model = new ConsultantViewModel() { Id = Guid.NewGuid(), Username = "******" }; var target = GetTarget(); _consultantRepository.Setup(x => x.GetById(It.IsAny<Guid>())) .Returns(() => null); _consultantRepository.Setup(x => x.GetByUsername(model.Username, true)) .Returns(() => consultant); _consultantRepository.Setup(x => x.SaveOrUpdate(It.IsAny<Consultant>())) .Callback<Consultant>(x => savedConsultant = x); _activeDirectoryService.Setup(x => x.DoesUserExist(It.IsAny<string>())) .Returns(true); _activeDirectoryService.Setup(x => x.GetUser(It.IsAny<string>())) .Returns(() => adUser); // When var result = target.Put(model.Username); // Then Assert.That(savedConsultant.Deleted, Is.False); Assert.That(savedConsultant.Email, Is.EqualTo(adUser.EmailAddress)); Assert.That(savedConsultant.Id, Is.EqualTo(consultant.Id)); }
public void Given_username_exist_when_Post_then_consultant_saved() { Consultant savedConsultant = null; User adUser = new User(){EmailAddress = "*****@*****.**",Forename = "Casey", Surname = "Stone"}; // Given var model = new ConsultantViewModel() { Id = Guid.NewGuid(), Username = "******" }; var target = GetTarget(); _consultantRepository.Setup(x => x.GetById(It.IsAny<Guid>())) .Returns(() => null); _consultantRepository.Setup(x => x.SaveOrUpdate(It.IsAny<Consultant>())) .Callback<Consultant>(x => savedConsultant = x); _activeDirectoryService.Setup(x => x.DoesUserExist(It.IsAny<string>())) .Returns(true); _activeDirectoryService.Setup(x => x.GetUser(It.IsAny<string>())) .Returns(() => adUser); // When var result = target.Put(model.Username); // Then Assert.That(savedConsultant.Id, Is.Not.EqualTo(Guid.Empty)); Assert.That(savedConsultant.Forename, Is.EqualTo(adUser.Forename)); Assert.That(savedConsultant.Surname, Is.EqualTo(adUser.Surname)); Assert.That(savedConsultant.Email, Is.EqualTo(adUser.EmailAddress)); Assert.That(savedConsultant.PercentageOfChecklistsToSendToQualityControl, Is.EqualTo(20)); }