Add notice that this was merged into haskell/lsp
[lsp-test.git] / lsp-test.cabal
index 6c7a26b3ad19bdc547e28b2f15aecfe9ff37d96f..17ef4801fad5567b4dfda39e933df2732c527586 100644 (file)
@@ -1,42 +1,49 @@
 name:                lsp-test
-version:             0.8.2.0
+version:             0.13.0.0
 synopsis:            Functional test framework for LSP servers.
 description:
   A test framework for writing tests against
   <https://microsoft.github.io/language-server-protocol/ Language Server Protocol servers>.
-  @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
+  @Language.LSP.Test@ launches your server as a subprocess and allows you to simulate a session
+  down to the wire, and @Language.LSP.Test@ can replay captured sessions from
   <haskell-lsp https://hackage.haskell.org/package/haskell-lsp>.
-  It's currently used for testing in <https://github.com/haskell/haskell-ide-engine haskell-ide-engine>.
+  To see examples of it in action, check out <https://github.com/haskell/haskell-ide-engine haskell-ide-engine>,
+  <https://github.com/haskell/haskell-language-server haskell-language-server> and
+  <https://github.com/digital-asset/ghcide ghcide>.
 homepage:            https://github.com/bubba/lsp-test#readme
 license:             BSD3
 license-file:        LICENSE
 author:              Luke Lau
 maintainer:          luke_lau@icloud.com
 bug-reports:         https://github.com/bubba/lsp-test/issues
-copyright:           2019 Luke Lau
+copyright:           2021 Luke Lau
 category:            Testing
 build-type:          Simple
 cabal-version:       2.0
 extra-source-files:  README.md
                    , ChangeLog.md
-tested-with:         GHC == 8.2.2 , GHC == 8.4.2 , GHC == 8.4.3, GHC == 8.6.4, GHC == 8.6.5, GHC == 8.8.1
+tested-with:         GHC == 8.4.4, GHC == 8.6.5, GHC == 8.8.3, GHC == 8.10.1, GHC == 8.10.2
 
 source-repository head
   type:     git
   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
-  exposed-modules:     Language.Haskell.LSP.Test
-                     , Language.Haskell.LSP.Test.Replay
-  reexported-modules:  haskell-lsp:Language.Haskell.LSP.Types
-                     , haskell-lsp:Language.Haskell.LSP.Types.Capabilities
+  exposed-modules:     Language.LSP.Test
+  reexported-modules:  lsp-types:Language.LSP.Types
+                     , lsp-types:Language.LSP.Types.Capabilities
                      , parser-combinators:Control.Applicative.Combinators
   default-language:    Haskell2010
   build-depends:       base >= 4.10 && < 5
-                     , haskell-lsp == 0.18.*
+                     , lsp-types == 1.1.*
                      , aeson
+                     , time
                      , aeson-pretty
                      , ansi-terminal
                      , async
@@ -48,28 +55,45 @@ library
                      , Diff
                      , directory
                      , filepath
+                     , Glob >= 0.9 && < 0.11
                      , lens
                      , mtl
-                     , parser-combinators
+                     , parser-combinators >= 1.2
                      , process >= 1.6
-                     , rope-utf16-splay
                      , text
                      , transformers
                      , unordered-containers
+                     , some
   if os(windows)
     build-depends:     Win32
   else
     build-depends:     unix
-  other-modules:       Language.Haskell.LSP.Test.Compat
-                       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
+  other-modules:       Language.LSP.Test.Compat
+                       Language.LSP.Test.Decoding
+                       Language.LSP.Test.Exceptions
+                       Language.LSP.Test.Files
+                       Language.LSP.Test.Parsing
+                       Language.LSP.Test.Server
+                       Language.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.11 && < 5
+                     , lsp == 1.1.*
+                     , aeson
+                     , unordered-containers
+                     , directory
+                     , filepath
+                     , unliftio
+                     , mtl
+  default-language:    Haskell2010
+  scope:               private
+  if !flag(DummyServer)
+    buildable:         False
+
 test-suite tests
   type:                exitcode-stdio-1.0
   main-is:             Test.hs
@@ -78,10 +102,13 @@ test-suite tests
   build-depends:       base >= 4.10 && < 5
                      , hspec
                      , lens
-                     , haskell-lsp == 0.18.*
+                     , lsp-types == 1.1.*
                      , lsp-test
                      , data-default
                      , aeson
                      , unordered-containers
                      , text
+                     , directory
+                     , filepath
   default-language:    Haskell2010
+  build-tool-depends:  lsp-test:dummy-server