Add notice that this was merged into haskell/lsp
[lsp-test.git] / lsp-test.cabal
1 name:                lsp-test
2 version:             0.11.0.7
3 synopsis:            Functional test framework for LSP servers.
4 description:
5   A test framework for writing tests against
6   <https://microsoft.github.io/language-server-protocol/ Language Server Protocol servers>.
7   @Language.Haskell.LSP.Test@ launches your server as a subprocess and allows you to simulate a session
8   down to the wire, and @Language.Haskell.LSP.Test@ can replay captured sessions from
9   <haskell-lsp https://hackage.haskell.org/package/haskell-lsp>.
10   To see examples of it in action, check out <https://github.com/haskell/haskell-ide-engine haskell-ide-engine>,
11   <https://github.com/haskell/haskell-language-server haskell-language-server> and
12   <https://github.com/digital-asset/ghcide ghcide>.
13 homepage:            https://github.com/bubba/lsp-test#readme
14 license:             BSD3
15 license-file:        LICENSE
16 author:              Luke Lau
17 maintainer:          luke_lau@icloud.com
18 bug-reports:         https://github.com/bubba/lsp-test/issues
19 copyright:           2020 Luke Lau
20 category:            Testing
21 build-type:          Simple
22 cabal-version:       2.0
23 extra-source-files:  README.md
24                    , ChangeLog.md
25 tested-with:         GHC == 8.4.4, GHC == 8.6.5, GHC == 8.8.3, GHC == 8.10.1
26
27 source-repository head
28   type:     git
29   location: https://github.com/bubba/lsp-test/
30
31 Flag DummyServer
32   Description: Build the dummy server executable used in testing
33   Default:     False
34   Manual:      True
35
36 library
37   hs-source-dirs:      src
38   exposed-modules:     Language.Haskell.LSP.Test
39                      , Language.Haskell.LSP.Test.Replay
40   reexported-modules:  haskell-lsp:Language.Haskell.LSP.Types
41                      , haskell-lsp:Language.Haskell.LSP.Types.Capabilities
42                      , parser-combinators:Control.Applicative.Combinators
43   default-language:    Haskell2010
44   build-depends:       base >= 4.10 && < 5
45                      , haskell-lsp >= 0.22 && < 0.24
46                      , aeson
47                      , aeson-pretty
48                      , ansi-terminal
49                      , async
50                      , bytestring
51                      , conduit
52                      , conduit-parse == 0.2.*
53                      , containers >= 0.5.9
54                      , data-default
55                      , Diff
56                      , directory
57                      , filepath
58                      , Glob >= 0.9 && < 0.11
59                      , lens
60                      , mtl
61                      , parser-combinators >= 1.2
62                      , process >= 1.6
63                      , text
64                      , transformers
65                      , unordered-containers
66   if os(windows)
67     build-depends:     Win32
68   else
69     build-depends:     unix
70   other-modules:       Language.Haskell.LSP.Test.Compat
71                        Language.Haskell.LSP.Test.Decoding
72                        Language.Haskell.LSP.Test.Exceptions
73                        Language.Haskell.LSP.Test.Files
74                        Language.Haskell.LSP.Test.Messages
75                        Language.Haskell.LSP.Test.Parsing
76                        Language.Haskell.LSP.Test.Server
77                        Language.Haskell.LSP.Test.Session
78   ghc-options:         -W
79
80 executable dummy-server
81   main-is:             Main.hs
82   hs-source-dirs:      test/dummy-server
83   ghc-options:         -W
84   build-depends:       base >= 4.10 && < 5
85                      , haskell-lsp >= 0.23 && < 0.24
86                      , data-default
87                      , aeson
88                      , unordered-containers
89                      , directory
90                      , filepath
91   default-language:    Haskell2010
92   scope:               private
93   if !flag(DummyServer)
94     buildable:         False
95
96 test-suite tests
97   type:                exitcode-stdio-1.0
98   main-is:             Test.hs
99   hs-source-dirs:      test
100   ghc-options:         -W
101   build-depends:       base >= 4.10 && < 5
102                      , hspec
103                      , lens
104                      , haskell-lsp >= 0.22 && < 0.24
105                      , lsp-test
106                      , data-default
107                      , aeson
108                      , unordered-containers
109                      , text
110                      , directory
111                      , filepath
112   default-language:    Haskell2010
113   build-tool-depends: lsp-test:dummy-server