Check a program's output and exit code.
An ExecTestBase runs a program and compares its standard output,
standard error, and exit code with expected values. The program
may be provided with command-line arguments and/or standard
input.
The test passes if the standard output, standard error, and
exit code are identical to the expected values.
Methods
|
|
MakeEnvironment
RunProgram
__CompareText
|
|
MakeEnvironment
|
MakeEnvironment ( self, context )
Construct the environment for executing the target program.
Exceptions
|
|
ValueError, qm.error( "invalid environment assignment", assignment = assignment )
|
|
|
RunProgram
|
RunProgram (
self,
program,
arguments,
context,
result,
)
Run the program .
-
program
- The path to the program to run.
-
arguments
- A list of the arguments to the program. This
list must contain a first argument corresponding to 'argv[0]'.
-
context
- A
Context giving run-time parameters to the
test.
-
result
- A
Result object. The outcome will be
Result.PASS when this method is called. The result may be
modified by this method to indicate outcomes other than
Result.PASS or to add annotations.
|
|
__CompareText
|
__CompareText (
self,
s1,
s2,
)
Compare s1 and s2 , ignoring line endings.
-
s1
- A string.
-
s2
- A string.
- returns
- True if
s1 and s2 are the same, ignoring
differences in line endings.
|
|