about summary refs log tree commit homepage
path: root/t
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2009-10-10 12:45:57 -0700
committerEric Wong <normalperson@yhbt.net>2009-10-10 12:45:57 -0700
commite81ba32115b9ba276ebf3c747f88a3c5f0bf4037 (patch)
tree2509f7acca35d10aef06af44d0551e36e2794226 /t
parent79b28210e3af5422002ef4ad79e77620295a4d38 (diff)
downloadrainbows-e81ba32115b9ba276ebf3c747f88a3c5f0bf4037.tar.gz
Diffstat (limited to 't')
-rw-r--r--t/README42
1 files changed, 42 insertions, 0 deletions
diff --git a/t/README b/t/README
new file mode 100644
index 0000000..4745b6d
--- /dev/null
+++ b/t/README
@@ -0,0 +1,42 @@
+= Rainbows! test suite
+
+These are all integration tests that start the server on random, unused
+TCP ports or Unix domain sockets.  They're all designed to run
+concurrently with other tests to minimize test time, but tests may be
+run independently as well.
+
+We write our tests in Bourne shell because that's what we're
+comfortable writing integration tests with.
+
+== Requirements
+
+* {Ruby 1.8 or 1.9}[http://www.ruby-lang.org/] (duh!)
+* {GNU make}[http://www.gnu.org/software/make/]
+* {socat}[http://www.dest-unreach.org/socat/]
+* {curl}[http://curl.haxx.se/]
+* standard UNIX shell utilities (Bourne sh, awk, sed, grep, tee, ...)
+
+We do not use bashisms or any non-portable, non-POSIX constructs
+in our shell code.  We use the "pipefail" option if available and
+mainly test with {ksh}[http://kornshell.com/], but occasionally
+with {dash}[http://gondor.apana.org.au/~herbert/dash/] and
+{bash}[http://www.gnu.org/software/bash/], too.
+
+== Running Tests
+
+To run the entire test suite with 8 tests running at once:
+
+  make -j8
+
+To run one individual test:
+
+  make t0000-basic.sh
+
+You may also increase verbosity by setting the "V" variable for
+GNU make.  To disable trapping of stdout/stderr:
+
+  make V=1
+
+To enable the "set -x" option in shell scripts to trace execution
+
+  make V=2