sydtest-typed-process-0.0.0.0: A typed-process companion library for sydtest
Safe HaskellNone
LanguageHaskell2010

Test.Syd.Process.Typed

Synopsis

Documentation

typedProcessSpec :: ProcessConfig stdin stdout stderr -> TestDefM outers (Process stdin stdout stderr) result -> TestDefM outers () result Source #

Run a given process while a test is running and give access to a process handle as an inner resource.

See typedProcessSetupFunc.

outerTypedProcessSpec :: ProcessConfig stdin stdout stderr -> TestDefM (Process stdin stdout stderr ': outers) inner result -> TestDefM outers inner result Source #

Run a given process while a group of tests is running and give access to a process handle as an outer resource.

See typedProcessSetupFunc.

FOOTGUN

Expand

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.

typedProcessSetupFunc :: ProcessConfig stdin stdout stderr -> SetupFunc (Process stdin stdout stderr) Source #

Set up a process beforehand and stop it afterwards.

The process will be terminated using stopProcess.