Tools ^

t/harness
Parrot Test Harness.

Benchmarks Tests ^

t/benchmark/benchmarks.t
test scripts in examples/benchmarks.

Coding Standards Tests ^

t/codingstd/c_code_coda.t
checks for editor hint coda in C source.

t/codingstd/c_cppcomments.t
checks for C++ style comments.

t/codingstd/c_function_docs.t
checks for missing function documentation.

t/codingstd/c_header_guards.t
checks for rules related to guards in C header files.

t/codingstd/c_indent.t
checks for rules related to indenting in C source.

t/codingstd/c_macro_args.t
t/codingstd/c_macro_args.t.

t/codingstd/c_operator.t
checks spacing around operators in C source.

t/codingstd/c_parens.t
checks for rules related to parentheses in C source.

t/codingstd/c_returns.t
checks for possible use of C from functions.

t/codingstd/c_struct.t
checks for struct tags in C source and headers.

t/codingstd/check_isxxx.t
checks that the isxxx() functions are passed.

t/codingstd/check_toxxx.t
checks that the toxxx() functions are passed.

t/codingstd/copyright.t
checks for an appropriate copyright.

t/codingstd/cuddled_else.t
checks for cuddled elses in source and headers.

t/codingstd/filenames.t
checks that filenames conform to standards.

t/codingstd/fixme.t
checks for "FIXME" and similar notes in C source and headers.

t/codingstd/gmt_utc.t
checks for GMT/UTC timezone in generated files.

t/codingstd/linelength.t
Test code lines length.

t/codingstd/perlcritic.t
use perlcritic for perl coding stds.

t/codingstd/pir_code_coda.t
checks for editor hint coda in PIR source.

t/codingstd/pod_todo.t
find todo items in pod files.

t/codingstd/svn_id.t
checks for an svn Id keyword line in parrot source files.

t/codingstd/tabs.t
checks for tab indents in C source and headers.

t/codingstd/trailing_space.t
checks for superfluous trailing space or tab characters.

Compilers Tests ^

t/compilers/imcc/syn/file.t
test inclusion of files.

t/compilers/imcc/syn/pod.t

t/compilers/json/from_parrot.t
test parrot to JSON conversion.

t/compilers/json/to_parrot.t
test JSON to parrot conversions.

t/compilers/pge/00-basic.t
test some simple grammars.

t/compilers/pge/02-match.t
test the Match class.

t/compilers/pge/04-compile.t
Test our ability to compile regexes into various names.

t/compilers/pge/06-grammar.t
test some simple grammars.

t/compilers/pge/pge-hs.t
Grammar Engine Haskell Output tests.

t/compilers/pge/pge.t
Parrot Grammar Engine basic tests.

t/compilers/pge/pge_examples.t
Parrot Grammar Engine tests of examples.

t/compilers/pge/pge_globs.t
Parrot Grammar Engine tests of globs.

t/compilers/pge/pge_text.t
PGE::Text tests.

t/compilers/pge/pge_util.t
Parrot Grammar Engine tests of utility rules.

t/compilers/pge/p5regex/p5rx.t
Perl 5 Regular Expression tests.

t/compilers/pge/perl6regex/01-regex.t
Basic Perl6Regex tests.

t/compilers/pge/perl6regex/context.t
PGE return value tests.

t/compilers/tge/basic.t
testing a few basic components of TGE::Grammar and TGE::Tree.

t/compilers/tge/grammar.t
TGE::Parser tests.

t/compilers/tge/parser.t
TGE::Parser tests.

Configure Tests ^

t/configure/001-options.t
test Parrot::Configure::Options as used in Configure.pl.

t/configure/002-messages.t
test Parrot::Configure::Messages.

t/configure/003-steplist.t
test Parrot::Configure::Step::List.

t/configure/004-configure.t
test Parrot::Configure.

t/configure/005-run_one_step.t
test Parrot::Configure by running one step.

t/configure/006-bad_step.t
test bad step failure case in Parrot::Configure.

t/configure/007-verbose_two.t
test bad step failure case in Parrot::Configure.

t/configure/008-verbose_step_number.t
test bad step failure case in Parrot::Configure.

t/configure/009-verbose_step_regex.t
test bad step failure case in Parrot::Configure.

t/configure/010-verbose_step_num_uncalled.t
test bad step failure case in Parrot::Configure.

t/configure/011-no_description.t
test what happens when a configuration step has no C<$description> defined.

t/configure/012-verbose.t
test the C<--verbose> command-line argument.

t/configure/013-die.t
test what happens when a configuration step dies during execution.

t/configure/015-no_return.t
see what happens when configuration step implicitly returns.

t/configure/016-no_return_but_result.t
see what happens when configuration step returns.

t/configure/017-revision_from_cache.t
test Parrot::Revision.

t/configure/018-revision_to_cache.t
test Parrot::Revision.

t/configure/019-version.t
test C.

t/configure/020-version.t
test C.

t/configure/021-version.t
test C.

t/configure/022-version.t
test C.

t/configure/023-version.t
test C.

t/configure/024-version.t
test C.

t/configure/025-options_test.t
test Parrot::Configure::Options::Test.

t/configure/026-options_test.t
test Parrot::Configure::Options::Test.

t/configure/027-option_or_data.t
test C.

t/configure/028-option_or_data.t
test C.

t/configure/029-option_or_data.t
test C.

t/configure/030-option_or_data.t
test C.

t/configure/031-base.t
tests Parrot::Configure::Step.

t/configure/032-data.t
tests Parrot::Configure::Data.

t/configure/033-step.t
tests Parrot::Configure::Utils.

t/configure/034-step.t
tests Parrot::Configure::Compiler.

t/configure/035-step.t
tests Parrot::Configure::Utils.

t/configure/036-config_steps.t
tests step modules under the config dir.

t/configure/037-run_single_step.t
test C during configuration.

t/configure/038-run_single_step.t
test C during configuration.

t/configure/039-run_single_step.t
test C during configuration.

t/configure/040-return_undef.t
see what happens when configuration step returns an.

t/configure/041-return_undef.t
see what happens when configuration step returns an.

t/configure/042-list_of_steps.t
test C.

t/configure/043-verbose_step_name.t
test bad step failure case in Parrot::Configure.

t/configure/044-slurp_file.t
test C.

t/configure/045-generated_file_header.t
test C.

t/configure/046-inter.t
test Parrot::Configure::_run_this_step() with regard to configuration steps that prompt for user input.

t/configure/047-inter.t
test Parrot::Configure::_run_this_step() with regard to configuration steps that prompt for user input.

t/configure/048-return_result_undef.t
see what happens when configuration step returns.

t/configure/049-options_test.t
test Parrot::Configure::Options::Test.

t/configure/050-fatal.t
see what happens when C<--fatal-step> is set for all configuration steps.

t/configure/051-fatal_step.t
test bad step failure case in Parrot::Configure.

t/configure/052-fatal_step.t
test bad step failure case in Parrot::Configure.

t/configure/053-fatal_step.t
test bad step failure case in Parrot::Configure.

t/configure/054-fatal_step.t
test bad step failure case in Parrot::Configure.

t/configure/055-fatal_step.t
test bad step failure case in Parrot::Configure.

t/configure/056-fatal_step.t
test bad step failure case in Parrot::Configure.

t/configure/057-fatal_step.t
test bad step failure case in Parrot::Configure.

t/configure/058-fatal_step.t
test bad step failure case in Parrot::Configure.

t/configure/059-silent.t
test what happens when the C<--silent> option is set.

t/configure/060-silent.t
test what happens when the C<--silent> option is set.

t/configure/testlib/Make_VERSION_File.pm
Subroutines used in testing C.

t/configure/testlib/Tie/Filehandle/Preempt/Stdin.pm
Preempt STDIN during testing.

t/configure/testlib/init/alpha.pm
Module used in configuration tests.

t/configure/testlib/init/beta.pm
Module used in configuration tests.

t/configure/testlib/init/delta.pm
Module used in configuration tests.

t/configure/testlib/init/epsilon.pm
Module used in configuration tests.

t/configure/testlib/init/eta.pm
Module used in configuration tests.

t/configure/testlib/init/foobar.pm
Module used in configuration tests.

t/configure/testlib/init/gamma.pm
Module used in configuration tests.

t/configure/testlib/init/iota.pm
Module used in configuration tests.

t/configure/testlib/init/kappa.pm
Module used in configuration tests.

t/configure/testlib/init/lambda.pm
Module used in configuration tests.

t/configure/testlib/init/zeta.pm
Module used in configuration tests.

t/configure/testlib/inter/theta.pm
Module used in configuration tests.

Distribution Tests ^

t/distro/file_metadata.t
verify that file metadata matches expectations.

t/distro/manifest.t
check sanity of the MANIFEST file.

t/distro/meta_yml.t
check sanity of the META.yml file.

t/distro/test_file_coverage.t
make sure source files have matching tests.

Documentation Tests ^

t/doc/opcode-doc.t
check opcode documentation.

t/doc/pod.t
Pod document syntax tests.

Examples Tests ^

t/examples/japh.t
Test some JAPHs.

t/examples/library.t
Test examples in F.

t/examples/namespace.t
Test examples in F.

t/examples/pasm.t
Test examples in F.

t/examples/past.t
Test examples in F.

t/examples/pir.t
Test examples in F.

t/examples/shootout.t
Test the shootout examples in "examples/shootout/*.pir".

t/examples/streams.t
Test examples in F.

t/examples/subs.t
Test examples in F.

t/examples/tutorial.t
Test examples in F.

Libraries Tests ^

t/library/File_Spec.t
test File::Spec module.

t/library/cgi_query_hash.t
test [ 'CGI'; 'QueryHash' ].

t/library/coroutine.t
Test the Parrot::Coroutine class.

t/library/data_escape.t
Data::Escape tests.

t/library/dumper.t
test dumping of data.

t/library/getopt_obj.t
testing the PIR module Getopt::Obj.

t/library/md5.t
test MD5 library.

t/library/mime_base64.t
test [ 'MIME'; 'Base64' ].

t/library/mt19937ar.t
Math::Random::MT tests.

t/library/mt19937ar.txt

t/library/p6object.t
P6object tests.

t/library/parrotlib.t
testing library/parrotlib.pir.

t/library/pcre.t
testing library/pcre.pir.

t/library/perlhist.txt

t/library/pg.t
Postgres Tests.

t/library/protoobject.t
testing Protoobject.pir.

t/library/range.t
t/library/range.t.

t/library/sort.t
Sorting.

t/library/streams.t
Stream tests.

t/library/string_utils.t
Tests for String/Utils.pbc.

t/library/uuid.t
uuid library tests.

t/library/yaml_dumper.t
test dumping of data in YAML format.

t/library/yaml_parser_syck.t
testing library/YAML/Parser/Syck.pir.

Native Bytecode Tests ^

t/native_pbc/integer.t
Integers.

t/native_pbc/number.t
Floating-Point Numbers.

t/native_pbc/string.t
PBC string tests.

Ops Tests ^

t/op/00ff-dos.t
DOS File Format.

t/op/00ff-unix.t
UNIX File format.

t/op/01-parse_ops.t
Parse core opcodes.

t/op/64bit.t
Testing integer ops on 64-bit platforms.

t/op/arithmetics.t
Arithmetic Ops.

t/op/basic.t
Basic Ops.

t/op/bitwise.t
Bitwise Ops.

t/op/calling.t
Parrot Calling Conventions.

t/op/cc_params.t
Parrot Calling Conventions parameter matching tests.

t/op/cmp-nonbranch.t
Non-branching conditionals.

t/op/comp.t
Conditionals.

t/op/copy.t
Testing the copy opcode.

t/op/debuginfo.t
Debugging Info.

t/op/exceptions.t
Exception Handling.

t/op/globals.t
Global Variables.

t/op/hacks.t
IO Ops.

t/op/ifunless.t
If/Unless.

t/op/info.t
Info Ops.

t/op/integer.t
Integer Registers.

t/op/interp.t
Running the Interpreter.

t/op/jit.t
JIT register allocation.

t/op/jitn.t
JIT register allocation.

t/op/lexicals.t
Lexical Ops.

t/op/literal.t
Testing the PIR and PASM lexer.

t/op/load_bytecode.t
loading bytecode tests.

t/op/number.t
Number Registers.

t/op/pushaction.t
Test the C Instruction.

t/op/say.t
Testing the say pseudo-opcode.

t/op/spawnw.t
Run OS commands and tell about the exit code.

t/op/sprintf.t
sprintf tests.

t/op/string.t
Parrot Strings.

t/op/string_cclass.t
character class tests.

t/op/string_cs.t
String Charset Tests.

t/op/string_mem.t
test memory representation related string operations.

t/op/stringu.t
Unicode String Test.

t/op/sysinfo.t
System Info.

t/op/time.t
Time and Sleep.

t/op/trans.t
Transcendental Mathematical Ops.

t/op/types.t
Parrot Types.

t/dynoplibs/dan.t
Test for the ops in src/dynoplibs/dan.ops.

t/dynoplibs/myops.t
Test for the ops in src/dynoplibs/myops.ops.

PMC Tests ^

t/pmc/addrregistry.t
test AddrRegistry PMC.

t/pmc/array.t
Array PMC.

t/pmc/bigint.t
BigInt PMC.

t/pmc/bignum.t
Test the non-implemented BigNum PMC.

t/pmc/boolean.t
Boolean Ops.

t/pmc/bound_nci.t
test Bound_NCI PMC.

t/pmc/builtin.t
Builtin Methods.

t/pmc/capture.t
Test the Capture PMC.

t/pmc/class.t
test the Class PMC.

t/pmc/closure.t
test Closure PMC.

t/pmc/codestring.t
test the CodeString class.

t/pmc/complex.t
Complex Numbers.

t/pmc/config.t
Builtin Config.

t/pmc/continuation.t
test Continuation PMC.

t/pmc/coroutine.t
Coroutines.

t/pmc/default.t
test default PMC.

t/pmc/deleg_pmc.t
test deleg_pmc PMC.

t/pmc/delegate.t
Method Delegation.

t/pmc/enumerate.t
test Enumerate PMC.

t/pmc/env.t
System Environment.

t/pmc/eval.t
Dynamic Code Evaluation.

t/pmc/eventhandler.t
Parrot Event Handling.

t/pmc/exception.t
Exception Handling.

t/pmc/exception_handler.t
test Exception_Handler PMC.

t/pmc/exporter.t
test the Exporter PMC.

t/pmc/file.t
Files functions.

t/pmc/fixedbooleanarray.t
FixedBooleanArray PMC.

t/pmc/fixedfloatarray.t
FixedFloatArray PMC.

t/pmc/fixedintegerarray.t
FixedIntegerArray PMC.

t/pmc/fixedpmcarray.t
FixedPMCArray PMC.

t/pmc/fixedstringarray.t
FixedStringArray PMC.

t/pmc/float.t
Floating-point Numbers.

t/pmc/freeze.t
Archiving.

t/pmc/globals.t
Globals and Namespaces.

t/pmc/hash.t
Test the Hash PMC.

t/pmc/integer.t
Integer basic type.

t/pmc/intlist.t
Integer Array.

t/pmc/io.t
IO Ops.

t/pmc/io_iterator.t
test the I/O Iterator PMC described in PDD22.

t/pmc/io_status.t
test the Status PMC described in PDD22.

t/pmc/iterator.t
Test the Iterator PMC.

t/pmc/key.t
Keys.

t/pmc/lexinfo.t
test LexInfo PMC.

t/pmc/lexpad.t
test LexPad PMC.

t/pmc/managedstruct.t
Managed C Structure.

t/pmc/mmd.t
Multi-Method Dispatch.

t/pmc/multiarray.t
MultiArray PMC.

t/pmc/multisub.t
Multi Sub PMCs.

t/pmc/n_arithmetics.t
n_* Arithmetic Ops.

t/pmc/namespace.t
test the NameSpace PMC as described in PDD21.

t/pmc/nci.t
test the Native Call Interface.

t/pmc/null.t
test Null PMC.

t/pmc/object-meths.t
Object Methods.

t/pmc/object-mro.t
Object Methods Resolution Order.

t/pmc/object.t
test the Object PMC.

t/pmc/objects.t
Objects.

t/pmc/orderedhash.t
Ordered Hash.

t/pmc/os.t
Files and Dirs.

t/pmc/pair.t

t/pmc/parrotclass.t
test the Class PMC.

t/pmc/parrotinterpreter.t
test the ParrotInterpreter PMC.

t/pmc/parrotio.t
test the ParrotIO PMC.

t/pmc/parrotlibrary.t
test the ParrotLibrary PMC.

t/pmc/parrotobject.t
test the Object PMC.

t/pmc/parrotrunningthread.t
test the ParrotRunningThread PMC.

t/pmc/parrotthread.t
test the ParrotThread PMC.

t/pmc/pccmethod_test.t
test the PCCMETHOD_Test PMC.

t/pmc/pmc.t
PMCs.

t/pmc/pmcproxy.t
test the PMCProxy PMC.

t/pmc/pointer.t
test the Pointer PMC.

t/pmc/prop.t
Properties.

t/pmc/random.t
Random numbers.

t/pmc/ref.t
Reference PMC.

t/pmc/resizablebooleanarray.t
testing the ResizableBooleanArray PMC.

t/pmc/resizablefloatarray.t
ResizableFloatArray PMC.

t/pmc/resizableintegerarray.t
ResizableIntegerArray PMC.

t/pmc/resizablepmcarray.t
testing the ResizablePMCArray PMC.

t/pmc/retcontinuation.t
test the RetContinuation PMC.

t/pmc/ro.t
tests read-only value support.

t/pmc/role.t
test the Role PMC.

t/pmc/sarray.t
Simple Array.

t/pmc/scalar.t
test the scalar PMC.

t/pmc/scheduler.t
Concurrency Scheduler.

t/pmc/schedulermessage.t
test the SchedulerMessage PMC.

t/pmc/sharedref.t
test the SharedRef PMC.

t/pmc/signal.t
Signal Handling.

t/pmc/slice.t
test Slice PMC.

t/pmc/stmlog.t
test the STMLog PMC.

t/pmc/stmref.t
test the STMRef PMC.

t/pmc/stmvar.t
test the STMVar PMC.

t/pmc/string.t
Strings.

t/pmc/sub.t
Subroutine PMCs.

t/pmc/sys.t
System Tests.

t/pmc/task.t
Concurrent Task.

t/pmc/threads.t
Threads.

t/pmc/timer.t
Timer PMCs.

t/pmc/tqueue.t
Thread Queue.

t/pmc/undef.t
Undef PMC.

t/pmc/unmanagedstruct.t
test the UnManagedStruct PMC.

t/pmc/vtablecache.t
test VtableCache.

t/dynpmc/digest.t
test the digest_group (MDx, RIPEMD, SHAx PMC).

t/dynpmc/dynlexpad.t
test the DynLexPad PMC.

t/dynpmc/foo.t
Test for a very simple dynamic PMC.

t/dynpmc/gdbmhash.t
test the GDBMHash PMC.

t/dynpmc/rational.t
Rational PMC.

t/dynpmc/sub.t
test if Sub is overridable by .HLL_map.

t/dynpmc/subclass_with_pir_method.t
test adding pir methods to dynpmc's PMC.

C Source Code Tests ^

t/src/README

t/src/atomic.t
Parrot Atomic operations.

t/src/basic.t
Basics.

t/src/compiler.t
Compile and run a PIR program from C.

t/src/exit.t
Exiting.

t/src/extend.t
Parrot Extension API.

t/src/warnings.t
Parrot warnings.

Software Transactional Memory Tests ^

t/stm/basic.t
Single-threaded tests of the STM opcodes and PMC types.

t/stm/basic_mt.t
Multithreaded tests of STM ops and PMCs.

t/stm/llqueue.t
Linked-List Queue STM tests.

t/stm/queue.t
STM tests using a fixed-sized shared queue implementation.

t/stm/runtime.t
STM Runtime library tests.

Stress Tests ^

t/stress/gc.t
Garbage Collection.


parrot