specup-0.2.0.0: test/Spec.hs
import Prelude hiding (unlines)
import Test.Hspec (describe, hspec, it, shouldBe, expectationFailure)
import Data.Text (Text, unlines)
import qualified Data.Text.Lazy as LazyText
import System.Process (createProcess, StdStream(..), proc, std_out, std_err)
import SpecUp (invokeTemplateOnSpec)
a = do (_,mOut, mErr, procHandle) <- createProcess $ (proc "ls" []) {std_out = CreatePipe, std_err = CreatePipe}
print "output"
print mOut
print "error"
print mErr
return ()
main = (a >>) $ hspec $ do
it "should pass new" $
invokeTemplateOnSpec testTmpl sampleTestYaml
`shouldReturnMarkupOf`
[ "# value1"
, "# value2"
]
shouldReturnMarkupOf output expectedMarkup =
either
(expectationFailure . ("expected Right but got Left " <>))
(`shouldBe` resultLines expectedMarkup)
output
sampleTestYaml = "- fieldName: value1\n- fieldName: value2"
testTmpl = "{{# .}}# {{{ fieldName }}}\n{{/ .}}"
resultLines = LazyText.unlines