author | Matt Mackall <mpm@selenic.com> |
Tue, 10 May 2011 16:08:47 -0500 | |
changeset 14291 | 1a791993ce59 |
parent 14164 | cb98fed52495 |
child 14601 | 25c1f3ddd927 |
permissions | -rw-r--r-- |
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
1 |
commit hooks can see env vars |
1734
9488d53233b5
tests for new hooks. fix things i found when writing tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1481
diff
changeset
|
2 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
3 |
$ hg init a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
4 |
$ cd a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
5 |
$ echo "[hooks]" > .hg/hgrc |
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
6 |
$ echo 'commit = unset HG_LOCAL HG_TAG; python "$TESTDIR"/printenv.py commit' >> .hg/hgrc |
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
7 |
$ echo 'commit.b = unset HG_LOCAL HG_TAG; python "$TESTDIR"/printenv.py commit.b' >> .hg/hgrc |
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
8 |
$ echo 'precommit = unset HG_LOCAL HG_NODE HG_TAG; python "$TESTDIR"/printenv.py precommit' >> .hg/hgrc |
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
9 |
$ echo 'pretxncommit = unset HG_LOCAL HG_TAG; python "$TESTDIR"/printenv.py pretxncommit' >> .hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
10 |
$ echo 'pretxncommit.tip = hg -q tip' >> .hg/hgrc |
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
11 |
$ echo 'pre-identify = python "$TESTDIR"/printenv.py pre-identify 1' >> .hg/hgrc |
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
12 |
$ echo 'pre-cat = python "$TESTDIR"/printenv.py pre-cat' >> .hg/hgrc |
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
13 |
$ echo 'post-cat = python "$TESTDIR"/printenv.py post-cat' >> .hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
14 |
$ echo a > a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
15 |
$ hg add a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
16 |
$ hg commit -m a |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
17 |
precommit hook: HG_PARENT1=0000000000000000000000000000000000000000 |
12640
6cc4b14fb76b
tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents:
12587
diff
changeset
|
18 |
pretxncommit hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000 HG_PENDING=$TESTTMP/a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
19 |
0:cb9a9f314b8b |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
20 |
commit hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000 |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
21 |
commit.b hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000 |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
22 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
23 |
$ hg clone . ../b |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
24 |
updating to branch default |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
25 |
1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
26 |
$ cd ../b |
1734
9488d53233b5
tests for new hooks. fix things i found when writing tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1481
diff
changeset
|
27 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
28 |
changegroup hooks can see env vars |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
29 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
30 |
$ echo '[hooks]' > .hg/hgrc |
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
31 |
$ echo 'prechangegroup = python "$TESTDIR"/printenv.py prechangegroup' >> .hg/hgrc |
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
32 |
$ echo 'changegroup = python "$TESTDIR"/printenv.py changegroup' >> .hg/hgrc |
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
33 |
$ echo 'incoming = python "$TESTDIR"/printenv.py incoming' >> .hg/hgrc |
1734
9488d53233b5
tests for new hooks. fix things i found when writing tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1481
diff
changeset
|
34 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
35 |
pretxncommit and commit hooks can see both parents of merge |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
36 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
37 |
$ cd ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
38 |
$ echo b >> a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
39 |
$ hg commit -m a1 -d "1 0" |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
40 |
precommit hook: HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b |
12640
6cc4b14fb76b
tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents:
12587
diff
changeset
|
41 |
pretxncommit hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PENDING=$TESTTMP/a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
42 |
1:ab228980c14d |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
43 |
commit hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
44 |
commit.b hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
45 |
$ hg update -C 0 |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
46 |
1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
47 |
$ echo b > b |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
48 |
$ hg add b |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
49 |
$ hg commit -m b -d '1 0' |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
50 |
precommit hook: HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b |
12640
6cc4b14fb76b
tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents:
12587
diff
changeset
|
51 |
pretxncommit hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PENDING=$TESTTMP/a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
52 |
2:ee9deb46ab31 |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
53 |
commit hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
54 |
commit.b hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
55 |
created new head |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
56 |
$ hg merge 1 |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
57 |
1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
58 |
(branch merge, don't forget to commit) |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
59 |
$ hg commit -m merge -d '2 0' |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
60 |
precommit hook: HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd |
12640
6cc4b14fb76b
tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents:
12587
diff
changeset
|
61 |
pretxncommit hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd HG_PENDING=$TESTTMP/a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
62 |
3:07f3376c1e65 |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
63 |
commit hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
64 |
commit.b hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd |
1734
9488d53233b5
tests for new hooks. fix things i found when writing tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1481
diff
changeset
|
65 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
66 |
test generic hooks |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
67 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
68 |
$ hg id |
13477
0fb2ff949790
id: add bookmarks to id
Kevin Bullock <kbullock@ringworld.org>
parents:
13446
diff
changeset
|
69 |
pre-identify hook: HG_ARGS=id HG_OPTS={'bookmarks': None, 'branch': None, 'id': None, 'num': None, 'rev': '', 'tags': None} HG_PATS=[] |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
70 |
warning: pre-identify hook exited with status 1 |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
71 |
[1] |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
72 |
$ hg cat b |
13207
1775382ff833
hooks: sort any dictionaries set in the environment
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
13121
diff
changeset
|
73 |
pre-cat hook: HG_ARGS=cat b HG_OPTS={'decode': None, 'exclude': [], 'include': [], 'output': '', 'rev': ''} HG_PATS=['b'] |
13121
bf763946f8b0
make_file: always return a fresh file handle that can be closed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12640
diff
changeset
|
74 |
b |
13207
1775382ff833
hooks: sort any dictionaries set in the environment
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
13121
diff
changeset
|
75 |
post-cat hook: HG_ARGS=cat b HG_OPTS={'decode': None, 'exclude': [], 'include': [], 'output': '', 'rev': ''} HG_PATS=['b'] HG_RESULT=0 |
4630
e6d105a51ec7
dispatch: add generic pre- and post-command hooks
Matt Mackall <mpm@selenic.com>
parents:
4368
diff
changeset
|
76 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
77 |
$ cd ../b |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
78 |
$ hg pull ../a |
13439
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
79 |
pulling from ../a |
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
80 |
searching for changes |
13404
31a256ffe9e5
tests: let printenv.py show the real values
Mads Kiilerich <mads@kiilerich.com>
parents:
13207
diff
changeset
|
81 |
prechangegroup hook: HG_SOURCE=pull HG_URL=file:$TESTTMP/a |
13439
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
82 |
adding changesets |
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
83 |
adding manifests |
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
84 |
adding file changes |
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
85 |
added 3 changesets with 2 changes to 2 files |
13404
31a256ffe9e5
tests: let printenv.py show the real values
Mads Kiilerich <mads@kiilerich.com>
parents:
13207
diff
changeset
|
86 |
changegroup hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_SOURCE=pull HG_URL=file:$TESTTMP/a |
31a256ffe9e5
tests: let printenv.py show the real values
Mads Kiilerich <mads@kiilerich.com>
parents:
13207
diff
changeset
|
87 |
incoming hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_SOURCE=pull HG_URL=file:$TESTTMP/a |
31a256ffe9e5
tests: let printenv.py show the real values
Mads Kiilerich <mads@kiilerich.com>
parents:
13207
diff
changeset
|
88 |
incoming hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_SOURCE=pull HG_URL=file:$TESTTMP/a |
31a256ffe9e5
tests: let printenv.py show the real values
Mads Kiilerich <mads@kiilerich.com>
parents:
13207
diff
changeset
|
89 |
incoming hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_SOURCE=pull HG_URL=file:$TESTTMP/a |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
90 |
(run 'hg update' to get a working copy) |
1734
9488d53233b5
tests for new hooks. fix things i found when writing tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1481
diff
changeset
|
91 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
92 |
tag hooks can see env vars |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
93 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
94 |
$ cd ../a |
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
95 |
$ echo 'pretag = python "$TESTDIR"/printenv.py pretag' >> .hg/hgrc |
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
96 |
$ echo 'tag = unset HG_PARENT1 HG_PARENT2; python "$TESTDIR"/printenv.py tag' >> .hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
97 |
$ hg tag -d '3 0' a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
98 |
pretag hook: HG_LOCAL=0 HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_TAG=a |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
99 |
precommit hook: HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2 |
12640
6cc4b14fb76b
tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents:
12587
diff
changeset
|
100 |
pretxncommit hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PENDING=$TESTTMP/a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
101 |
4:539e4b31b6dc |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
102 |
commit hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2 |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
103 |
commit.b hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2 |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
104 |
tag hook: HG_LOCAL=0 HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_TAG=a |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
105 |
$ hg tag -l la |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
106 |
pretag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=la |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
107 |
tag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=la |
1734
9488d53233b5
tests for new hooks. fix things i found when writing tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1481
diff
changeset
|
108 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
109 |
pretag hook can forbid tagging |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
110 |
|
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
111 |
$ echo 'pretag.forbid = python "$TESTDIR"/printenv.py pretag.forbid 1' >> .hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
112 |
$ hg tag -d '4 0' fa |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
113 |
pretag hook: HG_LOCAL=0 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fa |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
114 |
pretag.forbid hook: HG_LOCAL=0 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fa |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
115 |
abort: pretag.forbid hook exited with status 1 |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
116 |
[255] |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
117 |
$ hg tag -l fla |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
118 |
pretag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fla |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
119 |
pretag.forbid hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fla |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
120 |
abort: pretag.forbid hook exited with status 1 |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
121 |
[255] |
1734
9488d53233b5
tests for new hooks. fix things i found when writing tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1481
diff
changeset
|
122 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
123 |
pretxncommit hook can see changeset, can roll back txn, changeset no |
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
124 |
more there after |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
125 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
126 |
$ echo 'pretxncommit.forbid0 = hg tip -q' >> .hg/hgrc |
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
127 |
$ echo 'pretxncommit.forbid1 = python "$TESTDIR"/printenv.py pretxncommit.forbid 1' >> .hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
128 |
$ echo z > z |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
129 |
$ hg add z |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
130 |
$ hg -q tip |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
131 |
4:539e4b31b6dc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
132 |
$ hg commit -m 'fail' -d '4 0' |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
133 |
precommit hook: HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 |
12640
6cc4b14fb76b
tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents:
12587
diff
changeset
|
134 |
pretxncommit hook: HG_NODE=6f611f8018c10e827fee6bd2bc807f937e761567 HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PENDING=$TESTTMP/a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
135 |
5:6f611f8018c1 |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
136 |
5:6f611f8018c1 |
12640
6cc4b14fb76b
tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents:
12587
diff
changeset
|
137 |
pretxncommit.forbid hook: HG_NODE=6f611f8018c10e827fee6bd2bc807f937e761567 HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PENDING=$TESTTMP/a |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
138 |
transaction abort! |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
139 |
rollback completed |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
140 |
abort: pretxncommit.forbid1 hook exited with status 1 |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
141 |
[255] |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
142 |
$ hg -q tip |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
143 |
4:539e4b31b6dc |
1734
9488d53233b5
tests for new hooks. fix things i found when writing tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1481
diff
changeset
|
144 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
145 |
precommit hook can prevent commit |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
146 |
|
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
147 |
$ echo 'precommit.forbid = python "$TESTDIR"/printenv.py precommit.forbid 1' >> .hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
148 |
$ hg commit -m 'fail' -d '4 0' |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
149 |
precommit hook: HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
150 |
precommit.forbid hook: HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
151 |
abort: precommit.forbid hook exited with status 1 |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
152 |
[255] |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
153 |
$ hg -q tip |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
154 |
4:539e4b31b6dc |
1734
9488d53233b5
tests for new hooks. fix things i found when writing tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1481
diff
changeset
|
155 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
156 |
preupdate hook can prevent update |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
157 |
|
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
158 |
$ echo 'preupdate = python "$TESTDIR"/printenv.py preupdate' >> .hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
159 |
$ hg update 1 |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
160 |
preupdate hook: HG_PARENT1=ab228980c14d |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
161 |
0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
2266
3f7692b0ff13
hooks: add preupdate and update hooks.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2227
diff
changeset
|
162 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
163 |
update hook |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
164 |
|
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
165 |
$ echo 'update = python "$TESTDIR"/printenv.py update' >> .hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
166 |
$ hg update |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
167 |
preupdate hook: HG_PARENT1=539e4b31b6dc |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
168 |
update hook: HG_ERROR=0 HG_PARENT1=539e4b31b6dc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
169 |
2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
2266
3f7692b0ff13
hooks: add preupdate and update hooks.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2227
diff
changeset
|
170 |
|
14102
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
171 |
pushkey hook |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
172 |
|
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
173 |
$ echo 'pushkey = python "$TESTDIR"/printenv.py pushkey' >> .hg/hgrc |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
174 |
$ cd ../b |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
175 |
$ hg bookmark -r null foo |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
176 |
$ hg push -B foo ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
177 |
pushing to ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
178 |
searching for changes |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
179 |
no changes found |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
180 |
exporting bookmark foo |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
181 |
pushkey hook: HG_KEY=foo HG_NAMESPACE=bookmarks HG_NEW=0000000000000000000000000000000000000000 HG_RET=1 |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
182 |
$ cd ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
183 |
|
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
184 |
listkeys hook |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
185 |
|
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
186 |
$ echo 'listkeys = python "$TESTDIR"/printenv.py listkeys' >> .hg/hgrc |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
187 |
$ hg bookmark -r null bar |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
188 |
$ cd ../b |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
189 |
$ hg pull -B bar ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
190 |
pulling from ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
191 |
listkeys hook: HG_NAMESPACE=bookmarks HG_VALUES={'bar': '0000000000000000000000000000000000000000', 'foo': '0000000000000000000000000000000000000000'} |
14164
cb98fed52495
discovery: add new set-based discovery
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14102
diff
changeset
|
192 |
no changes found |
14102
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
193 |
listkeys hook: HG_NAMESPACE=bookmarks HG_VALUES={'bar': '0000000000000000000000000000000000000000', 'foo': '0000000000000000000000000000000000000000'} |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
194 |
importing bookmark bar |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
195 |
$ cd ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
196 |
|
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
197 |
test that prepushkey can prevent incoming keys |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
198 |
|
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
199 |
$ echo 'prepushkey = python "$TESTDIR"/printenv.py prepushkey.forbid 1' >> .hg/hgrc |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
200 |
$ cd ../b |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
201 |
$ hg bookmark -r null baz |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
202 |
$ hg push -B baz ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
203 |
pushing to ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
204 |
searching for changes |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
205 |
no changes found |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
206 |
listkeys hook: HG_NAMESPACE=bookmarks HG_VALUES={'bar': '0000000000000000000000000000000000000000', 'foo': '0000000000000000000000000000000000000000'} |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
207 |
listkeys hook: HG_NAMESPACE=bookmarks HG_VALUES={'bar': '0000000000000000000000000000000000000000', 'foo': '0000000000000000000000000000000000000000'} |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
208 |
exporting bookmark baz |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
209 |
prepushkey.forbid hook: HG_KEY=baz HG_NAMESPACE=bookmarks HG_NEW=0000000000000000000000000000000000000000 |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
210 |
abort: prepushkey hook exited with status 1 |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
211 |
[255] |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
212 |
$ cd ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
213 |
|
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
214 |
test that prelistkeys can prevent listing keys |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
215 |
|
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
216 |
$ echo 'prelistkeys = python "$TESTDIR"/printenv.py prelistkeys.forbid 1' >> .hg/hgrc |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
217 |
$ hg bookmark -r null quux |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
218 |
$ cd ../b |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
219 |
$ hg pull -B quux ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
220 |
pulling from ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
221 |
prelistkeys.forbid hook: HG_NAMESPACE=bookmarks |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
222 |
abort: prelistkeys hook exited with status 1 |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
223 |
[255] |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
224 |
$ cd ../a |
7f45b1911893
pushkey: add hooks for pushkey/listkeys
Brodie Rao <brodie@bitheap.org>
parents:
13477
diff
changeset
|
225 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
226 |
prechangegroup hook can prevent incoming changes |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
227 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
228 |
$ cd ../b |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
229 |
$ hg -q tip |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
230 |
3:07f3376c1e65 |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
231 |
$ echo '[hooks]' > .hg/hgrc |
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
232 |
$ echo 'prechangegroup.forbid = python "$TESTDIR"/printenv.py prechangegroup.forbid 1' >> .hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
233 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
234 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
235 |
searching for changes |
13439
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
236 |
prechangegroup.forbid hook: HG_SOURCE=pull HG_URL=file:$TESTTMP/a |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
237 |
abort: prechangegroup.forbid hook exited with status 1 |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
238 |
[255] |
1734
9488d53233b5
tests for new hooks. fix things i found when writing tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1481
diff
changeset
|
239 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
240 |
pretxnchangegroup hook can see incoming changes, can roll back txn, |
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
241 |
incoming changes no longer there after |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
242 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
243 |
$ echo '[hooks]' > .hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
244 |
$ echo 'pretxnchangegroup.forbid0 = hg tip -q' >> .hg/hgrc |
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
245 |
$ echo 'pretxnchangegroup.forbid1 = python "$TESTDIR"/printenv.py pretxnchangegroup.forbid 1' >> .hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
246 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
247 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
248 |
searching for changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
249 |
adding changesets |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
250 |
adding manifests |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
251 |
adding file changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
252 |
added 1 changesets with 1 changes to 1 files |
13439
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
253 |
4:539e4b31b6dc |
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
254 |
pretxnchangegroup.forbid hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PENDING=$TESTTMP/b HG_SOURCE=pull HG_URL=file:$TESTTMP/a |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
255 |
transaction abort! |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
256 |
rollback completed |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
257 |
abort: pretxnchangegroup.forbid1 hook exited with status 1 |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
258 |
[255] |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
259 |
$ hg -q tip |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
260 |
3:07f3376c1e65 |
1736
50de0887bbcd
add preoutgoing and outgoing hooks.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1734
diff
changeset
|
261 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
262 |
outgoing hooks can see env vars |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
263 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
264 |
$ rm .hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
265 |
$ echo '[hooks]' > ../a/.hg/hgrc |
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
266 |
$ echo 'preoutgoing = python "$TESTDIR"/printenv.py preoutgoing' >> ../a/.hg/hgrc |
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
267 |
$ echo 'outgoing = python "$TESTDIR"/printenv.py outgoing' >> ../a/.hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
268 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
269 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
270 |
searching for changes |
13439
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
271 |
preoutgoing hook: HG_SOURCE=pull |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
272 |
adding changesets |
13439
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
273 |
outgoing hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_SOURCE=pull |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
274 |
adding manifests |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
275 |
adding file changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
276 |
added 1 changesets with 1 changes to 1 files |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
277 |
(run 'hg update' to get a working copy) |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
278 |
$ hg rollback |
13446
1e497df514e2
rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents:
13439
diff
changeset
|
279 |
repository tip rolled back to revision 3 (undo pull) |
1e497df514e2
rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents:
13439
diff
changeset
|
280 |
working directory now based on revision 0 |
1736
50de0887bbcd
add preoutgoing and outgoing hooks.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1734
diff
changeset
|
281 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
282 |
preoutgoing hook can prevent outgoing changes |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
283 |
|
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
284 |
$ echo 'preoutgoing.forbid = python "$TESTDIR"/printenv.py preoutgoing.forbid 1' >> ../a/.hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
285 |
$ hg pull ../a |
13439
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
286 |
pulling from ../a |
d724a69309e0
util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents:
13405
diff
changeset
|
287 |
searching for changes |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
288 |
preoutgoing hook: HG_SOURCE=pull |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
289 |
preoutgoing.forbid hook: HG_SOURCE=pull |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
290 |
abort: preoutgoing.forbid hook exited with status 1 |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
291 |
[255] |
1736
50de0887bbcd
add preoutgoing and outgoing hooks.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1734
diff
changeset
|
292 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
293 |
outgoing hooks work for local clones |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
294 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
295 |
$ cd .. |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
296 |
$ echo '[hooks]' > a/.hg/hgrc |
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
297 |
$ echo 'preoutgoing = python "$TESTDIR"/printenv.py preoutgoing' >> a/.hg/hgrc |
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
298 |
$ echo 'outgoing = python "$TESTDIR"/printenv.py outgoing' >> a/.hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
299 |
$ hg clone a c |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
300 |
preoutgoing hook: HG_SOURCE=clone |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
301 |
outgoing hook: HG_NODE=0000000000000000000000000000000000000000 HG_SOURCE=clone |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
302 |
updating to branch default |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
303 |
3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
304 |
$ rm -rf c |
8907
e9ef409e6399
Add (pre)outgoing hooks for local clones.
Fred Wulff <frew@cs.stanford.edu>
parents:
4659
diff
changeset
|
305 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
306 |
preoutgoing hook can prevent outgoing changes for local clones |
8907
e9ef409e6399
Add (pre)outgoing hooks for local clones.
Fred Wulff <frew@cs.stanford.edu>
parents:
4659
diff
changeset
|
307 |
|
13405
682edefe7dbb
tests: use printenv.py where it is - don't copy it around
Mads Kiilerich <mads@kiilerich.com>
parents:
13404
diff
changeset
|
308 |
$ echo 'preoutgoing.forbid = python "$TESTDIR"/printenv.py preoutgoing.forbid 1' >> a/.hg/hgrc |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
309 |
$ hg clone a zzz |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
310 |
preoutgoing hook: HG_SOURCE=clone |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
311 |
preoutgoing.forbid hook: HG_SOURCE=clone |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
312 |
abort: preoutgoing.forbid hook exited with status 1 |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
313 |
[255] |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
314 |
$ cd b |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
315 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
316 |
$ cat > hooktests.py <<EOF |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
317 |
> from mercurial import util |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
318 |
> |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
319 |
> uncallable = 0 |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
320 |
> |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
321 |
> def printargs(args): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
322 |
> args.pop('ui', None) |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
323 |
> args.pop('repo', None) |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
324 |
> a = list(args.items()) |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
325 |
> a.sort() |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
326 |
> print 'hook args:' |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
327 |
> for k, v in a: |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
328 |
> print ' ', k, v |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
329 |
> |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
330 |
> def passhook(**args): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
331 |
> printargs(args) |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
332 |
> |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
333 |
> def failhook(**args): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
334 |
> printargs(args) |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
335 |
> return True |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
336 |
> |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
337 |
> class LocalException(Exception): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
338 |
> pass |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
339 |
> |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
340 |
> def raisehook(**args): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
341 |
> raise LocalException('exception from hook') |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
342 |
> |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
343 |
> def aborthook(**args): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
344 |
> raise util.Abort('raise abort from hook') |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
345 |
> |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
346 |
> def brokenhook(**args): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
347 |
> return 1 + {} |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
348 |
> |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
349 |
> class container: |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
350 |
> unreachable = 1 |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
351 |
> EOF |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
352 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
353 |
test python hooks |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
354 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
355 |
$ PYTHONPATH="`pwd`:$PYTHONPATH" |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
356 |
$ export PYTHONPATH |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
357 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
358 |
$ echo '[hooks]' > ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
359 |
$ echo 'preoutgoing.broken = python:hooktests.brokenhook' >> ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
360 |
$ hg pull ../a 2>&1 | grep 'raised an exception' |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
361 |
error: preoutgoing.broken hook raised an exception: unsupported operand type(s) for +: 'int' and 'dict' |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
362 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
363 |
$ echo '[hooks]' > ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
364 |
$ echo 'preoutgoing.raise = python:hooktests.raisehook' >> ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
365 |
$ hg pull ../a 2>&1 | grep 'raised an exception' |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
366 |
error: preoutgoing.raise hook raised an exception: exception from hook |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
367 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
368 |
$ echo '[hooks]' > ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
369 |
$ echo 'preoutgoing.abort = python:hooktests.aborthook' >> ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
370 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
371 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
372 |
searching for changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
373 |
error: preoutgoing.abort hook failed: raise abort from hook |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
374 |
abort: raise abort from hook |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
375 |
[255] |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
376 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
377 |
$ echo '[hooks]' > ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
378 |
$ echo 'preoutgoing.fail = python:hooktests.failhook' >> ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
379 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
380 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
381 |
searching for changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
382 |
hook args: |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
383 |
hooktype preoutgoing |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
384 |
source pull |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
385 |
abort: preoutgoing.fail hook failed |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
386 |
[255] |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
387 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
388 |
$ echo '[hooks]' > ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
389 |
$ echo 'preoutgoing.uncallable = python:hooktests.uncallable' >> ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
390 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
391 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
392 |
searching for changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
393 |
abort: preoutgoing.uncallable hook is invalid ("hooktests.uncallable" is not callable) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
394 |
[255] |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
395 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
396 |
$ echo '[hooks]' > ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
397 |
$ echo 'preoutgoing.nohook = python:hooktests.nohook' >> ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
398 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
399 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
400 |
searching for changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
401 |
abort: preoutgoing.nohook hook is invalid ("hooktests.nohook" is not defined) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
402 |
[255] |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
403 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
404 |
$ echo '[hooks]' > ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
405 |
$ echo 'preoutgoing.nomodule = python:nomodule' >> ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
406 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
407 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
408 |
searching for changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
409 |
abort: preoutgoing.nomodule hook is invalid ("nomodule" not in a module) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
410 |
[255] |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
411 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
412 |
$ echo '[hooks]' > ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
413 |
$ echo 'preoutgoing.badmodule = python:nomodule.nowhere' >> ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
414 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
415 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
416 |
searching for changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
417 |
abort: preoutgoing.badmodule hook is invalid (import of "nomodule" failed) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
418 |
[255] |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
419 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
420 |
$ echo '[hooks]' > ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
421 |
$ echo 'preoutgoing.unreachable = python:hooktests.container.unreachable' >> ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
422 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
423 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
424 |
searching for changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
425 |
abort: preoutgoing.unreachable hook is invalid (import of "hooktests.container" failed) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
426 |
[255] |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
427 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
428 |
$ echo '[hooks]' > ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
429 |
$ echo 'preoutgoing.pass = python:hooktests.passhook' >> ../a/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
430 |
$ hg pull ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
431 |
pulling from ../a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
432 |
searching for changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
433 |
hook args: |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
434 |
hooktype preoutgoing |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
435 |
source pull |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
436 |
adding changesets |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
437 |
adding manifests |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
438 |
adding file changes |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
439 |
added 1 changesets with 1 changes to 1 files |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
440 |
(run 'hg update' to get a working copy) |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
441 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
442 |
make sure --traceback works |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
443 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
444 |
$ echo '[hooks]' > .hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
445 |
$ echo 'commit.abort = python:hooktests.aborthook' >> .hg/hgrc |
2155
ff255b41b4aa
support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
446 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
447 |
$ echo aa > a |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
448 |
$ hg --traceback commit -d '0 0' -ma 2>&1 | grep '^Traceback' |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
449 |
Traceback (most recent call last): |
4070
961ccb615cf7
Handle functions as the value of a hooks.<name> config variable
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
2673
diff
changeset
|
450 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
451 |
$ cd .. |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
452 |
$ hg init c |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
453 |
$ cd c |
4070
961ccb615cf7
Handle functions as the value of a hooks.<name> config variable
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
2673
diff
changeset
|
454 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
455 |
$ cat > hookext.py <<EOF |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
456 |
> def autohook(**args): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
457 |
> print "Automatically installed hook" |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
458 |
> |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
459 |
> def reposetup(ui, repo): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
460 |
> repo.ui.setconfig("hooks", "commit.auto", autohook) |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
461 |
> EOF |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
462 |
$ echo '[extensions]' >> .hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
463 |
$ echo 'hookext = hookext.py' >> .hg/hgrc |
4070
961ccb615cf7
Handle functions as the value of a hooks.<name> config variable
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
2673
diff
changeset
|
464 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
465 |
$ touch foo |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
466 |
$ hg add foo |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
467 |
$ hg ci -d '0 0' -m 'add foo' |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
468 |
Automatically installed hook |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
469 |
$ echo >> foo |
11794
80c63b2a29a8
tests: remove useless sed in test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11793
diff
changeset
|
470 |
$ hg ci --debug -d '0 0' -m 'change foo' |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
471 |
foo |
12376
97ffc68f71d3
tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents:
12375
diff
changeset
|
472 |
calling hook commit.auto: <function autohook at *> (glob) |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
473 |
Automatically installed hook |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
474 |
committed changeset 1:52998019f6252a2b893452765fcb0a47351a5708 |
4070
961ccb615cf7
Handle functions as the value of a hooks.<name> config variable
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
2673
diff
changeset
|
475 |
|
11794
80c63b2a29a8
tests: remove useless sed in test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11793
diff
changeset
|
476 |
$ hg showconfig hooks |
12376
97ffc68f71d3
tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents:
12375
diff
changeset
|
477 |
hooks.commit.auto=<function autohook at *> (glob) |
4085
719488a98ebe
Fix hg showconfig traceback with values that aren't strings
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4070
diff
changeset
|
478 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
479 |
test python hook configured with python:[file]:[hook] syntax |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
480 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
481 |
$ cd .. |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
482 |
$ mkdir d |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
483 |
$ cd d |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
484 |
$ hg init repo |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
485 |
$ mkdir hooks |
9014
87c05a78e588
test python hook configured with python:[file]:[hook] syntax
Henri Wiechers <hwiechers@gmail.com>
parents:
8907
diff
changeset
|
486 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
487 |
$ cd hooks |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
488 |
$ cat > testhooks.py <<EOF |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
489 |
> def testhook(**args): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
490 |
> print 'hook works' |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
491 |
> EOF |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
492 |
$ echo '[hooks]' > ../repo/.hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
493 |
$ echo "pre-commit.test = python:`pwd`/testhooks.py:testhook" >> ../repo/.hg/hgrc |
9014
87c05a78e588
test python hook configured with python:[file]:[hook] syntax
Henri Wiechers <hwiechers@gmail.com>
parents:
8907
diff
changeset
|
494 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
495 |
$ cd ../repo |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
496 |
$ hg commit -d '0 0' |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
497 |
hook works |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
498 |
nothing changed |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
499 |
[1] |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
500 |
|
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
501 |
$ cd ../../b |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
502 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12327
diff
changeset
|
503 |
make sure --traceback works on hook import failure |
9014
87c05a78e588
test python hook configured with python:[file]:[hook] syntax
Henri Wiechers <hwiechers@gmail.com>
parents:
8907
diff
changeset
|
504 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
505 |
$ cat > importfail.py <<EOF |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
506 |
> import somebogusmodule |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
507 |
> # dereference something in the module to force demandimport to load it |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
508 |
> somebogusmodule.whatever |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
509 |
> EOF |
9851
9e7b2c49d25d
Make it possible to debug failed hook imports via use of --traceback
Bryan O'Sullivan <bos@serpentine.com>
parents:
9014
diff
changeset
|
510 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
511 |
$ echo '[hooks]' > .hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
512 |
$ echo 'precommit.importfail = python:importfail.whatever' >> .hg/hgrc |
9851
9e7b2c49d25d
Make it possible to debug failed hook imports via use of --traceback
Bryan O'Sullivan <bos@serpentine.com>
parents:
9014
diff
changeset
|
513 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
514 |
$ echo a >> a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
515 |
$ hg --traceback commit -ma 2>&1 | egrep '^(exception|Traceback|ImportError)' |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
516 |
exception from first failed import attempt: |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
517 |
Traceback (most recent call last): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
518 |
ImportError: No module named somebogusmodule |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
519 |
exception from second failed import attempt: |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
520 |
Traceback (most recent call last): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
521 |
ImportError: No module named hgext_importfail |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
522 |
Traceback (most recent call last): |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
523 |
|
12399
4fee1fd3de9a
tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents:
12376
diff
changeset
|
524 |
Issue1827: Hooks Update & Commit not completely post operation |
4fee1fd3de9a
tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents:
12376
diff
changeset
|
525 |
|
4fee1fd3de9a
tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents:
12376
diff
changeset
|
526 |
commit and update hooks should run after command completion |
10492
0e64d814d7d0
run commit and update hooks after command completion (issue1827)
Sune Foldager <cryo@cyanite.org>
parents:
10079
diff
changeset
|
527 |
|
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
528 |
$ echo '[hooks]' > .hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
529 |
$ echo 'commit = hg id' >> .hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
530 |
$ echo 'update = hg id' >> .hg/hgrc |
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
531 |
$ echo bb > a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
532 |
$ hg ci -ma |
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
533 |
223eafe2750c tip |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
534 |
$ hg up 0 |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11794
diff
changeset
|
535 |
cb9a9f314b8b |
11793
a03ce716495d
tests: unify test-hook
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
10492
diff
changeset
|
536 |
1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9851
9e7b2c49d25d
Make it possible to debug failed hook imports via use of --traceback
Bryan O'Sullivan <bos@serpentine.com>
parents:
9014
diff
changeset
|
537 |