Skip to content
Fetching contributors…
Cannot retrieve contributors at this time
101 lines (67 sloc) 3.28 KB
arename's test suite
To use this test suite, you will (in addition to the modules arename
needs anyway) need the Perl modules Test::More, Test::Exception and
In addition to that, you will need a few audio related tools (because the
testsuite generates audio data to do tests with):
+ oggenc - encode to ogg vorbis
+ flac - encode to flac
+ lame - encode to mp3
+ vorbiscomment - manipulate tags in ogg vorbis files
+ metaflac - manipulate tags in flac files
+ id3v2 - manipulate tags in mp3 files
+ prove - from Test::Harness to run the ./tests/*.t tests
+ podchecker - check the syntax of the plain old documentation
+ fakeroot (opt) - fake root previleges
+ perlcritic (opt) - check code style using ./perlcriticrc.
+ Devel::Cover - for generating test coverage statistics
This test suite should run without failing tests on all systems. If
you see any failures, report them. Include arename's version,
Perl's version, your system's version information (e.g. the output
of 'uname -a') and anything else you consider important. Plus the
output of the failing test, of course.
To prepare needed data files to play with:
% make prepare-test-data
That step needed *once* (or after you cleaned the working directory).
You can run the complete test suite by simply doing:
% make test-all
This takes some time, as this tests absolutely every test available.
The following is a short hand for 'make test-doc test-suite':
% make test
'test' should always run successfully, even for the smallest changes.
If you want to check if the pod syntax of the documentation is okay,
% make test-doc
To just run the perlcritic test for coding style, run:
% make test-code
Checking the installation process is done via:
% make test-install
If you'd like to check whether the output system behaves:
% make test-output
To run the Perl test suite from ./tests/*.t, do:
% make test-suite
If you want to run tests by hand, you can use the 'prove' utility,
from Test::Harness (if you want to look at a problem in detail, for
% prove -Imodules -v tests/data.t
As mentioned above, the 'test-install' target checks the installation
procedure. This test case needs the 'fakeroot' utility to be installed
on the system. By default, the test suite looks for '/usr/bin/fakeroot'.
If you installed it in another location do:
% make test-install fakeroot=/usr/local/bin/fakeroot
If the test suite cannot find fakeroot at all, the installation test
will be skipped. Thus, fakeroot is optional for the testsuite.
To run the installation tests by hand, do (from the source's root):
% fakeroot /bin/sh ./tests/
In order to have some sort of measurement about which parts of the code
is currently covered by the test-suite, you may call the following:
% make coverage
% $BROWSER cover_db/coverage.html
This function depends on the availability of the Devel::Cover module,
available from CPAN.
Something went wrong with that request. Please try again.