]> gitweb.michael.orlitzky.com - hath.git/blobdiff - test/ShellTests.hs
Bulletproof the test suite and examples; version bump the cabal file.
[hath.git] / test / ShellTests.hs
index 1e884d5ef435eb5d7631e76046515a6d19d59724..6a55da0495d2fb7848e4da3730feca3c5e275f0e 100644 (file)
@@ -1,10 +1,24 @@
 module Main
 where
 
-import System.Process ( system )
+import System.Process (
+   CreateProcess( env ),
+   createProcess,
+   shell,
+   waitForProcess )
 import System.Exit ( exitWith )
 
 main :: IO ()
 main = do
-  result <- system "shelltest test/shell/*.test"
+  -- Get a CreateProcess object corresponding to our shell command.
+  let createproc = shell "shelltest test/shell/*.test"
+
+  -- But clear its environment before running the command.
+  let empty_env_createproc = createproc { env = Just [] }
+
+  -- Ignore stdin/stdout/stderr...
+  (_,_,_,hproc) <- createProcess empty_env_createproc
+
+  -- Now run the ProcessHandle and exit with its result.
+  result <- waitForProcess hproc
   exitWith result