Evgenii Akentev
·
2021-01-07
Test.hs
1import Test.Hspec
2
3import qualified WeatherProvider
4import qualified WeatherReporter
5
6main :: IO ()
7main = hspec spec
8
9weatherWithTemp :: WeatherProvider.Temperature -> WeatherReporter.Handle
10weatherWithTemp t = WeatherReporter.new
11 $ WeatherProvider.new
12 $ WeatherProvider.Config t
13
14spec :: Spec
15spec = describe "WeatherReporter" $ do
16 it "weather in London is 0" $ do
17 weatherReportInLondon <- WeatherReporter.getCurrentWeatherReportInLondon $
18 weatherWithTemp 0
19 weatherReportInLondon `shouldBe` "The current temperature in London is 0"
20 it "weather in London is -5" $ do
21 weatherReportInLondon <- WeatherReporter.getCurrentWeatherReportInLondon $
22 weatherWithTemp (-5)
23 weatherReportInLondon `shouldBe` "The current temperature in London is -5"