示例#1
0
        public void AddNewCar_CarObj_IsNotNull()
        {
            //Arrange
            var sut      = new CarRepository(_mockContext.Object, _mockMapper.Object);
            var expected = new Car()
            {
                Year             = 2019,
                CarMakeId        = 1,
                CarModelId       = 2,
                TrimId           = 1,
                Kms              = 15000,
                TransmissionType = 'A',
                RegoNumber       = "XYZ",
                RegoExpiry       = new DateTime(2019, 12, 12),
                Description      = "Ok Car",
                ColorId          = 1,
                BodyTypeId       = 3,
                NoOfSeats        = 4,
                NoOfCylinders    = 4,
                NoOfDoors        = 5,
                DriveTypeId      = 2,
                FuelTypeId       = 3
            };

            //Act
            var returnedValue = sut.AddNewCar(expected);

            //Assert
            Assert.IsType <Guid>(returnedValue);
            Assert.NotNull(returnedValue);
            _mockContext.Verify(x => x.Cars.Add(It.IsAny <Car>()), Times.Once);
            _mockContext.Verify(x => x.SaveChanges(), Times.Once);
        }
示例#2
0
        public void AddNewCar_CarObj_IsNull()
        {
            //Arrange
            var sut = new CarRepository(_mockContext.Object, _mockMapper.Object);

            //Act
            var returnedValue = sut.AddNewCar(null);

            //Assert
            Assert.Null(returnedValue);
            _mockContext.Verify(x => x.Cars.Add(It.IsAny <Car>()), Times.Never);
            _mockContext.Verify(x => x.SaveChanges(), Times.Never);
        }
示例#3
0
        public ActionResult Add(CarModel car)
        {
            CarRepository carRepository = new CarRepository();

            if (!ModelState.IsValid)
            {
                return(View("CarList", car));
            }
            else
            {
                carRepository.AddNewCar(car);
                return(RedirectToAction("CarList"));
            }
        }
示例#4
0
        public async Task <IActionResult> AddNewAd(CarModel carModel)
        {
            if (ModelState.IsValid)
            {
                if (carModel.ImageFile != null)
                {
                    string folder = "cars/cover";
                    folder += Guid.NewGuid().ToString() + "_" + carModel.ImageFile.FileName;
                    string serverFolder = Path.Combine(_webHostEnvironment.WebRootPath, folder);

                    carModel.ImageFileUrl = folder;

                    await carModel.ImageFile.CopyToAsync(new FileStream(serverFolder, FileMode.Create));
                }

                int id = await _carRepository.AddNewCar(carModel);

                if (id > 0)
                {
                    return(RedirectToAction(nameof(AddNewAd), new { isSuccess = true, bookId = id }));
                }
            }
            return(View());
        }