public async Task AddVehicleAsyncShouldSuccessfullyAddVehicle() { //Arrange var newVehicle = new VehicleFormServiceModel { Model = "Q7", PlateNumber = "CTCTCTCT", YearОfМanufacture = DateTime.UtcNow.AddYears(5), TravelledDistance = 198000, EndOilChange = 208000, Vin = "VVVVVWWWWZZZZZAAAAA", Status = VehicleStatus.OnMotion, InspectionSafetyCheck = DateTime.UtcNow.AddDays((int)TimesPeriod.HalfYearDays), BranchId = 4, BrandId = 1, OwnerId = 1, }; //Act var lenBeforeAddEnitityOfInMemoryDB = await this.fixture.Context.Vehicles.CountAsync(); await this.vehicleService.AddVehicleAsync(newVehicle); var lenAfterAddEnitityOfInMemoryDB = await this.fixture.Context.Vehicles.CountAsync(); var index = lenAfterAddEnitityOfInMemoryDB - 1; var actual = (await this.vehicleService.AllAsync()).Count(); var lastAddVehicle = await this.fixture.Context.Vehicles.FirstOrDefaultAsync(x => x.Id == index); //Assert Assert.Equal(lenAfterAddEnitityOfInMemoryDB, actual); Assert.Equal(index, lastAddVehicle.Id); }
public async Task EditVehicleAsyncShouldEditCorecttly() { //Arrange var newVehicle = new VehicleFormServiceModel { Model = "Q7", PlateNumber = "CTCTCTCT", YearОfМanufacture = DateTime.UtcNow.AddYears(5), TravelledDistance = 198000, EndOilChange = 208000, Vin = "VVVVVWWWWZZZZZAAAAA", Status = VehicleStatus.OnMotion, InspectionSafetyCheck = DateTime.UtcNow.AddDays((int)TimesPeriod.HalfYearDays), BranchId = 4, BrandId = 1, OwnerId = 1, }; //Act await this.vehicleService.EditVehicleAsync(15, newVehicle); var editVehicle = await this.vehicleService.GetByIdAsync <VehicleFormServiceModel>(15); //Assert Assert.Equal(newVehicle.Model, editVehicle.Model); Assert.Equal(newVehicle.PlateNumber, editVehicle.PlateNumber); Assert.Equal(newVehicle.YearОfМanufacture, editVehicle.YearОfМanufacture); Assert.Equal(newVehicle.EndOilChange, editVehicle.EndOilChange); Assert.Equal(newVehicle.Status, editVehicle.Status); Assert.Equal(newVehicle.InspectionSafetyCheck, editVehicle.InspectionSafetyCheck); Assert.Equal(newVehicle.BranchId, editVehicle.BranchId); Assert.Equal(newVehicle.BrandId, editVehicle.BrandId); Assert.Equal(newVehicle.OwnerId, editVehicle.OwnerId); }
public async Task EditVehicleAsync(int vehicleId, VehicleFormServiceModel vehicleModel) { var vehicle = await this.db.Vehicles .FirstOrDefaultAsync(v => v.Id == vehicleId); //TODO: Catch custom exception if (vehicle == null) { throw new ArgumentException(NotExistItemExceptionMessage); } this.mapper.Map(vehicleModel, vehicle); await this.db.SaveChangesAsync(); }
public async Task AddVehicleAsync(VehicleFormServiceModel vehicleModel) { //var vehicleStatus = VehicleStatus(vehicleModel.Status); if (!await this.ValidateVehicleServiceModelAsync( vehicleModel.PlateNumber, vehicleModel.Vin, vehicleModel.BranchId, vehicleModel.BrandId, vehicleModel.OwnerId) || vehicleModel.Status == Data.Enums.VehicleStatus.None) { throw new ArgumentException(ValidateItemException); } //var newVehicle = this.FillVehicleModel(vehicleModel, vehicleStatus); var newVehicle = this.mapper.Map <Data.Models.Vehicle>(vehicleModel); newVehicle.CreatedOn = DateTime.UtcNow; await this.db.Vehicles.AddAsync(newVehicle); await this.db.SaveChangesAsync(); }
public async Task AddVehicleAsyncReturnErrorWhenValidateVehicleServiceModelFail(VehicleFormServiceModel vehicleModel) { //Arrange //Act var exceptionMessage = await Assert.ThrowsAsync <ArgumentException>(() => this.vehicleService.AddVehicleAsync(vehicleModel)); //Assert Assert.Equal(ValidateItemException, exceptionMessage.Message); }