public async Task CreateAsync_NoteValidationDoctorFailed_ThrowsError() { // Arrange var fixture = new Fixture(); var note = new RequestUpdateModel(); var expected = fixture.Create <string>(); var patientService = new Mock <IBuyerService>(); patientService.Setup(x => x.ValidateAsync(note)); var doctorService = new Mock <IDealerService>(); doctorService.Setup(x => x.ValidateAsync(note)) .Throws(new InvalidOperationException(expected)); var diseaseService = new Mock <ICarService>(); diseaseService.Setup(x => x.ValidateAsync(note)); var noteDAL = new Mock <IRequestDAL>(); var noteService = new RequestService(noteDAL.Object, patientService.Object, doctorService.Object, diseaseService.Object); var action = new Func <Task>(() => noteService.CreateAsync(note)); // Assert await action.Should().ThrowAsync <InvalidOperationException>().WithMessage(expected); noteDAL.Verify(x => x.InsertAsync(note), Times.Never); }
public async Task CreateAsync_NoteValidationSucceed_CreatesNote() { // Arrange var note = new RequestUpdateModel(); var expected = new Request(); var patientService = new Mock <IBuyerService>(); patientService.Setup(x => x.ValidateAsync(note)); var doctorService = new Mock <IDealerService>(); doctorService.Setup(x => x.ValidateAsync(note)); var diseaseService = new Mock <ICarService>(); diseaseService.Setup(x => x.ValidateAsync(note)); var noteDAL = new Mock <IRequestDAL>(); noteDAL.Setup(x => x.InsertAsync(note)).ReturnsAsync(expected); var noteService = new RequestService(noteDAL.Object, patientService.Object, doctorService.Object, diseaseService.Object); // Act var result = await noteService.CreateAsync(note); // Assert result.Should().Be(expected); }
public async Task <Request> CreateAsync(RequestUpdateModel request) { await this.BuyerService.ValidateAsync(request); await this.DealerService.ValidateAsync(request); await this.CarService.ValidateAsync(request); return(await this.RequestDal.InsertAsync(request)); }
public async Task <Domain.Request> InsertAsync(RequestUpdateModel request) { Request new_obj = this.Mapper.Map <Request>(request); new_obj.DateBuy = DateTime.Today; var result = await this.Context.AddAsync(new_obj); await this.Context.SaveChangesAsync(); return(this.Mapper.Map <Domain.Request>(result.Entity)); }
public async Task <Domain.Request> UpdateAsync(RequestUpdateModel request) { var existing = await this.Get(request); var result = this.Mapper.Map(request, existing); this.Context.Update(result); await this.Context.SaveChangesAsync(); return(this.Mapper.Map <Domain.Request>(result)); }
public async Task <Request> UpdateAsync(RequestUpdateModel request) { return(await this.RequestDal.UpdateAsync(request)); }