public ServiceResult AddVehicle(VehicleDTO vehicleDto) { var result = new ServiceResult(); if (vehicleDto.Drive == null && vehicleDto.DriveId == 0) result.Errors.Add(new PropertyMessagePair { PropertyName = "Drive", Message = "You gotta determine drive" }); if (vehicleDto.Class == null && vehicleDto.VehicleClassId == 0) result.Errors.Add(new PropertyMessagePair { PropertyName = "Class", Message = "You gotta determine vehicle class" }); if (vehicleDto.Dimensions == null) result.Errors.Add(new PropertyMessagePair { PropertyName = "Dimensions", Message = "You gotta determine vehicle dimensions" }); if ((vehicleDto.Class != null || vehicleDto.VehicleClassId != 0) && (vehicleDto.Drive != null || vehicleDto.DriveId != 0) &&vehicleDto.Dimensions != null) { _db.Vehicles.Create(Mapper.Map<Vehicle>(vehicleDto)); _db.Save(); } return result; }
public void VehicleCreate_DataGiven() { //Arrange var vehicle = new VehicleDTO { Name = "NewVehicle", Drive = new DriveDTO { Name = "SomeDrive" }, VehicleClassId = 1, Dimensions = new DimensionsDTO { Height = 5, Length = 3, Width = 5 } }; var mockVehicleRep = new Mock<IRepository<Vehicle>>(); var mockUnit = new Mock<IMotorDepotUnitOfWork>(); mockUnit.Setup(x => x.Vehicles).Returns(mockVehicleRep.Object); Mapper.CreateMap<DimensionsDTO, Dimensions>(); Mapper.CreateMap<DriveDTO, Drive>(); Mapper.CreateMap<VehicleDTO, Vehicle>(); var service = new VehicleService(mockUnit.Object); //Act var result = service.AddVehicle(vehicle); //Assert Assert.AreEqual(result.Status, ServiceResultStatus.Success); mockVehicleRep.Verify(x => x.Create(It.IsAny<Vehicle>()), Times.Once); }
public void VehicleCreate_NoData() { //Arrange var vehicle = new VehicleDTO { Name = "NewVehicle" }; var mockVehicleRep = new Mock<IRepository<Vehicle>>(); var mockUnit = new Mock<IMotorDepotUnitOfWork>(); mockUnit.Setup(x => x.Vehicles).Returns(mockVehicleRep.Object); var service = new VehicleService(mockUnit.Object); //Act var result = service.AddVehicle(vehicle); //Assert Assert.AreEqual(result.Status, ServiceResultStatus.Error); mockVehicleRep.Verify(x => x.Create(It.IsAny<Vehicle>()), Times.Never); }
public ServiceResult ModifyVehicle(VehicleDTO vehicleDto) { var result = new ServiceResult(); if (vehicleDto.Drive == null && vehicleDto.DriveId == 0) result.Errors.Add(new PropertyMessagePair { PropertyName = "Drive", Message = "You gotta determine drive" }); if (vehicleDto.Class == null && vehicleDto.VehicleClassId == 0) result.Errors.Add(new PropertyMessagePair { PropertyName = "Class", Message = "You gotta determine vehicle class" }); if (vehicleDto.Dimensions == null) result.Errors.Add(new PropertyMessagePair { PropertyName = "Dimensions", Message = "You gotta determine vehicle dimensions" }); if ((vehicleDto.Class != null || vehicleDto.VehicleClassId!=0) && (vehicleDto.Drive != null || vehicleDto.DriveId != 0) && vehicleDto.Dimensions != null) { try { _db.Vehicles.Update(Mapper.Map<Vehicle>(vehicleDto)); _db.Save(); } catch (DbEntityValidationException ex) { result.Append(ex); } } return result; }