##// END OF EJS Templates
make changeset outputted by the raw template to be closer to 'hg export'
make changeset outputted by the raw template to be closer to 'hg export'
Benoit Boissinot -
r2520:e30f425a default
Show More
Name Size Modified Last Commit Author
/ tests
README Loading ...
coverage.py Loading ...
fish-merge Loading ...
md5sum.py Loading ...
run-tests.py Loading ...
test-addremove Loading ...
test-addremove.out Loading ...
test-archive Loading ...
test-archive.out Loading ...
test-backout Loading ...
test-backout.out Loading ...
test-backwards-remove Loading ...
test-backwards-remove.out Loading ...
test-bad-pull Loading ...
test-bad-pull.out Loading ...
test-basic Loading ...
test-basic.out Loading ...
test-bdiff Loading ...
test-bdiff.out Loading ...
test-bundle Loading ...
test-bundle.out Loading ...
test-cat Loading ...
test-cat.out Loading ...
test-clone Loading ...
test-clone-failure Loading ...
test-clone-failure.out Loading ...
test-clone-pull-corruption Loading ...
test-clone-pull-corruption.out Loading ...
test-clone-r Loading ...
test-clone-r.out Loading ...
test-clone.out Loading ...
test-command-template Loading ...
test-command-template.out Loading ...
test-commit Loading ...
test-commit.out Loading ...
test-committer Loading ...
test-committer.out Loading ...
test-conflict Loading ...
test-conflict.out Loading ...
test-confused-revert Loading ...
test-confused-revert.out Loading ...
test-copy Loading ...
test-copy.out Loading ...
test-copy2 Loading ...
test-copy2.out Loading ...
test-default-push Loading ...
test-default-push.out Loading ...
test-diff-newlines Loading ...
test-diff-newlines.out Loading ...
test-diffdir Loading ...
test-diffdir.out Loading ...
test-empty Loading ...
test-empty-dir Loading ...
test-empty-dir.out Loading ...
test-empty-group Loading ...
test-empty-group.out Loading ...
test-empty.out Loading ...
test-encode Loading ...
test-encode.out Loading ...
test-excessive-merge Loading ...
test-excessive-merge.out Loading ...
test-filebranch Loading ...
test-filebranch.out Loading ...
test-flags Loading ...
test-flags.out Loading ...
test-globalopts Loading ...
test-globalopts.out Loading ...
test-grep Loading ...
test-grep.out Loading ...
test-help Loading ...
test-help.out Loading ...
test-hgignore Loading ...
test-hgignore.out Loading ...
test-hgrc Loading ...
test-hgrc.out Loading ...
test-hook Loading ...
test-hook.out Loading ...
test-http-proxy Loading ...
test-http-proxy.out Loading ...
test-hup Loading ...
test-hup.out Loading ...
test-import Loading ...
test-import.out Loading ...
test-incoming-outgoing Loading ...
test-incoming-outgoing.out Loading ...
test-locate Loading ...
test-locate.out Loading ...
test-lock-badness Loading ...
test-lock-badness.out Loading ...
test-merge-revert Loading ...
test-merge-revert.out Loading ...
test-merge-revert2 Loading ...
test-merge-revert2.out Loading ...
test-merge1 Loading ...
test-merge1.out Loading ...
test-merge2 Loading ...
test-merge2.out Loading ...
test-merge3 Loading ...
test-merge3.out Loading ...
test-merge4 Loading ...
test-merge4.out Loading ...
test-merge5 Loading ...
test-merge5.out Loading ...
test-merge6 Loading ...
test-merge6.out Loading ...
test-merge7 Loading ...
test-merge7.out Loading ...
test-nested-repo Loading ...
test-nested-repo.out Loading ...
test-notfound Loading ...
test-notfound.out Loading ...
test-parseindex Loading ...
test-parseindex.out Loading ...
test-permissions Loading ...
test-permissions.out Loading ...
test-pull Loading ...
test-pull-permission Loading ...
test-pull-permission.out Loading ...
test-pull-pull-corruption Loading ...
test-pull-pull-corruption.out Loading ...
test-pull-pull-corruption2 Loading ...
test-pull-pull-corruption2.out Loading ...
test-pull.out Loading ...
test-push-hook-lock Loading ...
test-push-hook-lock.out Loading ...
test-push-http Loading ...
test-push-http.out Loading ...
test-push-r Loading ...
test-push-r.out Loading ...
test-push-warn Loading ...
test-push-warn.out Loading ...
test-rawcommit1 Loading ...
test-rawcommit1.out Loading ...
test-remove Loading ...
test-remove.out Loading ...
test-rename Loading ...
test-rename.out Loading ...
test-revert Loading ...
test-revert-unknown Loading ...
test-revert-unknown.out Loading ...
test-revert.out Loading ...
test-ro-message Loading ...
test-ro-message.out Loading ...
test-rollback Loading ...
test-rollback.out Loading ...
test-simple-update Loading ...
test-simple-update.out Loading ...
test-ssh Loading ...
test-ssh.out Loading ...
test-static-http Loading ...
test-static-http.out Loading ...
test-status Loading ...
test-status.out Loading ...
test-symlinks Loading ...
test-symlinks.out Loading ...
test-tag Loading ...
test-tag.out Loading ...
test-tags Loading ...
test-tags.out Loading ...
test-ui-config Loading ...
test-ui-config.out Loading ...
test-unrelated-pull Loading ...
test-unrelated-pull.out Loading ...
test-up-local-change Loading ...
test-up-local-change.out Loading ...
test-update-reverse Loading ...
test-update-reverse.out Loading ...
test-walk Loading ...
test-walk.out Loading ...
tinyproxy.py Loading ...

A simple testing framework

To run the tests, do:

cd tests/
python run-tests.py

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 merge want user interaction

for commit use -m "text"
for hg merge, 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 -m "test" -u test -d "1000000 0"

- diff will show the current time

use hg diff | sed "s/\(\(---\|+++\) [a-zA-Z0-9_/.-]*\).*/\1/" to strip
dates