public async Task CreateAsync_F1TeamValidationFailed_ThrowsError() { // Arrange var fixture = new Fixture(); var rider = new RiderUpdateModel(); var expected = fixture.Create <string>(); var f1TeamGetService = new Mock <IF1TeamGetService>(); f1TeamGetService .Setup(x => x.ValidateAsync(rider)) .Throws(new InvalidOperationException(expected)); var riderDataAccess = new Mock <IRiderDataAccess>(); var riderGetService = new RiderCreateService(riderDataAccess.Object, f1TeamGetService.Object); // Act var action = new Func <Task>(() => riderGetService.CreateAsync(rider)); // Assert await action.Should().ThrowAsync <InvalidOperationException>().WithMessage(expected); riderDataAccess.Verify(x => x.InsertAsync(rider), Times.Never); }
public async Task <Rider> InsertAsync(RiderUpdateModel rider) { var result = await this.Context.AddAsync(this.Mapper.Map <DataAccess.Entities.Rider>(rider)); await this.Context.SaveChangesAsync(); return(this.Mapper.Map <Rider>(result.Entity)); }
public async Task <Rider> UpdateAsync(RiderUpdateModel rider) { var existing = await this.Get(rider); var result = this.Mapper.Map(rider, existing); this.Context.Update(result); await this.Context.SaveChangesAsync(); return(this.Mapper.Map <Rider>(result)); }
public async Task CreateAsync_DepartmentValidationSucceed_CreatesRider() { // Arrange var rider = new RiderUpdateModel(); var expected = new Rider(); var f1TeamGetService = new Mock <IF1TeamGetService>(); f1TeamGetService.Setup(x => x.ValidateAsync(rider)); var riderDataAccess = new Mock <IRiderDataAccess>(); riderDataAccess.Setup(x => x.InsertAsync(rider)).ReturnsAsync(expected); var riderGetService = new RiderCreateService(riderDataAccess.Object, f1TeamGetService.Object); // Act var result = await riderGetService.CreateAsync(rider); // Assert result.Should().Be(expected); }
public async Task <Rider> UpdateAsync(RiderUpdateModel rider) { await F1TeamGetService.ValidateAsync(rider); return(await RiderDataAccess.UpdateAsync(rider)); }