psc-ide-0.5.0: test/PureScript/IdeSpec.hs
{-# LANGUAGE OverloadedStrings #-}
module PureScript.IdeSpec where
import Control.Monad.State
import Data.List
import qualified Data.Map as Map
import PureScript.Ide
import PureScript.Ide.Types
import Test.Hspec
testState :: PscState
testState = PscState (Map.fromList [("Data.Array", []), ("Control.Monad.Eff", [])])
spec :: SpecWith ()
spec = do
describe "list" $ do
describe "loadedModules" $ do
it "returns an empty list when no modules are loaded" $ do
result <- evalStateT printModules emptyPscState
result `shouldBe` ModuleList []
it "returns the list of loaded modules" $ do
ModuleList result <- evalStateT printModules testState
sort result `shouldBe` sort ["Data.Array", "Control.Monad.Eff"]