diff options
Diffstat (limited to 'haddock-test/src/Test/Haddock')
| -rw-r--r-- | haddock-test/src/Test/Haddock/Config.hs | 4 | ||||
| -rw-r--r-- | haddock-test/src/Test/Haddock/Process.hs | 14 | 
2 files changed, 9 insertions, 9 deletions
diff --git a/haddock-test/src/Test/Haddock/Config.hs b/haddock-test/src/Test/Haddock/Config.hs index 68f6b867..6447361f 100644 --- a/haddock-test/src/Test/Haddock/Config.hs +++ b/haddock-test/src/Test/Haddock/Config.hs @@ -224,13 +224,13 @@ printVersions env haddockPath = do          { pcEnv = Just env          , pcArgs = ["--version"]          } -    waitForSuccess "Failed to run `haddock --version`" handleHaddock +    void $ waitForSuccess "Failed to run `haddock --version`" stderr handleHaddock      handleGhc <- runProcess' haddockPath $ processConfig          { pcEnv = Just env          , pcArgs = ["--ghc-version"]          } -    waitForSuccess "Failed to run `haddock --ghc-version`" handleGhc +    void $ waitForSuccess "Failed to run `haddock --ghc-version`" stderr handleGhc  baseDependencies :: FilePath -> IO [String] diff --git a/haddock-test/src/Test/Haddock/Process.hs b/haddock-test/src/Test/Haddock/Process.hs index 52bf9533..a6cab9ac 100644 --- a/haddock-test/src/Test/Haddock/Process.hs +++ b/haddock-test/src/Test/Haddock/Process.hs @@ -40,10 +40,10 @@ runProcess' :: FilePath -> ProcessConfig -> IO ProcessHandle  runProcess' path (ProcessConfig { .. }) = runProcess      path pcArgs pcWorkDir pcEnv pcStdIn pcStdOut pcStdErr - -waitForSuccess :: String -> ProcessHandle -> IO () -waitForSuccess msg handle = do -    result <- waitForProcess handle -    unless (result == ExitSuccess) $ do -        hPutStrLn stderr $ msg -        exitFailure +-- | Wait for a process to finish running. If it ends up failing, print out the +-- error message. +waitForSuccess :: String -> Handle -> ProcessHandle -> IO Bool +waitForSuccess msg out handle = do +    succeeded <- fmap (== ExitSuccess) $ waitForProcess handle +    unless succeeded $ hPutStrLn out msg +    pure succeeded  | 
