public void ShouldReturnBrandName() { //Arrange var ford = new VehicleBrandName() { Id = 1, Name = "Ford", IsActive = true }; var opel = new VehicleBrandName() { Id = 2, Name = "Opel", IsActive = true }; var vehicleBrands = new List <VehicleBrandName>(); vehicleBrands.Add(ford); vehicleBrands.Add(opel); var mapper = new Mock <IMapper>(); var vehicleRepository = new Mock <IVehicleRepository>(); vehicleRepository.Setup(x => x.GetVehicleBrandNames()).Returns(vehicleBrands.AsQueryable()); var vehicleService = new VehicleService(vehicleRepository.Object, mapper.Object); var result = vehicleService.GetBrandName(1); var secondResult = vehicleService.GetBrandName(2); result.Should().Be("Ford"); secondResult.Should().Be("Opel"); }
public void ShouldReturnUserCars() { var firstBrand = new VehicleBrandName() { Id = 1, Name = "Opel" }; var secondBrand = new VehicleBrandName() { Id = 2, Name = "Toyota" }; var thirdBrand = new VehicleBrandName() { Id = 3, Name = "Hyundai" }; //Arrange var vehicleList = new List <Vehicle>() { new Vehicle() { Id = 1, ApplicationUserID = "1user", IsActive = true, Model = "Corsa", VehicleBrandNameId = 1, VehicleBrandName = firstBrand, RegistrationNumber = "LUB6127" }, new Vehicle() { Id = 2, ApplicationUserID = "1user", IsActive = true, Model = "Astra", VehicleBrandNameId = 1, VehicleBrandName = firstBrand, RegistrationNumber = "LUB6128" }, new Vehicle() { Id = 3, ApplicationUserID = "1user", IsActive = true, Model = "Verso", VehicleBrandNameId = 2, VehicleBrandName = secondBrand, RegistrationNumber = "LUB6129" }, new Vehicle() { Id = 4, ApplicationUserID = "2user", IsActive = true, Model = "I30", VehicleBrandNameId = 3, VehicleBrandName = thirdBrand, RegistrationNumber = "LUB6130" }, new Vehicle() { Id = 5, ApplicationUserID = "2user", IsActive = false, Model = "Tucson", VehicleBrandNameId = 3, VehicleBrandName = thirdBrand, RegistrationNumber = "LUB6131" }, new Vehicle() { Id = 6, ApplicationUserID = "3user", IsActive = true, Model = "Santa Fe", VehicleBrandNameId = 3, VehicleBrandName = thirdBrand, RegistrationNumber = "LUB6132" }, new Vehicle() { Id = 7, ApplicationUserID = "2user", IsActive = true, Model = "Santa Fe", VehicleBrandNameId = 3, VehicleBrandName = thirdBrand, RegistrationNumber = "LUB6133" } }; var mapper = new Mock <IMapper>(); mapper.Setup(x => x.ConfigurationProvider) .Returns( () => new MapperConfiguration( cfg => { cfg.CreateMap <UserCarsForListVm, Vehicle>().ReverseMap() .ForMember(s => s.Name, opt => opt.MapFrom(x => string.Concat(x.VehicleBrandName.Name, " ", x.Model, " ", x.RegistrationNumber))); })); var repository = new Mock <IVehicleRepository>(); repository.Setup(x => x.GetVehicles()).Returns(vehicleList.AsQueryable()); var service = new VehicleService(repository.Object, mapper.Object); var repositoryWithoutObject = new Mock <IVehicleRepository>(); var mapperW = new Mock <IMapper>(); var serviceWithoutObject = new VehicleService(repositoryWithoutObject.Object, mapperW.Object); //Act var firstUserCars = service.GetUserCars("1user"); var secondUserCars = service.GetUserCars("2user"); var thirdUserCars = service.GetUserCars("2usaser"); var userCarsWithoutObject = serviceWithoutObject.GetUserCars("1user"); //Assert firstUserCars.UserCars.Should().HaveCount(3); firstUserCars.UserCars.Should().NotBeNullOrEmpty(); firstUserCars.UserCars[0].Name.Should().NotBeNullOrEmpty(); firstUserCars.UserCars[0].Name.Should().Be("Opel Astra LUB6128"); firstUserCars.UserCars[1].Name.Should().Be("Opel Corsa LUB6127"); firstUserCars.UserCars[1].Id.Should().Be(1); firstUserCars.UserCars.Should().NotBeInDescendingOrder(x => x.Name); firstUserCars.UserCars.Should().OnlyHaveUniqueItems(x => x.Id); secondUserCars.UserCars.Should().HaveCount(2); secondUserCars.UserCars.Should().NotBeNullOrEmpty(); secondUserCars.UserCars.Should().NotBeInDescendingOrder(x => x.Name); secondUserCars.UserCars[0].Name.Should().Be("Hyundai I30 LUB6130"); secondUserCars.UserCars[0].Id.Should().Be(4); secondUserCars.UserCars.Should().OnlyHaveUniqueItems(x => x.Id); thirdUserCars.UserCars.Should().HaveCount(0); thirdUserCars.UserCars.Should().BeNullOrEmpty(); userCarsWithoutObject.Should().BeNull(); }