public async Task testNoDeliveriesReturnedWhenOneConditionIsNotSatisfied() { var mockGoogleMaps = new Mock <LocationService>(); var responseMessageOne = new HttpResponseMessage(); responseMessageOne.Content = new StringContent("{\"destination_addresses\":[\"Village Way, Brighton BN1, United Kingdom\"],\"origin_addresses\":[\"Arts Rd, Falmer, Brighton BN1 9QN, United Kingdom\"],\"rows\":[{\"elements\":[{\"distance\":{\"text\":\"0.8 mi\",\"value\":1326},\"duration\":{\"text\":\"4 min\",\"value\":235},\"status\":\"OK\"}]}],\"status\":\"OK\"}"); var responseMessageTwo = new HttpResponseMessage(); responseMessageTwo.Content = new StringContent("{\"destination_addresses\":[\"Village Way, Brighton BN1, United Kingdom\"],\"origin_addresses\":[\"Arts Rd, Falmer, Brighton BN1 9QN, United Kingdom\"],\"rows\":[{\"elements\":[{\"distance\":{\"text\":\"3.6 mi\",\"value\":1326},\"duration\":{\"text\":\"4 min\",\"value\":235},\"status\":\"OK\"}]}],\"status\":\"OK\"}"); mockGoogleMaps.SetupSequence(gm => gm.createDistanceUriAndGetResponse(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <HttpClient>())) .Returns(Task.FromResult(responseMessageOne)) .Returns(Task.FromResult(responseMessageTwo)); IServiceProvider _serviceProvider = ServiceBuilder.getServiceProviderWithInMemoryDatabase(); context = _serviceProvider.GetRequiredService <ApplicationDbContext>(); service = new DeliverySearchService(context, mockGoogleMaps.Object); await populateContextWithData(context); IEnumerable <Delivery> deliveries = await service.searchForDeliveriesWithinDistance(50.8372963, -0.12143259999999999, 1, 2); Assert.Empty(deliveries); }
public DeliverySearchController(ApplicationDbContext context, IHttpContextAccessor contextAccessor, IOptions <AppProperties> optionsAccessor, DeliverySearchService searchService) : base(context, contextAccessor) { options = optionsAccessor.Value; this.searchService = searchService; }