Esempio n. 1
0
        public void weather_data_updates_heatindex_correctly()
        {
            var wd          = new WeatherData();
            var heatdisplay = new HeatIndexDisplay(wd);

            wd.SetMeasurements(80, 65, 30.4f);
            Assert.AreEqual("Heat index is 82.95535", heatdisplay.Display());

            wd.SetMeasurements(78, 90, 29.2f);
            Assert.AreEqual("Heat index is 83.64967", heatdisplay.Display());
        }
Esempio n. 2
0
        private static void TestObserverPattern()
        {
            WeatherData         weatherData         = new WeatherData();
            TemperatureReporter temperatureReporter = new TemperatureReporter();

            CurrentConditionsDisplay  currentConditionsDisplay  = new CurrentConditionsDisplay(weatherData);
            StatisticsDisplay         statisticsDisplay         = new StatisticsDisplay(weatherData);
            ForecastDisplay           forecastDisplay           = new ForecastDisplay(weatherData);
            HeatIndexDisplay          heatIndexDisplay          = new HeatIndexDisplay(weatherData);
            CurrentTemperatureDisplay currentTemperatureDisplay = new CurrentTemperatureDisplay(temperatureReporter);

            Temperature t = new Temperature {
                Temp = 80
            };

            temperatureReporter.TemperatureChanged(t);

            t.Temp = 82;
            temperatureReporter.TemperatureChanged(t);
            Console.WriteLine(currentTemperatureDisplay.Display());

            t.Temp = 78;
            temperatureReporter.TemperatureChanged(t);
            Console.WriteLine(currentTemperatureDisplay.Display());

            weatherData.SetMeasurements(80, 65, 30.4);
            weatherData.SetMeasurements(82, 70, 29.2);
            weatherData.SetMeasurements(78, 90, 29.2);

            Console.WriteLine(currentConditionsDisplay.Display());
            Console.WriteLine(statisticsDisplay.Display());
            Console.WriteLine(forecastDisplay.Display());
            Console.WriteLine(heatIndexDisplay.Display());
        }
Esempio n. 3
0
        public void WhenCreateHeatIndexDisplayAndCallSetMeasurementsMethodExpectDisplayMethodReturnHeatIndexMessage()
        {
            var weatherData      = new WeatherData();
            var heatIndexDisplay = new HeatIndexDisplay(weatherData);

            weatherData.SetMeasurements(80, 50, 80);

            Assert.AreEqual("Heat index is: 81,07396", heatIndexDisplay.Display());
        }
        public void HeatIndexDisplay_ShouldDisplay_WhenMeasurementsChanged()
        {
            //Act
            _weatherData.SetMeasurements(80, 65, 31.2f);
            var display = _heatIndexDisplay.Display();

            //Assert
            display.Should().Be("Heat index is 82.95535");
        }
Esempio n. 5
0
        public void weather_data_updates_observers_correctly()
        {
            var wd         = new WeatherData();
            var conditions = new CurrentConditionsDisplay(wd);
            var heat       = new HeatIndexDisplay(wd);
            var stats      = new StatisticsDisplay(wd);
            var forecast   = new ForecastDisplay(wd);

            wd.SetMeasurements(80, 65, 30.4f);
            Assert.AreEqual("Current Conditions: 80 celsius and humidity 65", conditions.Display());
            Assert.AreEqual("Heat index is 82.95535", heat.Display());
            Assert.AreEqual("Avg/Max/Min Temperature: 80/80/80", stats.Display());
            Assert.AreEqual("Improving weather on the way!", forecast.Display());

            wd.SetMeasurements(78, 90, 29.2f);
            Assert.AreEqual("Current Conditions: 78 celsius and humidity 90", conditions.Display());
            Assert.AreEqual("Heat index is 83.64967", heat.Display());
            Assert.AreEqual("Avg/Max/Min Temperature: 79/80/78", stats.Display());
            Assert.AreEqual("Weather is getting bad!", forecast.Display());
        }
Esempio n. 6
0
        public void WeatherStationHeatIndexTest()
        {
            WeatherData weatherData = new WeatherData();
            CurrentConditionsDisplay currentDisplay    = new CurrentConditionsDisplay(weatherData);
            StatisticsDisplay        statisticsDisplay = new StatisticsDisplay(weatherData);
            ForecastDisplay          forecastDisplay   = new ForecastDisplay(weatherData);
            HeatIndexDisplay         heatIndexDisplay  = new HeatIndexDisplay(weatherData);

            weatherData.SetMeasurements(80, 65, 30.4f);
            weatherData.SetMeasurements(82, 70, 29.2f);
            weatherData.SetMeasurements(78, 90, 29.2f);

            currentDisplay.Display();
            statisticsDisplay.Display();
            forecastDisplay.Display();
            heatIndexDisplay.Display();
        }