+ describe "rename" $
+ it "works" $ runSession "hie --lsp" "test/data" $ do
+ doc <- openDoc "Rename.hs" "haskell"
+ rename doc (Position 1 0) "bar"
+ documentContents doc >>= liftIO . shouldBe "main = bar\nbar = return 42\n"
+
+ describe "getHover" $
+ it "works" $ runSession "hie --lsp" "test/data/renamePass" $ do
+ doc <- openDoc "Desktop/simple.hs" "haskell"
+ -- hover returns nothing until module is loaded
+ skipManyTill loggingNotification $ count 2 noDiagnostics
+ hover <- getHover doc (Position 45 9) -- putStrLn
+ liftIO $ hover `shouldSatisfy` isJust
+