Skip to content

Commit 6c83b01

Browse files
committed
honor LSP_TEST_LOG_STDERR
1 parent ed4413c commit 6c83b01

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
@@ -63,6 +64,7 @@ import Language.LSP.Types hiding
6364
import Language.LSP.Types.Capabilities (ClientCapabilities)
6465
import System.Directory (getCurrentDirectory,
6566
setCurrentDirectory)
67+
import System.Environment (lookupEnv)
6668
import System.FilePath
6769
import System.IO.Unsafe (unsafePerformIO)
6870
import System.Process.Extra (createPipe)
@@ -159,14 +161,20 @@ runSessionWithServer' ::
159161
runSessionWithServer' plugin conf sconf caps root s = withLock lock $ keepCurrentDirectory $ do
160162
(inR, inW) <- createPipe
161163
(outR, outW) <- createPipe
164+
let logger = do
165+
logStdErr <- fromMaybe "0" <$> lookupEnv "LSP_TEST_LOG_STDERR"
166+
if logStdErr == "0"
167+
then return noLogging
168+
else argsLogger testing
169+
162170
server <-
163171
async $
164172
Ghcide.defaultMain
165173
testing
166174
{ argsHandleIn = pure inR,
167175
argsHandleOut = pure outW,
168176
argsDefaultHlsConfig = conf,
169-
argsLogger = pure noLogging,
177+
argsLogger = logger,
170178
argsIdeOptions = \config sessionLoader ->
171179
let ideOptions = (argsIdeOptions def config sessionLoader) {optTesting = IdeTesting True}
172180
in ideOptions {optShakeOptions = (optShakeOptions ideOptions) {shakeThreads = 2}},

0 commit comments

Comments
 (0)