public async Task Then_The_Endpoint_Is_Called_And_District_Data_Returned_For_English_Postcodes( PostcodeLocationDistrictApiResponse postcodeResponse, string query) { //Arrange postcodeResponse.Result.Country = postcodeResponse.Result.Country.Select(c => { c = "England"; return(c); }).ToArray(); var response = new HttpResponseMessage { Content = new StringContent(JsonConvert.SerializeObject(postcodeResponse)), StatusCode = HttpStatusCode.Accepted }; var httpMessageHandler = MessageHandler.SetupMessageHandlerMock(response, new Uri(string.Format(Constants.DistrictNameUrl, query))); var client = new HttpClient(httpMessageHandler.Object); var postcodeService = new PostcodeApiService(client); //Act var actual = await postcodeService.GetDistrictData(query); //Assert actual.Should().BeEquivalentTo(postcodeResponse.Result, options => options .Excluding(c => c.Country) .Excluding(c => c.AdminDistrict) ); actual.Country.Should().Be(postcodeResponse.Result.Country.First()); actual.AdminDistrict.Should().Be(postcodeResponse.Result.AdminDistrict.First()); }
public async Task Then_If_NotFound_Result_Then_Service_Returns_Null( PostcodeLocationDistrictApiResponse postcodeResponse, string query) { var response = new HttpResponseMessage { Content = new StringContent(JsonConvert.SerializeObject(postcodeResponse)), StatusCode = HttpStatusCode.NotFound, }; var httpMessageHandler = MessageHandler.SetupMessageHandlerMock(response, new Uri(string.Format(Constants.DistrictNameUrl, query))); var client = new HttpClient(httpMessageHandler.Object); var postcodeService = new PostcodeApiService(client); //Act var actual = await postcodeService.GetDistrictData(query); //Assert actual.Should().BeNull(); }