Functions | |
def | RunTests |
def | SetDefaultCompoundLib |
def ost::testutils::RunTests | ( | ) |
This function behaves as a custom TestLoader for python unittests. With no system arguments, the default unittest TestRunner is used. If the first system argument (sys.argv[1]) is set to 'xml', a XMLTestRunner is used, which produces a JUnit compatible XML output file. Within the current module, each function is identified which is a subclass of unittest.TestCase and for each TestCase, a test suite is executed, producing an individual output file for each TestCase. The output file has the name, 'PYTEST-<TestCaseName>.xml'. Example of a Python testcase: .. code-block:: python import unittest class TestRenumber(unittest.TestCase): def setUp(self): # prepare stuff" pass def testSomeFunction(self): # do some asserts pass if __name__ == "__main__": from ost import testutils testutils.RunTests()
Definition at line 1 of file testutils.py.
def ost::testutils::SetDefaultCompoundLib | ( | ) |
This function tries to ensure that a default compound library is set. When calling scripts with ``ost`` this is not needed, but since unit tests are called with ``python`` we need to ensure that it is set. The function is only expected to succeed (and return True) if ``COMPOUND_LIB`` was set when :ref:`configuring the compilation <cmake-flags>`. It tries the following: - get it with :func:`ost.conop.GetDefaultLib` - look for ``compounds.chemlib`` in ``$OST_ROOT/share/openstructure`` - if ``OST_ROOT`` not set in the above, try to guess it based on the path of the ``conop`` module To use this check modify the :func:`RunTests` call to read: .. code-block:: python if __name__ == "__main__": from ost import testutils if testutils.SetDefaultCompoundLib(): testutils.RunTests() else: print 'No compound library available. Ignoring test_XXX.py tests.' :return: True, if a compound library was found and set to be accessed with :func:`ost.conop.GetDefaultLib`. False otherwise.
Definition at line 57 of file testutils.py.