public void GetListOfAdvertisedCarsSuccess()
        {
            var carDetailsObject = new List <AdvertisedCarDTO>
            {
                new AdvertisedCarDTO
                {
                    ID    = 1,
                    Year  = "2017",
                    Make  = "sample string 3",
                    Model = "sample string 4",
                    AdvertisedPriceType = "eCg",
                    ECGAmount           = 6.0m,
                    DAPAmount           = 7.0m,
                    AdvertisedAmount    = 8.0m,
                }
            };
            var mockRepository    = new Mock <IOwnerService>();
            var mockRepositoryCar = new Mock <IAdvertiseCarService>();

            mockRepositoryCar.Setup(x => x.GetListOfAdvertisedCars("2017", "abc", "abc"))
            .Returns(carDetailsObject);
            var mockRepositoryCarRef = new Mock <ICarOwnerReferenceService>();

            AdvertisedCarDetailService services = new AdvertisedCarDetailService(mockRepository.Object, mockRepositoryCar.Object, mockRepositoryCarRef.Object);
            var results = services.GetListOfAdvertisedCars("2017", "abc", "abc");

            Assert.AreEqual(results.Count, 1);
            Assert.AreEqual(results.FirstOrDefault().ID, 1);
        }
        public void DeleteAdvertiseCarDetailsEntrySuccess()
        {
            var carId        = 1;
            var carReference = new CarOwnerRefernceDTO
            {
                CarId   = 2,
                OwnerId = 1
            };
            var mockRepository = new Mock <IOwnerService>();

            mockRepository.Setup(x => x.DeleteOwner(carReference.OwnerId))
            .Returns(true);

            var mockRepositoryCar = new Mock <IAdvertiseCarService>();

            mockRepositoryCar.Setup(x => x.DeleteAdvertiseCar(carId))
            .Returns(true);

            var mockRepositoryCarRef = new Mock <ICarOwnerReferenceService>();

            mockRepositoryCarRef.Setup(x => x.GetByCarID(carId))
            .Returns(carReference);

            AdvertisedCarDetailService services = new AdvertisedCarDetailService(mockRepository.Object, mockRepositoryCar.Object, mockRepositoryCarRef.Object);
            var results = services.DeleteAdvertiseCarDetailsEntry(carId);

            Assert.IsNotNull(results);
            Assert.IsTrue(results);
        }
        public void UpdateAdvertiseCarDetailsEntrySuccess()
        {
            int carId            = 1;
            var carDetailsObject = new AdvertisedCarDetailsDTO
            {
                CarDetails = new AdvertisedCarDTO
                {
                    ID    = 1,
                    Year  = "2017",
                    Make  = "sample string 3",
                    Model = "sample string 4",
                    AdvertisedPriceType = "eCg",
                    ECGAmount           = 6.0m,
                    DAPAmount           = 7.0m,
                    AdvertisedAmount    = 8.0m,
                },
                OwnerDetails = new OwnerDTO
                {
                    Id          = 1,
                    Name        = "",
                    PhoneNumber = "",
                    Email       = "",
                    DealerABN   = "fgds",
                    OwnerType   = "D",
                    Comments    = "sample string 7",
                }
            };

            var carReference = new CarOwnerRefernceDTO
            {
                CarId   = 1,
                OwnerId = 1
            };
            var mockRepository = new Mock <IOwnerService>();

            mockRepository.Setup(x => x.UpdateOwner(carReference.OwnerId, carDetailsObject.OwnerDetails))
            .Returns(true);

            var mockRepositoryCar = new Mock <IAdvertiseCarService>();

            mockRepositoryCar.Setup(x => x.UpdateAdvertiseCar(carId, carDetailsObject.CarDetails))
            .Returns(true);

            var mockRepositoryCarRef = new Mock <ICarOwnerReferenceService>();

            mockRepositoryCarRef.Setup(x => x.GetByCarID(carId))
            .Returns(carReference);

            AdvertisedCarDetailService services = new AdvertisedCarDetailService(mockRepository.Object, mockRepositoryCar.Object, mockRepositoryCarRef.Object);
            var results = services.UpdateAdvertiseCarDetailsEntry(carId, carDetailsObject);

            Assert.IsNotNull(results);
            Assert.IsTrue(results);
        }
        public void UpdateAdvertiseCarDetailsEntrySuccessInvalidId()
        {
            int carId                           = 0;
            var mockRepository                  = new Mock <IOwnerService>();
            var mockRepositoryCar               = new Mock <IAdvertiseCarService>();
            var mockRepositoryCarRef            = new Mock <ICarOwnerReferenceService>();
            AdvertisedCarDetailService services = new AdvertisedCarDetailService(mockRepository.Object, mockRepositoryCar.Object, mockRepositoryCarRef.Object);
            var results                         = services.UpdateAdvertiseCarDetailsEntry(0, null);

            Assert.IsNotNull(results);
            Assert.IsFalse(results);
        }
        public void DeleteAdvertiseCarDetailsEntrySuccessInvalidId()
        {
            var carId = 0;
            CarOwnerRefernceDTO carReference = null;
            var mockRepository       = new Mock <IOwnerService>();
            var mockRepositoryCar    = new Mock <IAdvertiseCarService>();
            var mockRepositoryCarRef = new Mock <ICarOwnerReferenceService>();

            mockRepositoryCarRef.Setup(x => x.GetByCarID(carId))
            .Returns(carReference);
            AdvertisedCarDetailService services = new AdvertisedCarDetailService(mockRepository.Object, mockRepositoryCar.Object, mockRepositoryCarRef.Object);
            var results = services.DeleteAdvertiseCarDetailsEntry(carId);

            Assert.IsNotNull(results);
            Assert.IsFalse(results);
        }