gnatpython-mainloop(1) command line interface for testsuite mainloop (in the ACATS/Fixed bugs style)


gnatpython-mainloop [options] test_list_file command_pattern


gnatpython-mainloop program use the MainLoop package which provides a class called MainLoop that provides a generic implementation of a testsuite main loop. Parallelism, abortion and time control are the key features.

Each MainLoop instance controls a set of Workers whose number is set by the user. The list of tasks/tests to be achieved by the workers, is provided by a list. The mainloop distribute the elements to the the workers when they have nothing to do. Usually, an element is a string identifying the test to be run. An element can also be a list in that case the worker will execute sequentially each "subelement". This case is used to address dependency between tests (occurs for example with the ACATS).

When a worker is asked to run a test, the command is executed by calling run_testcase (testid). Once a test is finished the function collect_result will be called with test id, and process (a gnatpython.ex.Run object) and the job_info as parameters. Both run_testcase and collect_result are user defined functions.

Note also that from the user point view there is no parallelism to handle. The two user defined function run_testcase and collect_result are called sequentially.

Note that this main page is written using comments from the code by the package maintainer.


Options are not documented.