Metadata-Version: 1.1
Name: systest
Version: 0.2.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
