class WeatherOpinionTest(unittest.TestCase): def setUp(self): self.opinion = WeatherOpinion() self.weather = { TEMPERATURE: 10, PRECIPITATION_CHANCE: 10, PRECIPITATION_AMOUNT: 0.2, WIND: 5 } self.opinion.weather(self.weather) def test_if_too_strong_wind_weather_is_bad(self): self.weather[WIND] = 15 self.assertFalse(self.opinion.is_positive()) def test_if_too_cold_weather_is_bad(self): self.weather[TEMPERATURE] = -30 self.assertFalse(self.opinion.is_positive()) def test_if_too_hot_weather_is_bad(self): self.weather[TEMPERATURE] = 30 self.assertFalse(self.opinion.is_positive()) def test_if_a_lot_of_precipitation_with_high_chance_weather_is_bad(self): self.weather[PRECIPITATION_CHANCE] = 80 self.weather[PRECIPITATION_AMOUNT] = 2.0 self.assertFalse(self.opinion.is_positive()) def test_if_temperature_is_mild_minor_chance_of_minor_precipitation_and_wind_mild(self): self.weather[WIND] = 5 self.weather[TEMPERATURE] = -2 self.weather[PRECIPITATION_CHANCE] = 10 self.weather[PRECIPITATION_AMOUNT] = 0.5 self.assertTrue(self.opinion.is_positive()) def test_if_no_weather_information_then_rating_is_None(self): self.opinion = WeatherOpinion() self.assertIsNone(self.opinion.is_positive())
class WeatherOpinionTest(unittest.TestCase): def setUp(self): self.opinion = WeatherOpinion() self.weather = { TEMPERATURE: 10, PRECIPITATION_CHANCE: 10, PRECIPITATION_AMOUNT: 0.2, WIND: 5 } self.opinion.weather(self.weather) def test_if_too_strong_wind_weather_is_bad(self): self.weather[WIND] = 15 self.assertFalse(self.opinion.is_positive()) def test_if_too_cold_weather_is_bad(self): self.weather[TEMPERATURE] = -30 self.assertFalse(self.opinion.is_positive()) def test_if_too_hot_weather_is_bad(self): self.weather[TEMPERATURE] = 30 self.assertFalse(self.opinion.is_positive()) def test_if_a_lot_of_precipitation_with_high_chance_weather_is_bad(self): self.weather[PRECIPITATION_CHANCE] = 80 self.weather[PRECIPITATION_AMOUNT] = 2.0 self.assertFalse(self.opinion.is_positive()) def test_if_temperature_is_mild_minor_chance_of_minor_precipitation_and_wind_mild( self): self.weather[WIND] = 5 self.weather[TEMPERATURE] = -2 self.weather[PRECIPITATION_CHANCE] = 10 self.weather[PRECIPITATION_AMOUNT] = 0.5 self.assertTrue(self.opinion.is_positive()) def test_if_no_weather_information_then_rating_is_None(self): self.opinion = WeatherOpinion() self.assertIsNone(self.opinion.is_positive())