avocado.plugins.runner: Improve test list plugin

Show test aliases and full paths on the output of
the 'list' command:

$ scripts/avocado list
Tests dir: /home/lmr/Code/avocado.lmr/tests
    Alias         Path
    gendata       /home/lmr/Code/avocado.lmr/tests/gendata.py
    synctest      /home/lmr/Code/avocado.lmr/tests/synctest.py
    linuxbuild    /home/lmr/Code/avocado.lmr/tests/linuxbuild.py
    fiotest       /home/lmr/Code/avocado.lmr/tests/fiotest.py
    skiptest      /home/lmr/Code/avocado.lmr/tests/skiptest.py
    warntest      /home/lmr/Code/avocado.lmr/tests/warntest.py
    doublefail    /home/lmr/Code/avocado.lmr/tests/doublefail.py
    timeouttest   /home/lmr/Code/avocado.lmr/tests/timeouttest.py
    doublefree    /home/lmr/Code/avocado.lmr/tests/doublefree.py
    trinity       /home/lmr/Code/avocado.lmr/tests/trinity.py
    multiplextest /home/lmr/Code/avocado.lmr/tests/multiplextest.py
    sleeptenmin   /home/lmr/Code/avocado.lmr/tests/sleeptenmin.py
    sleeptest     /home/lmr/Code/avocado.lmr/tests/sleeptest.py
    errortest     /home/lmr/Code/avocado.lmr/tests/errortest.py
    failtest      /home/lmr/Code/avocado.lmr/tests/failtest.py
    abort         /home/lmr/Code/avocado.lmr/tests/abort.py
    whiteboard    /home/lmr/Code/avocado.lmr/tests/whiteboard.py

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
selftests/functional: Add test list command

Add a test that checks the behavior of the 'list' subcommand.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
avocado.plugins: Improve the output of the 'plugins' subcommand

Order the available plugins and use colors to better
organize the information displayed:

$ scripts/avocado plugins
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: Lucas Meneghel Rodrigues <lmr@redhat.com>
selftests/functional: basic_tests: Add plugin list test

Verify if plugins are correctly listed and none are
disabled.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
tests: Add datadir test

Create a test that uses files from the data dir, as
a functional test, so we notice when that functionality
is broken.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
selftests/functional: Change synctest with datadir

synctest fails on the CI VM, let's use the simpler,
bogus datadir test to do that functional verification.

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

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
tests/whiteboard.py: Remove unused variable

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
avocado.test: Define a 'test-results' toplevel directory

Inside the job result instance dir, introduce a 'test-results'
directory that holds the results of all the other test instances.
This organizes things better and is a standard dir name,
since now we mimic a the origin test directory structure.

Update the docs accordingly.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
selftests/functional: Add another plugin testing

The command now is 'datadir'.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
UI progress: set a 1 second cycle for a complete throbber iteration

That is, within a second, if the test process is running, the user
will see a "full cycle" of the throbber.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
Add a more description error code for interrupted jobs

Since we are not running short anytime of error code definitions, I
believe we can give a more descriptive return code when jobs are
actually interrupted.

Signed-off-by: Cleber Rosa <crosa@redhat.com>