X-Git-Url: https://git.lukelau.me/?p=lsp-test.git;a=blobdiff_plain;f=lsp-test.cabal;h=0bf9dc9c797e9f50cb2a967ccb044ee7d90efd9c;hp=fc20dc7b07f1cd33ad6c7cb2af46adb92439b312;hb=6f3106ce987b2a3794ee7ab444c8bcc204a7b3d2;hpb=eb0bcf9d96d80c05eab5e8bf01e376bfb5df85d8 diff --git a/lsp-test.cabal b/lsp-test.cabal index fc20dc7..0bf9dc9 100644 --- a/lsp-test.cabal +++ b/lsp-test.cabal @@ -1,35 +1,37 @@ name: lsp-test -version: 0.1.0.0 +version: 0.11.0.7 synopsis: Functional test framework for LSP servers. description: A test framework for writing tests against . - @lsp-test@ launches your server as a subprocess and allows you to simulate a session - down to the wire. - Used for testing in . - > runSession "hie" fullCaps "path/to/root/dir" $ do - > doc <- openDoc "Desktop/simple.hs" "haskell" - > diags <- waitForDiagnostics - > let pos = Position 12 5 - > params = TextDocumentPositionParams doc - > hover <- request TextDocumentHover params -homepage: https://github.com/Bubba/haskell-lsp-test#readme + @Language.Haskell.LSP.Test@ launches your server as a subprocess and allows you to simulate a session + down to the wire, and @Language.Haskell.LSP.Test@ can replay captured sessions from + . + To see examples of it in action, check out , + and + . +homepage: https://github.com/bubba/lsp-test#readme license: BSD3 license-file: LICENSE author: Luke Lau maintainer: luke_lau@icloud.com -stability: experimental -bug-reports: https://github.com/Bubba/haskell-lsp-test/issues -copyright: 2018 Luke Lau +bug-reports: https://github.com/bubba/lsp-test/issues +copyright: 2020 Luke Lau category: Testing build-type: Simple cabal-version: 2.0 extra-source-files: README.md -tested-with: GHC == 8.2.2 , GHC == 8.4.2 , GHC == 8.4.3 + , ChangeLog.md +tested-with: GHC == 8.4.4, GHC == 8.6.5, GHC == 8.8.3, GHC == 8.10.1 source-repository head type: git - location: https://github.com/Bubba/haskell-lsp-test/ + location: https://github.com/bubba/lsp-test/ + +Flag DummyServer + Description: Build the dummy server executable used in testing + Default: False + Manual: True library hs-source-dirs: src @@ -39,27 +41,30 @@ library , haskell-lsp:Language.Haskell.LSP.Types.Capabilities , parser-combinators:Control.Applicative.Combinators default-language: Haskell2010 - build-depends: base >= 4.7 && < 5 - , haskell-lsp >= 0.5 + build-depends: base >= 4.10 && < 5 + , haskell-lsp >= 0.22 && < 0.24 , aeson + , time , aeson-pretty , ansi-terminal + , async , bytestring , conduit - , conduit-parse - , containers + , conduit-parse == 0.2.* + , containers >= 0.5.9 , data-default , Diff , directory , filepath + , Glob >= 0.9 && < 0.11 , lens , mtl - , parser-combinators - , process + , parser-combinators >= 1.2 + , process >= 1.6 , text , transformers , unordered-containers - , yi-rope + , some if os(windows) build-depends: Win32 else @@ -68,25 +73,42 @@ library Language.Haskell.LSP.Test.Decoding Language.Haskell.LSP.Test.Exceptions Language.Haskell.LSP.Test.Files - Language.Haskell.LSP.Test.Messages Language.Haskell.LSP.Test.Parsing Language.Haskell.LSP.Test.Server Language.Haskell.LSP.Test.Session ghc-options: -W +executable dummy-server + main-is: Main.hs + hs-source-dirs: test/dummy-server + ghc-options: -W + build-depends: base >= 4.10 && < 5 + , haskell-lsp >= 0.23 && < 0.24 + , data-default + , aeson + , unordered-containers + , directory + , filepath + default-language: Haskell2010 + scope: private + if !flag(DummyServer) + buildable: False + test-suite tests type: exitcode-stdio-1.0 main-is: Test.hs hs-source-dirs: test ghc-options: -W - build-depends: base >= 4.7 && < 5 + build-depends: base >= 4.10 && < 5 , hspec , lens - , data-default - , haskell-lsp >= 0.5 + , haskell-lsp >= 0.22 && < 0.24 , lsp-test + , data-default , aeson , unordered-containers , text + , directory + , filepath default-language: Haskell2010 - + build-tool-depends: lsp-test:dummy-server