$Id: //info.ravenbrook.com/project/mps/master/test/README#12 $
This is the Memory Management QA test harness. To use it you need Perl
5 (or higher).
Quick start
-----------
In a shell in the test directory::
perl test/qa clib
perl test/qa run function/5.c
perl test/qa runset testsets/passing
perl test/qa debug argerr/12.c
Usage and options
-----------------
Run ``perl test/qa help`` for help; run ``perl test/qa options`` to
see what version of the harness you have (or look at the file
``test/version``) and which options are available.
The most important options are the ``-p`` option which specifies the
platform (for example, ``-p lii6ll``) if the auto-detected platform is
not the one you want to test, and the ``-v`` option which specifies
the variety (for example ``-v hot``) if the cool variety is not the
one you want to test.
Debugging
---------
MMQA sets its own assertion handler, so you'll probably want to set a
breakpoint on ``mmqa_assert_handler``.
Windows
-------
Use a Cygwin shell. Set the ``LANG`` environment variable::
export LANG=C
to avoid locale warnings from Perl.
The runset command can result in this error::
LINK : fatal error LNK1168: cannot open test/obj/nt_AMD64__pc/tmp_test.exe for writing
You may be able to avoid this by running "View Local Services" from
the Windows Control Panel, double-clicking the "Application
Experience" service, and switching "Startup type" to "Automatic". See
the documentation for LNK1168_.
.. _LNK1168: https://msdn.microsoft.com/en-us/library/hhbdtt6d.aspx