Metadata-Version: 1.1
Name: systest
Version: 0.3.0
Summary: System test framework.
Home-page: https://github.com/eerimoq/systest
Author: Erik Moqvist
Author-email: erik.moqvist@gmail.com
License: MIT
Description: |buildstatus|_
        
        Installation
        ============
        
        .. code-block:: python
        
            pip install systest
        
        Description
        ===========
        
        Execute a sequence of test cases in serial and/or parallel.
        
        Test cases in a list are executed in serial and test cases in a tuple
        are executed in parallel in separate Python threads.
        
        Example usage
        =============
        
        See the test suite: https://github.com/eerimoq/systest/blob/master/tests/test_systest.py
        
        For example, the sequence below starts with test case
        ``MyTestCase("1")``. When ``MyTestCase("1")`` has been
        executed, ``MyTestCase("2")`` and the list of
        ``MyTestCase("3")`` and ``MyTestCase("4")`` are executed
        in parallel. When both ``MyTestCase("2")`` and the list
        of ``MyTestCase("3")`` and ``MyTestCase("4")`` has been
        executed, ``MyTestCase("5")`` is executed. Then the
        sequence ends.
        
        .. code-block:: python
        
           from systest import Sequence, TestCase
        
           class MyTestCase(TestCase):
               def __init__(self, name):
                   super(MyTestCase, self).__init__()
                   self.name = "my_testcase_" + name
               def run(self):
                   self.log("Hello!")
        
           class MySequence(Sequence):
               def __init__(self):
                   super(MySequence, self).__init__("my_sequence")
               def run(self):
                   self.sequencer.run([
                       MyTestCase("1"),
                       (
                           MyTestCase("2"),
                           [
                               MyTestCase("3"),
                               MyTestCase("4")
                           ]
                       ),
                       MyTestCase("5")
                   ])
        
           MySequence().execute()
        
        The output is:
        
        .. code-block:: text
        
           Name: my_sequence
           Date: 2016-02-02 18:42:40.446213
           Node: erik-VirtualBox
           User: erik
           ---------------------------------------------------------------
           Name: my_testcase_1
           Description:
           None
           2016-02-02 18:42:40.488127 my_testcase_1 Hello!
           
           my_testcase_1: PASSED in 0m 0s
           ---------------------------------------------------------------
           Name: my_testcase_2
           Description:
           None
           2016-02-02 18:42:40.490369 my_testcase_2 Hello!
           
           my_testcase_2: PASSED in 0m 0s
           ---------------------------------------------------------------
           Name: my_testcase_3
           Description:
           None
           2016-02-02 18:42:40.491976 my_testcase_3 Hello!
           
           my_testcase_3: PASSED in 0m 0s
           ---------------------------------------------------------------
           Name: my_testcase_4
           Description:
           None
           2016-02-02 18:42:40.494298 my_testcase_4 Hello!
           
           my_testcase_4: PASSED in 0m 0s
           ---------------------------------------------------------------
           Name: my_testcase_5
           Description:
           None
           2016-02-02 18:42:40.496103 my_testcase_5 Hello!
           
           my_testcase_5: PASSED in 0m 0s
           
           ---------------------- Test report begin ----------------------
           
           [
               [
                   my_testcase_1: PASSED,
                   (
                       my_testcase_2: PASSED,
                       [
                           my_testcase_3: PASSED,
                           my_testcase_4: PASSED
                       ]
                   ),
                   my_testcase_5: PASSED
               ]
           ]
           
           Execution time: 0m 0s
           
           ----------------------- Test report end -----------------------
        
        .. |buildstatus| image:: https://travis-ci.org/eerimoq/systest.svg
        .. _buildstatus: https://travis-ci.org/eerimoq/systest
        
Keywords: test,system,sequencer,parallel
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 3
