public async Task CheckAsync_ReturnsAnEmptyCollectionOfResponses_WhenLocationIsNullOrEmpty(string location)
        {
            // Arrange
            var sut = new WeatherChecker(mockMeasurements.Object, mockProviders.Object);

            // Act
            var result = await sut.CheckAsync(location);

            // Assert
            mockRepo.VerifyAll();

            var responses = Assert.IsType <List <WeatherCheckResponse> >(result);

            Assert.Empty(responses);
        }
        public async Task CheckAsync_ReturnsACollectionOfWeatherCheckResponses(string location)
        {
            // Arrange
            mockMeasurements.Setup(mm => mm.TemperatureUnits).Returns(TestData.Temperature);
            mockMeasurements.Setup(mm => mm.WindSpeedUnits).Returns(TestData.WindSpeed);

            mockProviders.Setup(p => p.Value).Returns(TestData.Providers.Take(1).ToList());

            var sut = new WeatherChecker(mockMeasurements.Object, mockProviders.Object);

            // Act
            var result = await sut.CheckAsync(location);

            // Assert
            mockRepo.VerifyAll();

            var responses = Assert.IsType <List <WeatherCheckResponse> >(result);

            Assert.NotEmpty(responses);
        }