Show More
@@ -1,37 +1,33 | |||||
1 | A simple testing framework |
|
1 | A simple testing framework | |
2 |
|
2 | |||
3 | To run the tests, do: |
|
3 | To run the tests, do: | |
4 |
|
4 | |||
5 | cd tests/ |
|
5 | cd tests/ | |
6 | ./run-tests |
|
6 | ./run-tests | |
7 |
|
7 | |||
8 | This finds all scripts in the test directory named test-* and executes |
|
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 |
|
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. |
|
10 | run in a temporary directory that is removed when the test is complete. | |
11 |
|
11 | |||
12 | A test-<x> succeeds if the script returns success and its output |
|
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 |
|
13 | matches test-<x>.out. If the new output doesn't match, it is stored in | |
14 | test-<x>.err. |
|
14 | test-<x>.err. | |
15 |
|
15 | |||
16 | There are some tricky points here that you should be aware of when |
|
16 | There are some tricky points here that you should be aware of when | |
17 | writing tests: |
|
17 | writing tests: | |
18 |
|
18 | |||
19 | - hg commit and hg up -m want user interaction |
|
19 | - hg commit and hg up -m want user interaction | |
20 |
|
20 | |||
21 | for commit use -m "text" |
|
21 | for commit use -m "text" | |
22 | for hg up -m, set HGMERGE to something noninteractive (like true or merge) |
|
22 | for hg up -m, set HGMERGE to something noninteractive (like true or merge) | |
23 |
|
23 | |||
24 | - changeset hashes will change based on user and date which make |
|
24 | - changeset hashes will change based on user and date which make | |
25 | things like hg history output change |
|
25 | things like hg history output change | |
26 |
|
26 | |||
27 | use commit -m "test" -u test -d "0 0" |
|
27 | use commit -m "test" -u test -d "0 0" | |
28 |
|
28 | |||
29 | - diff will show the current time |
|
29 | - diff will show the current time | |
30 |
|
30 | |||
31 |
use hg diff | sed "s/\(\(---\|+++\) [ |
|
31 | use hg diff | sed "s/\(\(---\|+++\) [a-zA-Z0-9_/.-]*\).*/\1/" to strip | |
32 | dates |
|
32 | dates | |
33 |
|
33 | |||
34 | - set -x and pipelines don't generate stable output |
|
|||
35 |
|
||||
36 | turn off set -x or break pipelines into pieces |
|
|||
37 |
|
General Comments 0
You need to be logged in to leave comments.
Login now