fradrive/test/PandocSpec.hs
2022-07-14 18:17:36 +02:00

28 lines
780 B
Haskell

module PandocSpec where
import TestImport
import Utils.Print
import qualified Data.Map.Lazy as Map
import Text.Pandoc
import Text.Pandoc.Arbitrary ()
spec :: Spec
spec = describe "addMeta" $ do
it "should overwrite existing settings" $ do
metaOverwrite <- generate arbitrary
pd <- generate arbitrary
let (Pandoc newMeta _) = addMeta metaOverwrite pd
Map.toList (unMeta newMeta) `shouldContain` Map.toList (unMeta metaOverwrite)
it "should preserve untouched settings" $ do
metaOverwrite <- generate arbitrary
pd <- generate arbitrary
let
(Pandoc keptMeta _) = pd
(Pandoc newMeta _) = addMeta metaOverwrite pd
Map.toList (unMeta newMeta) `shouldContain` Map.toList ((unMeta keptMeta) `Map.difference` (unMeta metaOverwrite))