Remove old testing servers from readme
[lsp-test.git] / lsp-test.cabal
1 name:                lsp-test
2 version:             0.10.3.0
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   It's currently used for testing in <https://github.com/haskell/haskell-ide-engine haskell-ide-engine>.
11 homepage:            https://github.com/bubba/lsp-test#readme
12 license:             BSD3
13 license-file:        LICENSE
14 author:              Luke Lau
15 maintainer:          luke_lau@icloud.com
16 bug-reports:         https://github.com/bubba/lsp-test/issues
17 copyright:           2019 Luke Lau
18 category:            Testing
19 build-type:          Simple
20 cabal-version:       2.0
21 extra-source-files:  README.md
22                    , ChangeLog.md
23 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, GHC == 8.10.1
24
25 source-repository head
26   type:     git
27   location: https://github.com/bubba/lsp-test/
28
29 Flag DummyServer
30   Description: Build the dummy server executable used in testing
31   Default:     False
32   Manual:      True
33
34 library
35   hs-source-dirs:      src
36   exposed-modules:     Language.Haskell.LSP.Test
37                      , Language.Haskell.LSP.Test.Replay
38   reexported-modules:  haskell-lsp:Language.Haskell.LSP.Types
39                      , haskell-lsp:Language.Haskell.LSP.Types.Capabilities
40                      , parser-combinators:Control.Applicative.Combinators
41   default-language:    Haskell2010
42   build-depends:       base >= 4.10 && < 5
43                      , haskell-lsp >= 0.22 && < 0.23
44                      , aeson
45                      , aeson-pretty
46                      , ansi-terminal
47                      , async
48                      , bytestring
49                      , conduit
50                      , conduit-parse == 0.2.*
51                      , containers >= 0.5.9
52                      , data-default
53                      , Diff
54                      , directory
55                      , filepath
56                      , lens
57                      , mtl
58                      , parser-combinators >= 1.2
59                      , process >= 1.6
60                      , text
61                      , transformers
62                      , unordered-containers
63   if os(windows)
64     build-depends:     Win32
65   else
66     build-depends:     unix
67   other-modules:       Language.Haskell.LSP.Test.Compat
68                        Language.Haskell.LSP.Test.Decoding
69                        Language.Haskell.LSP.Test.Exceptions
70                        Language.Haskell.LSP.Test.Files
71                        Language.Haskell.LSP.Test.Messages
72                        Language.Haskell.LSP.Test.Parsing
73                        Language.Haskell.LSP.Test.Server
74                        Language.Haskell.LSP.Test.Session
75   ghc-options:         -W
76
77 executable dummy-server
78   main-is:             Main.hs
79   hs-source-dirs:      test/dummy-server
80   ghc-options:         -W
81   build-depends:       base >= 4.10 && < 5
82                      , haskell-lsp
83                      , data-default
84                      , aeson
85                      , unordered-containers
86   default-language:    Haskell2010
87   scope:               private
88   if !flag(DummyServer)
89     buildable:         False
90
91 test-suite tests
92   type:                exitcode-stdio-1.0
93   main-is:             Test.hs
94   hs-source-dirs:      test
95   ghc-options:         -W
96   build-depends:       base >= 4.10 && < 5
97                      , hspec
98                      , lens
99                      , haskell-lsp >= 0.22 && < 0.23
100                      , lsp-test
101                      , data-default
102                      , aeson
103                      , unordered-containers
104                      , text
105                      , directory
106                      , filepath
107   default-language:    Haskell2010
108   build-tool-depends: lsp-test:dummy-server