racket/collects/tests/mred
Matthew Flatt 6aa847ca67 update MrEd gc test for v4
svn: r10122
2008-06-04 11:45:41 +00:00
..
auto.ss
blits.ss
button-steps.txt
cache-image8.mre
canvas-steps.txt
checkbox-steps.txt
choice-list-steps.txt
dc.ss use new require specs in many places 2008-02-23 09:42:03 +00:00
draw-info.txt
draw.ss
editor.ss
frame-edit.ss
frame-steps.txt
gauge-steps.txt
gui-main.ss
gui.ss
imred.ss
item.ss use new require specs in many places 2008-02-23 09:42:03 +00:00
loadtest.ss
media3.mre
media6.mre
media8.mre
mediastream.example
mediastream.ss
mem.ss update MrEd gc test for v4 2008-06-04 11:45:41 +00:00
menu-steps.txt
nruter.xbm
paramz.ss
png.ss use new require specs in many places 2008-02-23 09:42:03 +00:00
prog6.mre
prog8.mre
radiobox-steps.txt
random.ss use new require specs in many places 2008-02-23 09:42:03 +00:00
README
showkey.ss use new require specs in many places 2008-02-23 09:42:03 +00:00
sixlib.ss use new require specs in many places 2008-02-23 09:42:03 +00:00
slider-steps.txt
testbox6.mre
testbox8.mre
testing.ss use new require specs in many places 2008-02-23 09:42:03 +00:00
text-scale.ss use new require specs in many places 2008-02-23 09:42:03 +00:00
windowing.ss reworked the buttons along the top of drscheme 2008-05-01 23:15:06 +00:00

The "item.ss" test (use load/cd) creates a frame to select among
several types of control-testing frames. Click the `Get Instructions'
button in the top-left for more information.

---------------------------------------------------------------------------

The "draw.ss" test (use load/cd) tests drawing commands. Click the
"What Should I See?" button for further details.

---------------------------------------------------------------------------

The "mem.ss" test is loaded at startup:
  mred -r mem.ss
Creates a lot of frames and instance of other objects, reporting
memory information along the way. At the end, before the last memory
dump, objects that are still allocated are displayed like this:
  (frame (1 . 5))
This means that the frame allocated by thread #1 at cycle 5
(counting down from some number) hasn't been garbage-collected.
If there's a few of these lines (around 10), that's ok.
A large number of lines (say, 50) indicates a GC problem.

---------------------------------------------------------------------------

[Out of date:]
The "random.ss" test is a randomized test of the MrEd classes that tests
MrEd's stability. Load "random.ss", and then run
  (init)
This attempts to create instances of classes using random
intialization arguments. (init) can be run any number of times. 
(2 is a good number) Then run
  (call-all-random) 
This calls every method of every class (skipping some "dangerous" ones
that modify the file system) with a random instance and with random
arguments.

To avoid testing much of the wxMedia toolbox, which is likely to be
platform-independent, (define skip-media? #t) before loading
"random.ss".


==================================================
Old Stuff
==================================================

---------------------------------------------------------------------------

The "imred.ss" test is used to check for memory leaks in a loop
invoking the mred system. Call the `go' procedure with a list
of symbol flags:
  'force not included:
     Use the current eventspaces; expects mred:run-exit-callbacks
     to terminate everything properly
  'force included:
     Use a new eventspace; don't run mred:run-exit-callbacks and
     call wx:kill-eventspace instead.
  'console included:
     Open a MrEd console
  'thread included:
     Spawn a sleeping-and-looping thread during each invocation.
     Also tests semaphore-callback (because it has to)
  'eventspace included:
     Create a new sub-eventspace during each invocation with
     a wx:frame% shown

---------------------------------------------------------------------------

"startup" tests the startup flags of mred. run "run.ss" from that directory.

---------------------------------------------------------------------------

"frame-edit.ss" checks that various frames match with various
edits. Under construction.

---------------------------------------------------------------------------

"gui.ss" tests:
 - save prompting (before closing unsaved files) and
 - autosaving 

evaluate `(load "gui.ss")' in the console to run.

It also overwrites the file "tmp.ss" in the testing directory.

---------------------------------------------------------------------------