1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-28 16:21:07 -08:00
emacs/mps/test
2018-07-06 14:26:54 +01:00
..
argerr Test cases for errors in finalization. 2018-06-26 09:01:46 +01:00
conerr No need for separate ams and lo formats. 2018-06-23 21:01:15 +01:00
function Check that traces with no condemned objects can be started and finished without error in each automatic pool class. regression test for job004086. 2018-07-06 14:26:54 +01:00
misc Memoryerror is only implemented on windows, so test for abort instead. 2016-04-22 17:17:53 +01:00
test Ensure that the mmqa test case is compiled using the same variety as the mps library against which it is linked, in case it needs to inspect internal mps data structures. 2018-07-05 15:57:33 +01:00
testsets Check that traces with no condemned objects can be started and finished without error in each automatic pool class. regression test for job004086. 2018-07-06 14:26:54 +01:00
README New mmqa command debug compiles a test case and launches the debugger. 2016-09-12 12:26:40 +01:00

$Id$

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