{-# LANGUAGE TemplateHaskell #-} module RenderingSpec where import Prelude hiding (div) import Data.Aeson.TH import Test.Hspec import Test.Hspec.QuickCheck import Test.QuickCheck hiding (classes, once) import TreeGenerator import Component import Events import Rendering data SingleConstructor = SingleConstructor $(deriveJSON (defaultOptions{tagSingleConstructors=True}) ''SingleConstructor) spec :: SpecWith () spec = parallel $ do describe "render" $ do it "can render an assortment of different trees" $ property $ \x -> render (x :: Purview String String IO) `shouldContain` "always present" it "can create a div" $ do let element = Html "div" [Text "hello world"] render element `shouldBe` "