Merge pull request #167 from ruda/test_temporary_dir

avocado.test: Use job.unique_id to build temporary path.
avocado.docs: Update documentation regarding argument parsing.

Update documentation regarding the last update on argument parsing.
Like option --silent goes to run subcommand and there's no
need to quote for multiples test names.

Signed-off-by: Ruda Moura <rmoura@redhat.com>
Merge pull request #170 from ruda/argument_parse_docs

avocado.docs: Update documentation regarding argument parsing.
Makefile: Delete SOURCES directory as well

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
avocado.job: Removing unused variable

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
avocado.core.tree: Remove unused variables

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
avocado.plugins.multiplexer: Fix -c option

Make the multiplexer plugin to properly produce the
environment relative to each variant. Before, we
had an exception when calling option -c.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
tests/synctest.py: Modify multiplex file

Make it have the same meaning as with the previous
multiplex system (9 variants, loop and sync parameters
with short, medium and long variants).

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
avocado.core.output: Introduce Paginator class for cleaner 'q' handling

In avocado, we use 'less' for a paginator. When one presses
'q' in the paginator, an IOError is raised (the subprocess
opened with os.popen has just quit), so let's introduce a
Paginator class, that can handle cleanly 'q' without asking
API users to handle the exception themselves.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
Merge pull request #171 from lmr/trivial-fixes-sprint12

Trivial fixes sprint12
test progress API: removed simplistic check_progress() idea

The check_progress() idea is too simplistic for what we aim for,
so let's remove it to prevent test writers from depending on it.

Also, rename communicate_state() to report_state().

Signed-off-by: Cleber Rosa <crosa@redhat.com>
Merge pull request #172 from clebergnu/report_state

test progress API: removed simplistic check_progress() idea
avocado.plugins: Plugins has priority.

Add priority when loading plugins (both built-in or external).
The lowest the priority (0 by default) then earliest the plugin will
be loaded.

In the current implementation, only the runner plugin has
priority 0 and the other plug-ins are all defined as priority 3.

Signed-off-by: Ruda Moura <rmoura@redhat.com>
avocado.plugins.runner:  Export the test runner parser.

Export the test runner parser back to the main parser,
so you can use `parser.runner` to extend it.

Signed-off-by: Ruda Moura <rmoura@redhat.com>
avocado.plugins: Move plugins to the runner.

Move plugins journal, json, xunit and vm inside the test runner
subcommand, now the command line options belongs to the runner,
instead of the main application.

Signed-off-by: Ruda Moura <rmoura@redhat.com>
seltests: Fix tests regarding moving options to the runner.

Fix functional tests regarding the changes that moves
options from the main application to the test runner (avocado run).

Signed-off-by: Ruda Moura <rmoura@redhat.com>
Merge pull request #174 from ruda/move_options_to_test_runner

Move options to test runner,  plugins has priority and app parser has the test runner parser
avocado.plugins: Fix bug 'Namespace' object has no attribute

Fix problem when running Avocado with subcommand other than run:

$ avocado plugins
Could not activate plugin 'run_vm': 'Namespace' object has no attribute 'vm'
Could not activate plugin 'json': 'Namespace' object has no attribute 'json_output'
Could not activate plugin 'xunit': 'Namespace' object has no attribute 'xunit_output'
Could not activate plugin 'journal': 'Namespace' object has no attribute 'journal'
Plugins loaded:
    datadir      - Implements the avocado 'datadir' subcommand (Enabled)
    json         - JSON output (Enabled)
    journal      - Test journal (Enabled)
    multiplexer  - Implements the avocado 'multiplex' subcommand. (Enabled)
    plugins_list - Implements the avocado 'plugins' subcommand (Enabled)
    run_vm       - Run tests on a Virtual Machine (Enabled)
    sysinfo      - Collect system information (Enabled)
    test_lister  - Implements the avocado 'list' subcommand (Enabled)
    test_runner  - Implements the avocado 'run' subcommand (Enabled)
    xunit        - xUnit output. (Enabled)

Signed-off-by: Ruda Moura <rmoura@redhat.com>
manpage: update based on recent command line and plugin changes

This syncs the manpage with the latest changes of command line options
and plugins (for example, the new multiplex).

Signed-off-by: Cleber Rosa <crosa@redhat.com>
Merge pull request #176 from ruda/plugins_object_has_no_attribute

avocado.plugins: Fix bug 'Namespace' object has no attribute