コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
ファイル: VehicleService.cs プロジェクト: mindball/Portfolio
        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();
        }
コード例 #4
0
ファイル: VehicleService.cs プロジェクト: mindball/Portfolio
        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();
        }
コード例 #5
0
        public async Task AddVehicleAsyncReturnErrorWhenValidateVehicleServiceModelFail(VehicleFormServiceModel vehicleModel)
        {
            //Arrange

            //Act
            var exceptionMessage = await Assert.ThrowsAsync <ArgumentException>(()
                                                                                => this.vehicleService.AddVehicleAsync(vehicleModel));

            //Assert
            Assert.Equal(ValidateItemException, exceptionMessage.Message);
        }