The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Parrot::Test::Harness - a test harness for languages built on Parrot

SYNOPSIS

Tell the harness which language (and optionally, compiler) you want to use in a file called t/harness:

  use Parrot::Test::Harness language => 'punie';

  # or

  use Parrot::Test::Harness language => 'perl6', compiler => 'perl6.pbc';

That's it. Seriously.

DESCRIPTION

This module provides a basic test harness for Parrot-hosted languages. Right now it parameterizes the two parameters that at least three language implementations need.

If you really want, you can pass a third option to the use line. arguments should be an array reference containing additional arguments (as you might find on the command line).

If you don't pass a compiler argument pair, the harness will run the tests with perl. If you do pass the pair, the harness will run the tests with parrot, calling the compiler file as the first argument.

This means that you can write your tests in your language itself and run them through your compiler itself. If you can load PIR libraries from your language, you can even use the existing PIR testing tools.

AUTHOR

written by chromatic with most of the intelligence stolen from the Punie harness and most of that probably stolen from Test::Harness

Please send patches and bug reports via Parrot's RT queue or to the mailing list.

Conformant to a recent post on p6i, if called with a single argument of --files, return a list of files to process. This list is one per line, and is relative to the languages dir.

If called with no args, run the suite.