Run all/specific tests in the test suite.

Usage: cabal test [FLAGS]
   or: cabal test TESTCOMPONENTS [FLAGS]

The package must have been build with configuration flag `--enable-tests`.

Note that additional dependencies of the tests must have already been
installed.

By defining UserHooks in a custom Setup.hs, the package can define actions to
be executed before and after running tests.

Flags for test:
 -h, --help                   # Show this help text
 -v[n], --verbose[=n]         # Control verbosity (n is 0--3, default
                                verbosity level is 1)
 --builddir=DIR               # The directory where Cabal puts generated build
                                files (default dist)
 --cabal-file=PATH            # use this Cabal file
 --keep-temp-files            # Keep temporary files.
 --log=TEMPLATE               # Log all test suite results to file (name
                                template can use $pkgid, $compiler, $os,
                                $arch, $test-suite, $result)
 --machine-log=TEMPLATE       # Produce a machine-readable log file (name
                                template can use $pkgid, $compiler, $os,
                                $arch, $result)
 --show-details=FILTER        # 'always': always show results of individual
                                test cases. 'never': never show results of
                                individual test cases. 'failures': show
                                results of failing test cases. 'streaming':
                                show results of test cases in real
                                time.'direct': send results of test cases in
                                real time; no log file.
 --keep-tix-files             # Keep .tix files for HPC between test runs
 --test-wrapper=FILE          # Run test through a wrapper.
 --fail-when-no-test-suites   # Exit with failure when no test suites are
                                found.
 --test-options=TEMPLATES     # Give extra options to test executables (split
                                on spaces, use "" to prevent splitting; name
                                templates can use $pkgid, $compiler, $os,
                                $arch, $test-suite)
 --test-option=TEMPLATE       # Give extra option to test executables (passed
                                directly as a single argument; name template
                                can use $pkgid, $compiler, $os, $arch,
                                $test-suite)
