Mercurial > hg > mercurial-crew-with-dirclash
annotate tests/README @ 810:790a0ff306f2
Move commands.forget over to using new walk code.
With no names, it now recursively forgets everything, as is the default
behaviour of other commands. And prints the names of all files it
hasn't specifically been told to forget.
author | Bryan O'Sullivan <bos@serpentine.com> |
---|---|
date | Fri, 29 Jul 2005 08:49:01 -0800 |
parents | 6592c4f5cd4f |
children | 445970ccf57a 8f5637f0a0c0 0902ffece4b4 |
rev | line source |
---|---|
331 | 1 A simple testing framework |
2 | |
332 | 3 To run the tests, do: |
4 | |
5 cd tests/ | |
6 ./run-tests | |
7 | |
331 | 8 This finds all scripts in the test directory named test-* and executes |
9 them. The scripts can be either shell scripts or Python. Each test is | |
10 run in a temporary directory that is removed when the test is complete. | |
11 | |
12 A test-<x> succeeds if the script returns success and its output | |
13 matches test-<x>.out. If the new output doesn't match, it is stored in | |
14 test-<x>.err. | |
15 | |
16 There are some tricky points here that you should be aware of when | |
17 writing tests: | |
18 | |
19 - hg commit and hg up -m want user interaction | |
20 | |
761
0fb498458905
Change all references to -t --text commit message to -m and --message.
Andrew Thompson <andrewkt@aktzero.com>
parents:
350
diff
changeset
|
21 for commit use -m "text" |
331 | 22 for hg up -m, set HGMERGE to something noninteractive (like true or merge) |
23 | |
24 - changeset hashes will change based on user and date which make | |
25 things like hg history output change | |
26 | |
761
0fb498458905
Change all references to -t --text commit message to -m and --message.
Andrew Thompson <andrewkt@aktzero.com>
parents:
350
diff
changeset
|
27 use commit -m "test" -u test -d "0 0" |
331 | 28 |
29 - diff will show the current time | |
30 | |
774
6592c4f5cd4f
Change sed patterns in tests to strip dates after spaces or tabs
mpm@selenic.com
parents:
761
diff
changeset
|
31 use hg diff | sed "s/\(\(---\|+++\) [^ \t]*\)[ \t].*/\1/" to strip |
6592c4f5cd4f
Change sed patterns in tests to strip dates after spaces or tabs
mpm@selenic.com
parents:
761
diff
changeset
|
32 dates |
331 | 33 |
332 | 34 - set -x and pipelines don't generate stable output |
35 | |
36 turn off set -x or break pipelines into pieces | |
37 |