X-Git-Url: http://git.lukelau.me/?a=blobdiff_plain;f=test%2FTest.hs;h=2372cbefff91ebf9c2b6004a301d6cab0a1e5f63;hb=8cd3d41fef5b055ee1c79e6d83858d70c599367b;hp=9319a779ee22cc4f2cac5d9e7563a16c878e3ae7;hpb=3c3116cfde875e483ec70df6069a864838283885;p=lsp-test.git diff --git a/test/Test.hs b/test/Test.hs index 9319a77..2372cbe 100644 --- a/test/Test.hs +++ b/test/Test.hs @@ -30,12 +30,11 @@ import System.Timeout main = hspec $ do describe "Session" $ do it "fails a test" $ - -- TODO: Catch the exception in haskell-lsp-test and provide nicer output let session = runSession "hie" fullCaps "test/data/renamePass" $ do openDoc "Desktop/simple.hs" "haskell" skipMany loggingNotification anyRequest - in session `shouldThrow` anyException + in session `shouldThrow` anySessionException it "initializeResponse" $ runSession "hie" fullCaps "test/data/renamePass" $ do rsp <- initializeResponse liftIO $ rsp ^. result `shouldNotBe` Nothing @@ -260,6 +259,13 @@ main = hspec $ do defs <- getDefinitions doc pos liftIO $ defs `shouldBe` [Location (doc ^. uri) (mkRange 28 0 28 7)] + describe "getTypeDefinitions" $ + it "works" $ runSession "hie" fullCaps "test/data/renamePass" $ do + doc <- openDoc "Desktop/simple.hs" "haskell" + let pos = Position 20 23 -- Quit value + defs <- getTypeDefinitions doc pos + liftIO $ defs `shouldBe` [Location (doc ^. uri) (mkRange 10 0 14 19)] -- Type definition + describe "waitForDiagnosticsSource" $ it "works" $ runSession "hie" fullCaps "test/data" $ do openDoc "Error.hs" "haskell"