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

NAME

t/ - The Parrot Virtual Machine Test Suite

DESCRIPTION

This directory contains the official Parrot Virtual Machine test suite.

For details on how tests are written see the documentation in docs/tests.pod https://github.com/parrot/parrot/blob/master/docs/tests.pod. For status of the testing effort, see t/TESTS_STATUS.pod https://github.com/parrot/parrot/blob/master/t/TESTS_STATUS.pod.

The script 'harness' actually runs the test suite.

To run the normal Parrot test suite tests:

    make test

To run only the core test suite (intented to be used after make corevm):

    make coretest

The run the full test suite, which is equivalent to "make test" under various runcores as well as coding standard tests:

    make fulltest

To run just the coding standard tests:

    make codingstd_tests

To create code coverage reports from the Parrot test suite:

    make cover

which requires the Devel::Cover Perl 5 module.

To submit "smoke" reports, you will need to install the TAP::Harness::Archive and LWP::UserAgent CPAN modules, and then type:

    make smoke

The report will then be visible on Smolder: http://smolder.parrot.org/app/projects/smoke_reports/1

If you only want to submit results of the core test suite to Smolder:

    make smolder_coretest

Below is a list of subdirs along with a short description of what is tested in there.

all_hll_test

Run all the tests for all HLLs and libraries. Useful before and after merges to detect regressions in projects using Parrot.

benchmark

Benchmark tests.

codingstd

Tests the coding conventions for Parrot source code.

compilers

Tests for compilers in Parrot.

configure

Tests for the Perl modules in our configuration subsystem.

distro

Tests that run before a distribution is released. Can be run with:

    make distro_tests
doc

Tests for the completeness and sanity of the documentation.

dynoplibs

Tests for dynamic (loadable at run-time) opcode libraries.

dynpmc

Tests for dynamic PMCs.

examples

Tests to check whether the examples are still working. Can be run with:

    make examples_tests
library

Test Parrot modules that ship with core. Can be run with:

    make library_tests
manifest

Tests for the functionality supporting the creation of MANIFEST and related files. Can be run with:

    make manifest_tests
native_pbc

Tests Parrot Byte Code.

oo

Tests for object oriented features of Parrot. Can be run with

    make oo_tests
op

Tests for Parrot opcodes. Can be run with

    make op_tests
perl

Tests for the Perl 5 modules used for configuration, building and testing of Parrot. Can be run with:

    make perl_tests
pharness

Tests for the functionality supporting Parrot's test harnesses.

pmc

Tests for Parrot PMCs. Can be run with

    make pmc_tests
postconfigure

Tests of configuration system run after configuration has completed.

run

Tests for the command line options of the 'parrot' executable. Can be run with:

    make run_tests
src

Tests written in C, mostly for the Embed/Extend subsystems. Can be run with

    make src_tests
steps

Tests for the steps in the Parrot configuration process.

stress

Stress testing. Make Parrot sweat.

tools

Tests for tools useful to Parrot core and HLL developers

COPYRIGHT

Copyright (C) 2005-2011, Parrot Foundation.