1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-07 04:10:27 -08:00
emacs/mps/test/README
Gareth Rees b8ea44a99f Catch-up merge from master sources to branch/2015-08-11/compact.
Copied from Perforce
 Change: 190901
 ServerID: perforce.ravenbrook.com
2016-04-11 14:40:44 +01:00

45 lines
1.3 KiB
Text

$Id$
This is the Memory Management QA test harness. To use it you need
perl 5 (or higher). Go "perl qa help" for help, "perl qa options"
to see what version of the harness you have (or look at the
file "test/version").
Testing on Unix
---------------
From the test directory::
PLATFORM=lii6ll # substitute your platform
VARIETY=cool # or hot
CODE=../code # code directory of the branch you are testing
make -B -C $CODE -f $PLATFORM.gmk VARIETY=$VARIETY $PLATFORM/$VARIETY/mps.o
alias qa="perl test/qa -i $CODE -l $CODE/$PLATFORM/$VARIETY/mps.o"
qa clib
qa run function/5.c
qa runset testsets/passing
Each test case is compiled in its turn to the file
``test/obj/$(uname -s)_$(uname -r)_$(uname -p)__unix/tmp_test``
so you can debug it with::
lldb test/obj/$(uname -s)_$(uname -r)_$(uname -p)__unix/tmp_test
Or ``gdb`` instead of ``lldb``. MMQA sets its own assertion handler,
so you'll probably want to set a breakpoint on mmqa_assert_handler.
Testing on OS X
---------------
From the test directory, build mpslib.a using the Xcode project::
xcodebuild -project ../code/mps.xcodeproj -target mps
(You can also use "make" from the project root.) Then::
perl test/qa -i ../code -l ../code/xc/Debug/libmps.a clib
perl test/qa -i ../code -l ../code/xc/Debug/libmps.a run function/232.c
etc. See "Testing on Unix" above.