Mercurial > hg > mercurial-crew-with-dirclash
diff tests/README @ 349:b2293093b89e
Merged with mercurial-identify (which includes upstream's current tip)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Merged with mercurial-identify (which includes upstream's current tip)
manifest hash: b135d201757b84bbe7f14a446d2b001fd0cc1aa2
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
iD8DBQFCr9mNW7P1GVgWeRoRAmTjAJ919wnvZXbKI27N0cDJCrumR3z4rQCcD6PO
yZTmrT6p+gt6GBO+j5FVBn0=
=HWn8
-----END PGP SIGNATURE-----
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Wed, 15 Jun 2005 08:32:29 +0100 |
parents | 6c869059beb4 |
children | b4e0e20646bb |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/tests/README @@ -0,0 +1,36 @@ +A simple testing framework + +To run the tests, do: + +cd tests/ +./run-tests + +This finds all scripts in the test directory named test-* and executes +them. The scripts can be either shell scripts or Python. Each test is +run in a temporary directory that is removed when the test is complete. + +A test-<x> succeeds if the script returns success and its output +matches test-<x>.out. If the new output doesn't match, it is stored in +test-<x>.err. + +There are some tricky points here that you should be aware of when +writing tests: + +- hg commit and hg up -m want user interaction + + for commit use -t "text" + for hg up -m, set HGMERGE to something noninteractive (like true or merge) + +- changeset hashes will change based on user and date which make + things like hg history output change + + use commit -t "test" -u test -d "0 0" + +- diff will show the current time + + use hg diff | sed "s/\(\(---\|+++\).*\)\t.*/\1/" to strip dates + +- set -x and pipelines don't generate stable output + + turn off set -x or break pipelines into pieces +