static void Main(string[] args) { var zipCode = GetZipCode(); if (zipCode == 0) { Console.WriteLine("Exiting"); return; } IWeatherStack _weatherStack = new WeatherStack(); var result = _weatherStack.GetWeatherInformation(SerivceUrl, zipCode); while ((result.Success.HasValue && !result.Success.Value)) { Console.WriteLine(result.Error.Info); Console.WriteLine("Please try again (or enter 0 to exit): "); zipCode = GetZipCode(); if (zipCode == 0) { return; } result = _weatherStack.GetWeatherInformation(SerivceUrl, zipCode); } IWeatherAnalysis _weatherAnalysis = new WeatherAnalysis(); var canGoOutSide = _weatherAnalysis.GoOuside(result) ? "Yes" : "No"; var needWearSunscreen = _weatherAnalysis.WearSunscreen(result) ? "Yes" : "No"; var canFlyKite = _weatherAnalysis.FlyKite(result) ? "Yes" : "No"; Console.WriteLine($"Should I go outside? {canGoOutSide}"); Console.WriteLine($"Should I wear sunscreen? {needWearSunscreen}"); Console.WriteLine($"Can I fly my kite? {canFlyKite}"); Console.ReadLine(); }
public void Can_WearSunscreen_Test() { mockWeatherCurrent.SetupGet <int>(p => p.WeatherCode).Returns(262); mockWeatherCurrent.SetupGet <float>(p => p.WindSpeed).Returns(16); mockWeather.SetupGet(p => p.Current).Returns(mockWeatherCurrent.Object); mock.Setup(p => p.GetWeatherInformation("", 0)).Returns(mockWeather.Object); IWeatherAnalysis weatherAnalysis = new WeatherAnalysis(); var expected = true; var actual = weatherAnalysis.FlyKite(mock.Object.GetWeatherInformation("", 0)); actual.Should().Be(expected); }