Add SessionConfig
[opengl.git] / test / ParsingTests.hs
index c8977b53e33f6915be4aae84bfa19d0c88b89578..8676b2d6874fbdaf196cb4728dbfef422f8b6e25 100644 (file)
@@ -1,4 +1,5 @@
 {-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE FlexibleInstances #-}
 module ParsingTests where
 
 import Control.Lens hiding (List)
@@ -7,8 +8,14 @@ import Language.Haskell.LSP.Test
 import Language.Haskell.LSP.Types
 import Data.Conduit
 import Data.Conduit.Parser
+import Data.Default
 import Test.Hspec
 
+type TestSession = ConduitParser FromServerMessage IO
+
+instance MonadSessionConfig IO where
+  sessionConfig = return def
+
 parsingSpec :: Spec
 parsingSpec =
   describe "diagnostics" $ do
@@ -20,7 +27,7 @@ parsingSpec =
     it "get picked up" $ do
       let source = yield testDiag
           session = do
-            diags <- publishDiagnosticsNotification :: ConduitParser FromServerMessage IO PublishDiagnosticsNotification
+            diags <- publishDiagnosticsNotification :: TestSession PublishDiagnosticsNotification
             return $ diags ^. params . uri
       runConduit (source .| runConduitParser session) `shouldReturn` Uri "foo"
     it "get picked up after skipping others before" $ do
@@ -32,6 +39,6 @@ parsingSpec =
           notTestDiag = NotLogMessage (NotificationMessage "2.0" WindowLogMessage (LogMessageParams MtLog "foo"))
           source = yield notTestDiag >> yield testDiag
           session = do
-            diags <- skipManyTill anyNotification notification :: ConduitParser FromServerMessage IO PublishDiagnosticsNotification
+            diags <- skipManyTill anyNotification notification :: TestSession PublishDiagnosticsNotification
             return $ diags ^. params . uri
       runConduit (source .| runConduitParser session) `shouldReturn` Uri "foo"