annotate tests/test-abort-checkin.t @ 18987:3605d4e7e618

revlog: choose a consistent ancestor when there's a tie Previously, we chose a rev based on numeric ordering, which could cause "the same merge" in topologically identical but numerically different repos to choose different merge bases. We now choose the lexically least node; this is stable across different revlog orderings.
author Bryan O'Sullivan <bryano@fb.com>
date Tue, 16 Apr 2013 10:08:19 -0700
parents f2719b387380
children e955549cd045
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11848
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
1 $ cat > abortcommit.py <<EOF
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
2 > from mercurial import util
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
3 > def hook(**args):
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
4 > raise util.Abort("no commits allowed")
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
5 > def reposetup(ui, repo):
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
6 > repo.ui.setconfig("hooks", "pretxncommit.nocommits", hook)
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
7 > EOF
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
8 $ abspath=`pwd`/abortcommit.py
4140
193e0f8d9a47 test-abort-checkin: use a hook to abort the commit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 2990
diff changeset
9
11848
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
10 $ echo "[extensions]" >> $HGRCPATH
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
11 $ echo "mq=" >> $HGRCPATH
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
12 $ echo "abortcommit = $abspath" >> $HGRCPATH
4140
193e0f8d9a47 test-abort-checkin: use a hook to abort the commit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 2990
diff changeset
13
11848
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
14 $ hg init foo
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
15 $ cd foo
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
16 $ echo foo > foo
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
17 $ hg add foo
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
18
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
19 mq may keep a reference to the repository so __del__ will not be
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
20 called and .hg/journal.dirstate will not be deleted:
2726
6bd351194a96 Add test mq keeping a reference to localrepo which can't remove journal on exit.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
21
11848
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
22 $ hg ci -m foo
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
23 error: pretxncommit.nocommits hook failed: no commits allowed
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
24 transaction abort!
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
25 rollback completed
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
26 abort: no commits allowed
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11848
diff changeset
27 [255]
11848
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
28 $ hg ci -m foo
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
29 error: pretxncommit.nocommits hook failed: no commits allowed
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
30 transaction abort!
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
31 rollback completed
f54ff49393fb tests: unify test-abort-checkin
Martin Geisler <mg@lazybytes.net>
parents: 4140
diff changeset
32 abort: no commits allowed
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11848
diff changeset
33 [255]
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12327
diff changeset
34
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12327
diff changeset
35 $ cd ..