コード例 #1
0
        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());
        }
コード例 #2
0
        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();
        }