seonbi-0.1.0: test/Text/Seonbi/Html/PreservationSpec.hs
{-# LANGUAGE OverloadedLists #-}
{-# LANGUAGE OverloadedStrings #-}
module Text.Seonbi.Html.PreservationSpec (spec) where
import Test.Hspec
import Text.Seonbi.Html.Entity
import Text.Seonbi.Html.Preservation
import Text.Seonbi.Html.Tag
spec :: Spec
spec = do
specify "isPreservedTag" $ do
P `shouldNotSatisfy` isPreservedTag
Em `shouldNotSatisfy` isPreservedTag
Title `shouldNotSatisfy` isPreservedTag
Canvas `shouldSatisfy` isPreservedTag
Code `shouldSatisfy` isPreservedTag
Kbd `shouldSatisfy` isPreservedTag
Pre `shouldSatisfy` isPreservedTag
Script `shouldSatisfy` isPreservedTag
Style `shouldSatisfy` isPreservedTag
Template `shouldSatisfy` isPreservedTag
TextArea `shouldSatisfy` isPreservedTag
specify "isPreservedTagStack" $ do
[] `shouldNotSatisfy` isPreservedTagStack
[P, Em] `shouldNotSatisfy` isPreservedTagStack
[Html, Head, Title] `shouldNotSatisfy` isPreservedTagStack
[Div, Script] `shouldSatisfy` isPreservedTagStack
[Html, Head, Style] `shouldSatisfy` isPreservedTagStack
[P, Kbd] `shouldSatisfy` isPreservedTagStack
[Pre, Code] `shouldSatisfy` isPreservedTagStack
[Template, P] `shouldSatisfy` isPreservedTagStack
specify "shouldBePreserved" $ do
HtmlStartTag [] P "" `shouldNotSatisfy` isPreservedEntity
HtmlEndTag [] P `shouldNotSatisfy` isPreservedEntity
HtmlText [] "" `shouldNotSatisfy` isPreservedEntity
HtmlCdata [] "" `shouldNotSatisfy` isPreservedEntity
HtmlComment [] " ... " `shouldSatisfy` isPreservedEntity
HtmlStartTag [P] Em "" `shouldNotSatisfy` isPreservedEntity
HtmlEndTag [P] Em `shouldNotSatisfy` isPreservedEntity
HtmlText [P] "" `shouldNotSatisfy` isPreservedEntity
HtmlCdata [P] "" `shouldNotSatisfy` isPreservedEntity
HtmlComment [P] " ... " `shouldSatisfy` isPreservedEntity
HtmlStartTag [P] Code "" `shouldSatisfy` isPreservedEntity
HtmlEndTag [P] Code `shouldSatisfy` isPreservedEntity
HtmlStartTag [Pre] Span "" `shouldSatisfy` isPreservedEntity
HtmlEndTag [Pre] Span `shouldSatisfy` isPreservedEntity
HtmlText [Pre] "" `shouldSatisfy` isPreservedEntity
HtmlCdata [Pre] "" `shouldSatisfy` isPreservedEntity
HtmlComment [Pre] " ... " `shouldSatisfy` isPreservedEntity