patrol-0.1.0.1: source/test-suite/Patrol/Type/LevelSpec.hs
{-# LANGUAGE QuasiQuotes #-}
module Patrol.Type.LevelSpec where
import qualified Data.Aeson as Aeson
import qualified Data.Aeson.QQ.Simple as Aeson
import qualified Patrol.Type.Level as Level
import qualified Test.Hspec as Hspec
spec :: Hspec.Spec
spec = Hspec.describe "Patrol.Type.Level" $ do
Hspec.describe "ToJSON" $ do
Hspec.it "works for Debug" $ do
Aeson.toJSON Level.Debug `Hspec.shouldBe` [Aeson.aesonQQ| "debug" |]
Hspec.it "works for Info" $ do
Aeson.toJSON Level.Info `Hspec.shouldBe` [Aeson.aesonQQ| "info" |]
Hspec.it "works for Warning" $ do
Aeson.toJSON Level.Warning `Hspec.shouldBe` [Aeson.aesonQQ| "warning" |]
Hspec.it "works for Error" $ do
Aeson.toJSON Level.Error `Hspec.shouldBe` [Aeson.aesonQQ| "error" |]
Hspec.it "works for Fatal" $ do
Aeson.toJSON Level.Fatal `Hspec.shouldBe` [Aeson.aesonQQ| "fatal" |]