コード例 #1
0
        public void ShouldGetWeatherForCities()
        {
            // Arrange
            var cities = new List <string> {
                "Kiev", "Vilnius", "Riga"
            };
            var weather = new CityWeather
            {
                City          = "Kiev",
                Precipitation = 2,
                Temperature   = 2,
                Weather       = "Test"
            };
            var httpMessageHandler = new FakeHttpMessageHandler(SetupResponseMessage(System.Net.HttpStatusCode.OK, weather));

            var client = new HttpClient(httpMessageHandler);

            // Sut
            var sut = new WeatherHttpClientBuilder().WithHttpClient(client).Build();

            // Act
            var result = sut.GetWeatherFor(cities).Result;

            // Assert
            var cityList = result.ToList();

            Assert.IsTrue(cityList.Count == 3);
        }
コード例 #2
0
        public void ShouldReturnNothingWhenStatusCodeNot200()
        {
            // Arrange
            var httpMessageHandler = new FakeHttpMessageHandler(SetupResponseMessage(System.Net.HttpStatusCode.BadRequest, null));
            var client             = new HttpClient(httpMessageHandler);

            // Sut
            var sut = new WeatherHttpClientBuilder().WithHttpClient(client).Build();

            // Act
            var result = sut.GetWeatherFor(new List <string>()
            {
                "city"
            }).Result;

            // Assert
            Assert.IsTrue(result.ToList().Count == 0);
        }
コード例 #3
0
        public void ShouldReturnNothingWhenExceptionThrown()
        {
            // Arrange
            var exception          = new HttpRequestException("Test");
            var httpMessageHandler = new ThrowingExceptionMessageHandler(exception);
            var client             = new HttpClient(httpMessageHandler);

            // Sut
            var sut = new WeatherHttpClientBuilder().WithHttpClient(client).Build();

            // Act
            var result = sut.GetWeatherFor(new List <string>()
            {
                "test"
            }).Result;

            // Assert
            Assert.IsTrue(result.ToList().Count == 0);
        }