rasa-0.1.10: src/Rasa/Testing.hs
module Rasa.Testing (
testBufAction
) where
import Rasa.Internal.Interpreters
import Rasa.Internal.Action
import Rasa.Internal.Actions
import Rasa.Internal.BufAction
import Test.Hspec
import Control.Monad
import qualified Yi.Rope as Y
testBufAction :: (Show a, Eq a) => String -> Y.YiString -> a -> BufAction a -> Spec
testBufAction description txt expectation bufAction = join . runIO $
bootstrapAction $ do
ref <- addBuffer txt
mResult <- bufDo ref bufAction
case mResult of
Nothing -> error "(Err #75b72c) Buffer not found by BufRef"
Just res -> return $ it description (res `shouldBe` expectation)