aboutsummaryrefslogtreecommitdiffstats
path: root/camel/tests/README
diff options
context:
space:
mode:
Diffstat (limited to 'camel/tests/README')
-rw-r--r--camel/tests/README38
1 files changed, 38 insertions, 0 deletions
diff --git a/camel/tests/README b/camel/tests/README
new file mode 100644
index 0000000000..e9262541b4
--- /dev/null
+++ b/camel/tests/README
@@ -0,0 +1,38 @@
+
+This directory is to contain regression tests that should be run
+before committing anything to camel.
+
+To write a new test: copy an existing one and replace the contents.
+
+See camel-test.h for a number of functions and macros which setup and
+define the test environmet, and help provide meaningful messages when
+something actually fails.
+
+All tests have the following options:
+ -v[vvvv]
+ verbose. more v's more verbose. 2 v's will give you
+ a simple test backtrace of any partially failed tests.
+ No v's give you a simple backtrace of any failed tests.
+ -q
+ quiet. Dont print anything, unless there is a SEGV.
+
+See the other files in lib/* for utility functions that help to
+write the tests (object comparison, creation, etc functions).
+
+Tests may fail and be non-fatal. In this case, you will see "Partial
+success" on the result of each test line. To get more information
+about the test, run the test manually with a -v command line argument.
+The more v's you have the more detail you get (upto about -vvvvv),
+generally use -vv to find out which parts of a partially successful
+test failed, and where.
+
+Note that if writing tests, non-fatal tests (bracketed by a
+camel_test_nonfatal() and camel_test_fatal() pair) should only be
+defined where: 1. The test in question should ideally pass, and 2. The
+code has known limitations currently that stop it passing, but
+otherwise works for nominal input.
+
+To debug tests, set a breakpoint on camel_test_fail, which will be
+called for any failure, even a non-fatal one.
+
+ Michael <notzed@helixcode.com>