Skip to content

Commit 8080777

Browse files
committed
honor LSP_TEST_LOG_STDERR
1 parent 545ab04 commit 8080777

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

hls-test-utils/src/Test/Hls.hs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ import Data.Aeson (Value (Null), toJSON)
4141
import qualified Data.Aeson as A
4242
import Data.ByteString.Lazy (ByteString)
4343
import Data.Default (def)
44+
import Data.Maybe (fromMaybe)
4445
import qualified Data.Text as T
4546
import qualified Data.Text.Lazy as TL
4647
import qualified Data.Text.Lazy.Encoding as TL
@@ -64,6 +65,7 @@ import Language.LSP.Types hiding
6465
import Language.LSP.Types.Capabilities (ClientCapabilities)
6566
import System.Directory (getCurrentDirectory,
6667
setCurrentDirectory)
68+
import System.Environment (lookupEnv)
6769
import System.FilePath
6870
import System.IO.Unsafe (unsafePerformIO)
6971
import System.Process.Extra (createPipe)
@@ -160,14 +162,20 @@ runSessionWithServer' ::
160162
runSessionWithServer' plugin conf sconf caps root s = withLock lock $ keepCurrentDirectory $ do
161163
(inR, inW) <- createPipe
162164
(outR, outW) <- createPipe
165+
let logger = do
166+
logStdErr <- fromMaybe "0" <$> lookupEnv "LSP_TEST_LOG_STDERR"
167+
if logStdErr == "0"
168+
then return noLogging
169+
else argsLogger testing
170+
163171
server <-
164172
async $
165173
Ghcide.defaultMain
166174
testing
167175
{ argsHandleIn = pure inR,
168176
argsHandleOut = pure outW,
169177
argsDefaultHlsConfig = conf,
170-
argsLogger = pure noLogging,
178+
argsLogger = logger,
171179
argsIdeOptions = \config sessionLoader ->
172180
let ideOptions = (argsIdeOptions def config sessionLoader) {optTesting = IdeTesting True}
173181
in ideOptions {optShakeOptions = (optShakeOptions ideOptions) {shakeThreads = 2}},

0 commit comments

Comments
 (0)