annotate tests/test-mq-qrefresh-replace-log-message.t @ 29196:bf7b8157c483 stable

strip: invalidate phase cache after stripping changeset (issue5235) When we remove a changeset from the changelog, the phase cache must be invalidated, otherwise it could refer to changesets that are no longer in the repo. To reproduce the failure, I created an extension querying the phase cache after the strip transaction is over. To do that, I stripped two commits with a bookmark on one of them to force another transaction (we open a transaction for moving bookmarks) after the strip transaction. Without the fix in this patch, the test leads to a stacktrace showing the issue: repair.strip(ui, repo, revs, backup) File "/Users/lcharignon/facebook-hg-rpms/hg-crew/mercurial/repair.py", line 205, in strip tr.close() File "/Users/lcharignon/facebook-hg-rpms/hg-crew/mercurial/transaction.py", line 44, in _active return func(self, *args, **kwds) File "/Users/lcharignon/facebook-hg-rpms/hg-crew/mercurial/transaction.py", line 490, in close self._postclosecallback[cat](self) File "$TESTTMP/crashstrip2.py", line 4, in test [repo.changelog.node(r) for r in repo.revs("not public()")] File "/Users/lcharignon/facebook-hg-rpms/hg-crew/mercurial/changelog.py", line 337, in node return super(changelog, self).node(rev) File "/Users/lcharignon/facebook-hg-rpms/hg-crew/mercurial/revlog.py", line 377, in node return self.index[rev][7] IndexError: revlog index out of range The situation was encountered in inhibit (evolve's repo) where we would crash following the volatile set invalidation submitted by Augie in e6f490e328635312ee214a12bc7fd3c7d46bf9ce. Before his patch the issue was masked as we were not accessing the phasecache after stripping a revision. This bug uncovered another but in histedit (see explanation in issue5235). I changed the histedit test accordingly to avoid fixing two things at once.
author Laurent Charignon <lcharignon@fb.com>
date Thu, 12 May 2016 06:13:59 -0700
parents 5a0ffa245920
children 318a24b52eeb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17478
113d0a3d050b spelling: Environment
timeless@mozdev.org
parents: 12468
diff changeset
1 Environment setup for MQ
2694
0fb28dbf0dc7 MQ: uniformise message and logfile option.
"Mathieu Clabaut <mathieu.clabaut@gmail.com>"
parents:
diff changeset
2
12468
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
3 $ echo "[extensions]" >> $HGRCPATH
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
4 $ echo "mq=" >> $HGRCPATH
26750
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
5 $ cat >> $HGRCPATH <<EOF
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
6 > [defaults]
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
7 > # explicit date to commit with fixed hashid
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
8 > qnew = -d "0 0"
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
9 > qrefresh = -d "0 0"
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
10 > qfold = -d "0 0"
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
11 > EOF
12468
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
12 $ hg init
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
13 $ hg qinit
2694
0fb28dbf0dc7 MQ: uniformise message and logfile option.
"Mathieu Clabaut <mathieu.clabaut@gmail.com>"
parents:
diff changeset
14
12468
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
15 Should fail if no patches applied
21423
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
16 (this tests also that editor is not invoked if '--edit' is not
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
17 specified)
2694
0fb28dbf0dc7 MQ: uniformise message and logfile option.
"Mathieu Clabaut <mathieu.clabaut@gmail.com>"
parents:
diff changeset
18
12468
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
19 $ hg qrefresh
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
20 no patches applied
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
21 [1]
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
22 $ hg qrefresh -e
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
23 no patches applied
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
24 [1]
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
25 $ hg qnew -m "First commit message" first-patch
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
26 $ echo aaaa > file
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
27 $ hg add file
21423
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
28 $ HGEDITOR=cat hg qrefresh
5334
448eb46d4d84 mq: fix qrefresh -e with no patches applied
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4659
diff changeset
29
12468
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
30 Should display 'First commit message'
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
31
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
32 $ hg log -l1 --template "{desc}\n"
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
33 First commit message
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
34
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
35 Testing changing message with -m
21924
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
36 (this tests also that '--edit' can be used with '--message', and
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
37 that '[committemplate] changeset' definition and commit log specific
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
38 template keyword 'extramsg' work well)
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
39
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
40 $ cat >> .hg/hgrc <<EOF
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
41 > [committemplate]
22013
de5cee8ba088 cmdutil: use '[committemplate]' section like as map file for style definition
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21930
diff changeset
42 > listupfiles = {file_adds %
de5cee8ba088 cmdutil: use '[committemplate]' section like as map file for style definition
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21930
diff changeset
43 > "HG: added {file}\n" }{file_mods %
de5cee8ba088 cmdutil: use '[committemplate]' section like as map file for style definition
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21930
diff changeset
44 > "HG: changed {file}\n" }{file_dels %
de5cee8ba088 cmdutil: use '[committemplate]' section like as map file for style definition
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21930
diff changeset
45 > "HG: removed {file}\n" }{if(files, "",
de5cee8ba088 cmdutil: use '[committemplate]' section like as map file for style definition
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21930
diff changeset
46 > "HG: no files changed\n")}
de5cee8ba088 cmdutil: use '[committemplate]' section like as map file for style definition
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21930
diff changeset
47 >
21924
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
48 > changeset = HG: this is customized commit template
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
49 > {desc}\n\n
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
50 > HG: Enter commit message. Lines beginning with 'HG:' are removed.
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
51 > HG: {extramsg}
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
52 > HG: --
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
53 > HG: user: {author}
22013
de5cee8ba088 cmdutil: use '[committemplate]' section like as map file for style definition
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21930
diff changeset
54 > HG: branch '{branch}'\n{listupfiles}
21924
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
55 > EOF
12468
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
56
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
57 $ echo bbbb > file
21713
7a51bced398b qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21423
diff changeset
58 $ HGEDITOR=cat hg qrefresh -m "Second commit message" -e
21924
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
59 HG: this is customized commit template
21713
7a51bced398b qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21423
diff changeset
60 Second commit message
7a51bced398b qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21423
diff changeset
61
7a51bced398b qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21423
diff changeset
62
7a51bced398b qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21423
diff changeset
63 HG: Enter commit message. Lines beginning with 'HG:' are removed.
7a51bced398b qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21423
diff changeset
64 HG: Leave message empty to use default message.
7a51bced398b qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21423
diff changeset
65 HG: --
7a51bced398b qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21423
diff changeset
66 HG: user: test
7a51bced398b qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21423
diff changeset
67 HG: branch 'default'
7a51bced398b qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21423
diff changeset
68 HG: added file
2694
0fb28dbf0dc7 MQ: uniformise message and logfile option.
"Mathieu Clabaut <mathieu.clabaut@gmail.com>"
parents:
diff changeset
69
21924
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
70 $ cat >> .hg/hgrc <<EOF
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
71 > # disable customizing for subsequent tests
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
72 > [committemplate]
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
73 > changeset =
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
74 > EOF
5375ba75df40 cmdutil: make commit message shown in text editor customizable by template
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21713
diff changeset
75
12468
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
76 Should display 'Second commit message'
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
77
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
78 $ hg log -l1 --template "{desc}\n"
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
79 Second commit message
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
80
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
81 Testing changing message with -l
2694
0fb28dbf0dc7 MQ: uniformise message and logfile option.
"Mathieu Clabaut <mathieu.clabaut@gmail.com>"
parents:
diff changeset
82
12468
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
83 $ echo "Third commit message" > logfile
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
84 $ echo " This is the 3rd log message" >> logfile
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
85 $ echo bbbb > file
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
86 $ hg qrefresh -l logfile
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
87
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
88 Should display 'Third commit message\\\n This is the 3rd log message'
2694
0fb28dbf0dc7 MQ: uniformise message and logfile option.
"Mathieu Clabaut <mathieu.clabaut@gmail.com>"
parents:
diff changeset
89
12468
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
90 $ hg log -l1 --template "{desc}\n"
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
91 Third commit message
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
92 This is the 3rd log message
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
93
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
94 Testing changing message with -l-
2694
0fb28dbf0dc7 MQ: uniformise message and logfile option.
"Mathieu Clabaut <mathieu.clabaut@gmail.com>"
parents:
diff changeset
95
12468
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
96 $ hg qnew -m "First commit message" second-patch
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
97 $ echo aaaa > file2
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
98 $ hg add file2
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
99 $ echo bbbb > file2
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
100 $ (echo "Fifth commit message"; echo " This is the 5th log message") | hg qrefresh -l-
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
101
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
102 Should display 'Fifth commit message\\\n This is the 5th log message'
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
103
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
104 $ hg log -l1 --template "{desc}\n"
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
105 Fifth commit message
d8bf747d2e29 tests: unify test-mq-qrefresh-replace-log-message
Matt Mackall <mpm@selenic.com>
parents: 5334
diff changeset
106 This is the 5th log message
21236
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
107
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
108 Test saving last-message.txt:
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
109
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
110 $ cat > $TESTTMP/editor.sh << EOF
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
111 > echo "==== before editing"
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
112 > cat \$1
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
113 > echo "===="
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
114 > (echo; echo "test saving last-message.txt") >> \$1
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
115 > EOF
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
116
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
117 $ cat > $TESTTMP/commitfailure.py <<EOF
26587
56b2bcea2529 error: get Abort from 'error' instead of 'util'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22013
diff changeset
118 > from mercurial import error
21236
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
119 > def reposetup(ui, repo):
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
120 > class commitfailure(repo.__class__):
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
121 > def commit(self, *args, **kwargs):
26587
56b2bcea2529 error: get Abort from 'error' instead of 'util'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22013
diff changeset
122 > raise error.Abort('emulating unexpected abort')
21236
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
123 > repo.__class__ = commitfailure
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
124 > EOF
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
125
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
126 $ cat >> .hg/hgrc <<EOF
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
127 > [extensions]
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
128 > # this failure occurs before editor invocation
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
129 > commitfailure = $TESTTMP/commitfailure.py
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
130 > EOF
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
131
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
132 $ hg qapplied
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
133 first-patch
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
134 second-patch
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
135 $ hg tip --template "{files}\n"
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
136 file2
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
137
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
138 (test that editor is not invoked before transaction starting)
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
139
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
140 $ rm -f .hg/last-message.txt
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
141 $ HGEDITOR="sh $TESTTMP/editor.sh" hg qrefresh -e
26780
bbf544b5f2e9 mq: consistently use qrefresh
timeless@mozdev.org
parents: 26751
diff changeset
142 qrefresh interrupted while patch was popped! (revert --all, qpush to recover)
21236
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
143 abort: emulating unexpected abort
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
144 [255]
21930
a5168eb9b2bc tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents: 21924
diff changeset
145 $ test -f .hg/last-message.txt
21236
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
146 [1]
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
147
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
148 (reset applied patches and directory status)
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
149
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
150 $ cat >> .hg/hgrc <<EOF
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
151 > [extensions]
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
152 > commitfailure = !
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
153 > EOF
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
154
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
155 $ hg qapplied
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
156 first-patch
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
157 $ hg status -A file2
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
158 ? file2
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
159 $ rm file2
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
160 $ hg qpush -q second-patch
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
161 now at: second-patch
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
162
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
163 (test that editor is invoked and commit message is saved into
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
164 "last-message.txt")
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
165
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
166 $ cat >> .hg/hgrc <<EOF
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
167 > [hooks]
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
168 > # this failure occurs after editor invocation
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
169 > pretxncommit.unexpectedabort = false
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
170 > EOF
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
171
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
172 $ rm -f .hg/last-message.txt
21423
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
173 $ hg status --rev "second-patch^1" -arm
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
174 A file2
21236
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
175 $ HGEDITOR="sh $TESTTMP/editor.sh" hg qrefresh -e
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
176 ==== before editing
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
177 Fifth commit message
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
178 This is the 5th log message
21423
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
179
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
180
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
181 HG: Enter commit message. Lines beginning with 'HG:' are removed.
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
182 HG: Leave message empty to use default message.
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
183 HG: --
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
184 HG: user: test
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
185 HG: branch 'default'
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
186 HG: added file2
21236
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
187 ====
26998
4414d500604f localrepo: put bookmark move following commit in one transaction
Laurent Charignon <lcharignon@fb.com>
parents: 26780
diff changeset
188 note: commit message saved in .hg/last-message.txt
21236
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
189 transaction abort!
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
190 rollback completed
26780
bbf544b5f2e9 mq: consistently use qrefresh
timeless@mozdev.org
parents: 26751
diff changeset
191 qrefresh interrupted while patch was popped! (revert --all, qpush to recover)
21236
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
192 abort: pretxncommit.unexpectedabort hook exited with status 1
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
193 [255]
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
194 $ cat .hg/last-message.txt
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
195 Fifth commit message
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
196 This is the 5th log message
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
197
21423
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
198
7d408720453d mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21236
diff changeset
199
21236
49148d7868df qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17478
diff changeset
200 test saving last-message.txt
26750
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
201
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
202 Test visibility of in-memory distate changes outside transaction to
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
203 external process
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
204
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
205 $ cat > $TESTTMP/checkvisibility.sh <<EOF
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
206 > echo "===="
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
207 > hg parents --template "{rev}:{node|short}\n"
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
208 > hg status -arm
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
209 > echo "===="
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
210 > EOF
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
211
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
212 == test visibility to external editor
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
213
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
214 $ hg update -C -q first-patch
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
215 $ rm -f file2
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
216 $ hg qpush -q second-patch --config hooks.pretxncommit.unexpectedabort=
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
217 now at: second-patch
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
218 $ echo bbbb >> file2
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
219
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
220 $ sh "$TESTTMP/checkvisibility.sh"
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
221 ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
222 1:e30108269082
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
223 M file2
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
224 ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
225
27055
5a0ffa245920 test-mq-qrefresh: drop single quoting of HGEDITOR value for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 26998
diff changeset
226 $ HGEDITOR="sh \"$TESTTMP/checkvisibility.sh\"" hg qrefresh -e
26750
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
227 ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
228 0:25e397dabed2
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
229 A file2
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
230 ====
26998
4414d500604f localrepo: put bookmark move following commit in one transaction
Laurent Charignon <lcharignon@fb.com>
parents: 26780
diff changeset
231 note: commit message saved in .hg/last-message.txt
26750
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
232 transaction abort!
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
233 rollback completed
26780
bbf544b5f2e9 mq: consistently use qrefresh
timeless@mozdev.org
parents: 26751
diff changeset
234 qrefresh interrupted while patch was popped! (revert --all, qpush to recover)
26750
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
235 abort: pretxncommit.unexpectedabort hook exited with status 1
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
236 [255]
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
237
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
238 (rebuilding at failure of qrefresh bases on rev #0, and it causes
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
239 dropping status of "file2")
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
240
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
241 $ sh "$TESTTMP/checkvisibility.sh"
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
242 ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
243 0:25e397dabed2
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26587
diff changeset
244 ====
26751
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
245
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
246 == test visibility to precommit external hook
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
247
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
248 $ hg update -C -q
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
249 $ rm -f file2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
250 $ hg qpush -q second-patch --config hooks.pretxncommit.unexpectedabort=
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
251 now at: second-patch
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
252 $ echo bbbb >> file2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
253
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
254 $ cat >> .hg/hgrc <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
255 > [hooks]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
256 > precommit.checkvisibility = sh "$TESTTMP/checkvisibility.sh"
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
257 > EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
258
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
259 $ sh "$TESTTMP/checkvisibility.sh"
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
260 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
261 1:e30108269082
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
262 M file2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
263 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
264
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
265 $ hg qrefresh
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
266 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
267 0:25e397dabed2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
268 A file2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
269 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
270 transaction abort!
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
271 rollback completed
26780
bbf544b5f2e9 mq: consistently use qrefresh
timeless@mozdev.org
parents: 26751
diff changeset
272 qrefresh interrupted while patch was popped! (revert --all, qpush to recover)
26751
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
273 abort: pretxncommit.unexpectedabort hook exited with status 1
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
274 [255]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
275
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
276 $ sh "$TESTTMP/checkvisibility.sh"
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
277 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
278 0:25e397dabed2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
279 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
280
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
281 $ cat >> .hg/hgrc <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
282 > [hooks]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
283 > precommit.checkvisibility =
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
284 > EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
285
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
286 == test visibility to pretxncommit external hook
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
287
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
288 $ hg update -C -q
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
289 $ rm -f file2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
290 $ hg qpush -q second-patch --config hooks.pretxncommit.unexpectedabort=
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
291 now at: second-patch
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
292 $ echo bbbb >> file2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
293
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
294 $ cat >> .hg/hgrc <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
295 > [hooks]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
296 > pretxncommit.checkvisibility = sh "$TESTTMP/checkvisibility.sh"
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
297 > # make checkvisibility run before unexpectedabort
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
298 > priority.pretxncommit.checkvisibility = 10
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
299 > EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
300
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
301 $ sh "$TESTTMP/checkvisibility.sh"
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
302 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
303 1:e30108269082
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
304 M file2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
305 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
306
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
307 $ hg qrefresh
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
308 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
309 0:25e397dabed2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
310 A file2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
311 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
312 transaction abort!
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
313 rollback completed
26780
bbf544b5f2e9 mq: consistently use qrefresh
timeless@mozdev.org
parents: 26751
diff changeset
314 qrefresh interrupted while patch was popped! (revert --all, qpush to recover)
26751
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
315 abort: pretxncommit.unexpectedabort hook exited with status 1
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
316 [255]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
317
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
318 $ sh "$TESTTMP/checkvisibility.sh"
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
319 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
320 0:25e397dabed2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
321 ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
322
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
323 $ cat >> .hg/hgrc <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
324 > [hooks]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
325 > pretxncommit.checkvisibility =
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
326 > EOF