-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | A typed-process companion library for sydtest
--
-- A typed-process companion library for sydtest
@package sydtest-process
@version 0.0.0.0
module Test.Syd.Process
-- | Run a given process while a test is running and give access to a
-- process handle as an inner resource.
--
-- See processSetupFunc.
processSpec :: CreateProcess -> TestDefM outers (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle) result -> TestDefM outers () result
-- | Run a given process while a group of tests is running and give access
-- to a process handle as an outer resource.
--
-- See processSetupFunc.
--
--
FOOTGUN
--
-- The process will be shared accross multiple tests. This may well be a
-- good idea because starting the process can be prohibitively expensive
-- to do around every test. However, sharing the process means that tests
-- could be sharing state. When using this function, it is important to
-- implement some form of cleaning the state before every test. It is
-- also important to use sequential if some such state is
-- maintained (and cleaned) so that the state is not cleaned while
-- another test is running.
outerProcessSpec :: CreateProcess -> TestDefM ((Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle) : outers) inner result -> TestDefM outers inner result
-- | Set up a process beforehand and stop it afterwards.
--
-- The process will be terminated using cleanupProcess.
processSetupFunc :: CreateProcess -> SetupFunc (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle)