lsst.utils  13.0-5-g109db22
 All Classes Namespaces Files Functions Variables Groups Pages
Public Member Functions | Static Public Attributes | List of all members
lsst.utils.tests.ExecutablesTestCase Class Reference

Test that executables can be run and return good status. More...

Inheritance diagram for lsst.utils.tests.ExecutablesTestCase:

Public Member Functions

def setUpClass
 
def testSanity
 
def assertExecutable
 Check an executable runs and returns good status. More...
 
def create_executable_tests
 Discover executables to test and create corresponding test methods. More...
 

Static Public Attributes

int TESTS_DISCOVERED = -1
 

Detailed Description

Test that executables can be run and return good status.

The test methods are dynamically created. Callers must subclass this class in their own test file and invoke the discover_tests() class method to register the tests.

Definition at line 183 of file tests.py.

Member Function Documentation

def lsst.utils.tests.ExecutablesTestCase.assertExecutable (   self,
  executable,
  root_dir = None,
  args = None,
  msg = None 
)

Check an executable runs and returns good status.

Parameters
executable,:Path to an executable. root_dir is not used if this is an absolute path.
root_dir,:Directory containing exe. Ignored if None.
args,:List or tuple of arguments to be provided to the executable.
msg,:Message to use when the test fails. Can be None for default message.

Prints output to standard out. On bad exit status the test fails. If the executable can not be located the test is skipped.

Definition at line 206 of file tests.py.

def lsst.utils.tests.ExecutablesTestCase.create_executable_tests (   cls,
  ref_file,
  executables = None 
)

Discover executables to test and create corresponding test methods.

Scans the directory containing the supplied reference file (usually file supplied from the test class) and look for executables. If executables are found a test method is created for each one. That test method will run the executable and check the returned value.

Executable scripts with a .py extension and shared libraries are ignored by the scanner.

This class method must be called before test discovery.

cls.discover_tests(file)

The list of executables can be overridden by passing in a sequence of explicit executables that should be tested. If an item in the sequence can not be found the test will be configured to skip rather than fail.

Definition at line 280 of file tests.py.

def lsst.utils.tests.ExecutablesTestCase.setUpClass (   cls)
Abort testing if automated test creation was enabled and
yet not tests were found.

Definition at line 193 of file tests.py.

def lsst.utils.tests.ExecutablesTestCase.testSanity (   self)
This test exists to ensure that there is at least one test to be
executed. This allows the test runner to trigger the class set up
machinery to test whether there are some executables to test.

Definition at line 200 of file tests.py.

Member Data Documentation

int lsst.utils.tests.ExecutablesTestCase.TESTS_DISCOVERED = -1
static

Definition at line 190 of file tests.py.


The documentation for this class was generated from the following file: