public void SetupTests() { var configuration = new HttpConfiguration(); var carsJson = GetInputFile("Cars.json").ReadToEnd(); var cars = JsonConvert.DeserializeObject<List<Car>>(carsJson); CarRepository = new FakeCarRepository(cars); var categoriesJson = GetInputFile("Categories.json").ReadToEnd(); var categories = JsonConvert .DeserializeObject<List<CarCategory>>(categoriesJson); CarCategoryRepository = new FakeCarCategoryRepository(categories); var citiesJson = GetInputFile("Cities.json").ReadToEnd(); var cities = JsonConvert.DeserializeObject<List<City>>(citiesJson); CityRepository = new FakeCityRepository(cities); CarService = new CarService(CarRepository, CarCategoryRepository, CityRepository); Controller = new CarsController(CarService); Controller.Configuration = configuration; TestStartupConfiguration.HttpConfiguration = configuration; TestStartupConfiguration.CarRepository = CarRepository; TestStartupConfiguration.CarService = CarService; }
public void GetPoi_PoiDoesNotExist_ReturnNotFoundResult() { var city = CityPoiItemBuilder.GenerateCity(); FakeCityRepository.CityExists(city.Id).Returns(true); var result = PoiController.GetPointOfInterest(city.Id, BadId); result.Should().BeOfType <NotFoundResult>(); }
public void GetPoiList_NoPoiFound_ReturnObjectNotFound() { //Arrange var city = CityPoiItemBuilder.GenerateCity(); city.PointsOfInterest = null; FakeCityRepository.GetPointsOfInterestForCity(city.Id).Returns(city.PointsOfInterest); //Action var result = PoiController.GetPointsOfInterestForCity(city.Id); // Assert result.Should().BeOfType <NotFoundResult>(); }
public void Delete_PoiIsNotInRepository_ReturnsNotFound() { const int badId = 0; //Arrange var city = CityPoiItemBuilder.GenerateCity(); FakeCityRepository.CityExists(city.Id).Returns(true); FakeCityRepository.GetCity(city.Id, true).Returns(city); //Action var result = PoiController.DeletePointOfIntetest(city.Id, badId); // Assert result.Should().BeOfType <NotFoundResult>(); }
public void UpdatePointOfInterest_PoiFound_CallsUpdateOnRepository() { var city = CityPoiItemBuilder.GenerateCity(); var poi = CityPoiItemBuilder.GeneratePointOfInterest(); city.PointsOfInterest.Add(poi); poi.CityId = city.Id; var poiDto = DtoMapper.PoiToPoiDto(poi); FakeCityRepository.GetCity(city.Id, IncludePointsOfInterest).Returns(city); var result = PoiController.UpdatePointOfInterest(poi.Id, poiDto); result.Should().BeOfType <NoContentResult>(); }
public void Delete_ItemIsInRepository_ReturnNoContentResult() { //Arrange var city = CityPoiItemBuilder.GenerateCity(); var poi = city.PointsOfInterest.First(); FakeCityRepository.CityExists(city.Id).Returns(true); FakeCityRepository.GetPointOfInterestForCity(city.Id, poi.Id).Returns(poi); FakeCityRepository.GetCity(city.Id, true).Returns(city); //Action var result = PoiController.DeletePointOfIntetest(city.Id, city.PointsOfInterest.First().Id); // Assert result.Should().BeOfType <NoContentResult>(); }
public void Delete_CityAndPoiIsInRepository_CallDeletePoiInRepository() { //Arrange var city = CityPoiItemBuilder.GenerateCity(); var poi = city.PointsOfInterest.First(); FakeCityRepository.GetCity(city.Id, true).Returns(city); FakeCityRepository.GetPointOfInterestForCity(city.Id, poi.Id).Returns(poi); FakeCityRepository.CityExists(city.Id).Returns(true); //Action PoiController.DeletePointOfIntetest(city.Id, poi.Id); // Assert FakeCityRepository.Received().DeletePointOfInterest(city.PointsOfInterest.First()); }
public void GetCity_ItemExistAndPOIisNotRequested_ReturnCityWithNoPOIDTO() { var city = CityPoiItemBuilder.GenerateCity(); var cityDto = new CityWithNoPoidto { CityId = city.Id, Name = city.Name, Country = city.Country, Population = city.Population }; FakeCityRepository.GetCity(city.Id, false).Returns(city); var result = CityPoiController.GetCity(city.Id, false); result.Should().BeOfType <ObjectResult>().Which.Value.ShouldBeEquivalentTo(cityDto); }
public void GetPOIList_CityExist_ReturnPOIList() { //Arrange var city = CityPoiItemBuilder.GenerateCity(); FakeCityRepository.GetPointsOfInterestForCity(city.Id).Returns(city.PointsOfInterest); FakeCityRepository.CityExists(city.Id).Returns(true); var poiDto = new PointsOfInterestDto { PoiList = city.PointsOfInterest }; //Action var result = PoiController.GetPointsOfInterestForCity(city.Id); // Assert result.Should().BeOfType <ObjectResult>().Which.Value.ShouldBeEquivalentTo(poiDto); }
public void GetCities_CititesExist_ReturnCityDtos() { //Arrange const int listLength = 10; var cities = CityPoiItemBuilder.GenerateCityList(listLength); var dtoList = cities.Select(city => new CityWithNoPoidto { CityId = city.Id, Name = city.Name, Country = city.Country, Population = city.Population }).ToList(); FakeCityRepository.GetCities().Returns(cities); //Action var result = CityPoiController.GetAll(); // Assert result.ShouldBeEquivalentTo(dtoList); }
public void GetPoi_PoiExist_ReturnPointOfInterestDTO() { var city = CityPoiItemBuilder.GenerateCity(); var poi = city.PointsOfInterest.First(); var poiDto = new PointOfInterestDto { CityId = poi.CityId, Name = poi.Name, Address = poi.Address, Description = poi.Description, Id = poi.Id, Latitude = poi.Latitude, Longitude = poi.Longitude }; FakeCityRepository.GetPointOfInterestForCity(city.Id, poi.Id).Returns(poi); FakeCityRepository.CityExists(city.Id).Returns(true); var result = PoiController.GetPointOfInterest(city.Id, poi.Id); result.Should().BeOfType <ObjectResult>().Which.Value.ShouldBeEquivalentTo(poiDto); }
public void SetupTests() { //initiating testin configurations / connections var configuration = new HttpConfiguration(); var carsJson = GetInputFile("Cars.json").ReadToEnd(); var cars = JsonConvert.DeserializeObject <List <Car> >(carsJson); CarRepository = new FakeCarRepository(cars); var categoriesJson = GetInputFile("Categories.json").ReadToEnd(); var categories = JsonConvert .DeserializeObject <List <CarCategory> >(categoriesJson); CarCategoryRepository = new FakeCarCategoryRepository(categories); var citiesJson = GetInputFile("Cities.json").ReadToEnd(); var cities = JsonConvert.DeserializeObject <List <City> >(citiesJson); CityRepository = new FakeCityRepository(cities); var bookingsJson = GetInputFile("Bookings.json").ReadToEnd(); var bookings = JsonConvert.DeserializeObject <List <Booking> >(bookingsJson); BookingRepository = new FakeBookingRepository(bookings); TransactionHistoryRepository = new FakeTransactionHistoryRepository( new List <TransactionHistory>()); UserRepository = new FakeUserRepository(); RegistrationRepository = new FakeRegistrationRepository(); PaymentMethodRepository = new FakePaymentMethodRepository( new List <PaymentMethod>() { new PaymentMethod { AccountID = 1, CardName = "Visa", CardNumber = "123456789", CardVerificationValue = "551", ExpiryMonth = 11, ExpiryYear = 2020 } }); //todo make this BookingService = new BookingService( BookingRepository, CarRepository, UserRepository, CarCategoryRepository, CityRepository, TransactionHistoryRepository, PaymentMethodRepository ); Controller = new BookingsController(BookingService); Controller.Configuration = configuration; TestStartupConfiguration.HttpConfiguration = configuration; TestStartupConfiguration.UserRepository = UserRepository; TestStartupConfiguration.BookingRepository = BookingRepository; TestStartupConfiguration.CityRepository = CityRepository; TestStartupConfiguration.CarCategoryRepository = CarCategoryRepository; TestStartupConfiguration.RegistrationRepository = RegistrationRepository; TestStartupConfiguration.TransactionHistoryRepository = TransactionHistoryRepository; TestStartupConfiguration.CarRepository = CarRepository; TestStartupConfiguration.BookingService = BookingService; }