author | Simon Sapin <simon.sapin@octobus.net> |
Fri, 17 Dec 2021 16:54:22 +0100 | |
changeset 48548 | c9abfb80b4e3 |
parent 48052 | 7d908ee19b5b |
child 51706 | 51057ab0dffa |
child 52050 | d1b54c152673 |
permissions | -rw-r--r-- |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
1 |
$ echo "[extensions]" >> $HGRCPATH |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
2 |
$ echo "extdiff=" >> $HGRCPATH |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
3 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
4 |
$ hg init a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
5 |
$ cd a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
6 |
$ echo a > a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
7 |
$ echo b > b |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
8 |
$ hg add |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
9 |
adding a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
10 |
adding b |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
11 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
12 |
Should diff cloned directories: |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
13 |
|
46131
60677eca7434
tests: remove undefined (empty) $opt from test-extdiff.t
Martin von Zweigbergk <martinvonz@google.com>
parents:
43840
diff
changeset
|
14 |
$ hg extdiff -o -r |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
15 |
Only in a: a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
16 |
Only in a: b |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12304
diff
changeset
|
17 |
[1] |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
18 |
|
23172
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
23152
diff
changeset
|
19 |
$ cat <<EOF >> $HGRCPATH |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
23152
diff
changeset
|
20 |
> [extdiff] |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
23152
diff
changeset
|
21 |
> cmd.falabala = echo |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
23152
diff
changeset
|
22 |
> opts.falabala = diffing |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
23152
diff
changeset
|
23 |
> cmd.edspace = echo |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
23152
diff
changeset
|
24 |
> opts.edspace = "name <user@example.com>" |
41597
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
25 |
> alabalaf = |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
26 |
> [merge-tools] |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
27 |
> alabalaf.executable = echo |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
28 |
> alabalaf.diffargs = diffing |
23172
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
23152
diff
changeset
|
29 |
> EOF |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
30 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
31 |
$ hg falabala |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
32 |
diffing a.000000000000 a |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12304
diff
changeset
|
33 |
[1] |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
34 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
35 |
$ hg help falabala |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
36 |
hg falabala [OPTION]... [FILE]... |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
37 |
|
29735
91b2f2176395
extdiff: isolate path variable of saved command to independent paragraph
Yuya Nishihara <yuya@tcha.org>
parents:
29630
diff
changeset
|
38 |
use external program to diff repository (or selected files) |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
39 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
40 |
Show differences between revisions for the specified files, using the |
29735
91b2f2176395
extdiff: isolate path variable of saved command to independent paragraph
Yuya Nishihara <yuya@tcha.org>
parents:
29630
diff
changeset
|
41 |
following program: |
91b2f2176395
extdiff: isolate path variable of saved command to independent paragraph
Yuya Nishihara <yuya@tcha.org>
parents:
29630
diff
changeset
|
42 |
|
91b2f2176395
extdiff: isolate path variable of saved command to independent paragraph
Yuya Nishihara <yuya@tcha.org>
parents:
29630
diff
changeset
|
43 |
'echo' |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
44 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
45 |
When two revision arguments are given, then changes are shown between |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
46 |
those revisions. If only one revision is specified then that revision is |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
47 |
compared to the working directory, and, when no revisions are specified, |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
48 |
the working directory files are compared to its parent. |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
49 |
|
22117
c1d93edcf004
help: fold repeatable option message into option table header
Matt Mackall <mpm@selenic.com>
parents:
22110
diff
changeset
|
50 |
options ([+] can be repeated): |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
51 |
|
15145
ff26712a0c50
help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents:
14024
diff
changeset
|
52 |
-o --option OPT [+] pass option to comparison program |
46134
0a4d47f4337b
extdiff: add --from/--to and deprecate -r, as was done for `hg diff`
Martin von Zweigbergk <martinvonz@google.com>
parents:
46133
diff
changeset
|
53 |
--from REV1 revision to diff from |
0a4d47f4337b
extdiff: add --from/--to and deprecate -r, as was done for `hg diff`
Martin von Zweigbergk <martinvonz@google.com>
parents:
46133
diff
changeset
|
54 |
--to REV2 revision to diff to |
15145
ff26712a0c50
help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents:
14024
diff
changeset
|
55 |
-c --change REV change made by revision |
41501
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
56 |
--per-file compare each file instead of revision snapshots |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
57 |
--confirm prompt user before each external program invocation |
30152
d65e246100ed
help: backout f3c4edfd35e1 (mark boolean flags with [no-] in help) for now
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30026
diff
changeset
|
58 |
--patch compare patches for two revisions |
15145
ff26712a0c50
help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents:
14024
diff
changeset
|
59 |
-I --include PATTERN [+] include names matching the given patterns |
ff26712a0c50
help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents:
14024
diff
changeset
|
60 |
-X --exclude PATTERN [+] exclude names matching the given patterns |
30152
d65e246100ed
help: backout f3c4edfd35e1 (mark boolean flags with [no-] in help) for now
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30026
diff
changeset
|
61 |
-S --subrepos recurse into subrepositories |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
62 |
|
22110
26f7c8033bed
help: tweak --verbose command help hint
Matt Mackall <mpm@selenic.com>
parents:
17837
diff
changeset
|
63 |
(some details hidden, use --verbose to show complete help) |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
64 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
65 |
$ hg ci -d '0 0' -mtest1 |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
66 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
67 |
$ echo b >> a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
68 |
$ hg ci -d '1 0' -mtest2 |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
69 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
70 |
Should diff cloned files directly: |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
71 |
|
46134
0a4d47f4337b
extdiff: add --from/--to and deprecate -r, as was done for `hg diff`
Martin von Zweigbergk <martinvonz@google.com>
parents:
46133
diff
changeset
|
72 |
$ hg falabala --from 0 --to 1 |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
73 |
diffing "*\\extdiff.*\\a.8a5febb7f867\\a" "a.34eed99112ab\\a" (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
74 |
diffing */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !) |
24885
eea3977e6fca
windows: make shellquote() quote any path containing '\' (issue4629)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24153
diff
changeset
|
75 |
[1] |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
76 |
|
46133
dfe2760db2a6
extdiff: fix crash when showing diff from wdir()
Martin von Zweigbergk <martinvonz@google.com>
parents:
46131
diff
changeset
|
77 |
Can show diff from working copy: |
dfe2760db2a6
extdiff: fix crash when showing diff from wdir()
Martin von Zweigbergk <martinvonz@google.com>
parents:
46131
diff
changeset
|
78 |
$ echo c >> a |
46134
0a4d47f4337b
extdiff: add --from/--to and deprecate -r, as was done for `hg diff`
Martin von Zweigbergk <martinvonz@google.com>
parents:
46133
diff
changeset
|
79 |
$ hg falabala --to 1 |
46133
dfe2760db2a6
extdiff: fix crash when showing diff from wdir()
Martin von Zweigbergk <martinvonz@google.com>
parents:
46131
diff
changeset
|
80 |
diffing "*\\extdiff.*\\a" "a.34eed99112ab\\a" (glob) (windows !) |
dfe2760db2a6
extdiff: fix crash when showing diff from wdir()
Martin von Zweigbergk <martinvonz@google.com>
parents:
46131
diff
changeset
|
81 |
diffing */extdiff.*/a a.34eed99112ab/a (glob) (no-windows !) |
dfe2760db2a6
extdiff: fix crash when showing diff from wdir()
Martin von Zweigbergk <martinvonz@google.com>
parents:
46131
diff
changeset
|
82 |
[1] |
dfe2760db2a6
extdiff: fix crash when showing diff from wdir()
Martin von Zweigbergk <martinvonz@google.com>
parents:
46131
diff
changeset
|
83 |
$ hg revert a |
dfe2760db2a6
extdiff: fix crash when showing diff from wdir()
Martin von Zweigbergk <martinvonz@google.com>
parents:
46131
diff
changeset
|
84 |
$ rm a.orig |
dfe2760db2a6
extdiff: fix crash when showing diff from wdir()
Martin von Zweigbergk <martinvonz@google.com>
parents:
46131
diff
changeset
|
85 |
|
26836
88c4e97b9669
scmutil: abort if an empty revision is given to revpair()
Matt Harbison <matt_harbison@yahoo.com>
parents:
26228
diff
changeset
|
86 |
Specifying an empty revision should abort. |
88c4e97b9669
scmutil: abort if an empty revision is given to revpair()
Matt Harbison <matt_harbison@yahoo.com>
parents:
26228
diff
changeset
|
87 |
|
28053
34a2944aac9b
check-code: add rule to detect usage of external diff via extdiff
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27183
diff
changeset
|
88 |
$ hg extdiff -p diff --patch --rev 'ancestor()' --rev 1 |
26836
88c4e97b9669
scmutil: abort if an empty revision is given to revpair()
Matt Harbison <matt_harbison@yahoo.com>
parents:
26228
diff
changeset
|
89 |
abort: empty revision on one side of range |
48052
7d908ee19b5b
errors: use InputError for some invalid revsets and such
Martin von Zweigbergk <martinvonz@google.com>
parents:
46261
diff
changeset
|
90 |
[10] |
26836
88c4e97b9669
scmutil: abort if an empty revision is given to revpair()
Matt Harbison <matt_harbison@yahoo.com>
parents:
26228
diff
changeset
|
91 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
92 |
Test diff during merge: |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
93 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
94 |
$ hg update -C 0 |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
95 |
1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
96 |
$ echo c >> c |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
97 |
$ hg add c |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
98 |
$ hg ci -m "new branch" -d '1 0' |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
99 |
created new head |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
100 |
$ hg merge 1 |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
101 |
1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
102 |
(branch merge, don't forget to commit) |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
103 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
104 |
Should diff cloned file against wc file: |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
105 |
|
24885
eea3977e6fca
windows: make shellquote() quote any path containing '\' (issue4629)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24153
diff
changeset
|
106 |
$ hg falabala |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
107 |
diffing "*\\extdiff.*\\a.2a13a4d2da36\\a" "*\\a\\a" (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
108 |
diffing */extdiff.*/a.2a13a4d2da36/a */a/a (glob) (no-windows !) |
24885
eea3977e6fca
windows: make shellquote() quote any path containing '\' (issue4629)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24153
diff
changeset
|
109 |
[1] |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
110 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
111 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
112 |
Test --change option: |
3330
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2990
diff
changeset
|
113 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
114 |
$ hg ci -d '2 0' -mtest3 |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
115 |
|
24885
eea3977e6fca
windows: make shellquote() quote any path containing '\' (issue4629)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24153
diff
changeset
|
116 |
$ hg falabala -c 1 |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
117 |
diffing "*\\extdiff.*\\a.8a5febb7f867\\a" "a.34eed99112ab\\a" (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
118 |
diffing */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !) |
24885
eea3977e6fca
windows: make shellquote() quote any path containing '\' (issue4629)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24153
diff
changeset
|
119 |
[1] |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
120 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
121 |
Check diff are made from the first parent: |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
122 |
|
24885
eea3977e6fca
windows: make shellquote() quote any path containing '\' (issue4629)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24153
diff
changeset
|
123 |
$ hg falabala -c 3 || echo "diff-like tools yield a non-zero exit code" |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
124 |
diffing "*\\extdiff.*\\a.2a13a4d2da36\\a" "a.46c0e4daeb72\\a" (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
125 |
diffing */extdiff.*/a.2a13a4d2da36/a a.46c0e4daeb72/a (glob) (no-windows !) |
24885
eea3977e6fca
windows: make shellquote() quote any path containing '\' (issue4629)
Matt Harbison <matt_harbison@yahoo.com>
parents:
24153
diff
changeset
|
126 |
diff-like tools yield a non-zero exit code |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
127 |
|
27183
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
128 |
issue3153: ensure using extdiff with removed subrepos doesn't crash: |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
129 |
|
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
130 |
$ hg init suba |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
131 |
$ cd suba |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
132 |
$ echo suba > suba |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
133 |
$ hg add |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
134 |
adding suba |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
135 |
$ hg ci -m "adding suba file" |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
136 |
$ cd .. |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
137 |
$ echo suba=suba > .hgsub |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
138 |
$ hg add |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
139 |
adding .hgsub |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
140 |
$ hg ci -Sm "adding subrepo" |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
141 |
$ echo > .hgsub |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
142 |
$ hg ci -m "removing subrepo" |
46134
0a4d47f4337b
extdiff: add --from/--to and deprecate -r, as was done for `hg diff`
Martin von Zweigbergk <martinvonz@google.com>
parents:
46133
diff
changeset
|
143 |
$ hg falabala --from 4 --to 5 -S |
27183
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
144 |
diffing a.398e36faf9c6 a.5ab95fb166c4 |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
145 |
[1] |
0945539a3a6b
extdiff: correctly handle deleted subrepositories (issue3153)
Andrew Zwicky <andrew.zwicky@gmail.com>
parents:
26836
diff
changeset
|
146 |
|
41501
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
147 |
Test --per-file option: |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
148 |
|
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
149 |
$ hg up -q -C 3 |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
150 |
$ echo a2 > a |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
151 |
$ echo b2 > b |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
152 |
$ hg ci -d '3 0' -mtestmode1 |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
153 |
created new head |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
154 |
$ hg falabala -c 6 --per-file |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
155 |
diffing "*\\extdiff.*\\a.46c0e4daeb72\\a" "a.81906f2b98ac\\a" (glob) (windows !) |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
156 |
diffing */extdiff.*/a.46c0e4daeb72/a a.81906f2b98ac/a (glob) (no-windows !) |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
157 |
diffing "*\\extdiff.*\\a.46c0e4daeb72\\b" "a.81906f2b98ac\\b" (glob) (windows !) |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
158 |
diffing */extdiff.*/a.46c0e4daeb72/b a.81906f2b98ac/b (glob) (no-windows !) |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
159 |
[1] |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
160 |
|
41597
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
161 |
Test --per-file option for gui tool: |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
162 |
|
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
163 |
$ hg --config extdiff.gui.alabalaf=True alabalaf -c 6 --per-file --debug |
41814
e0a3ee3fdb33
tests: add more wildcards to test-extdiff.t
Matt Harbison <matt_harbison@yahoo.com>
parents:
41723
diff
changeset
|
164 |
diffing */extdiff.*/a.46c0e4daeb72/* a.81906f2b98ac/* (glob) |
e0a3ee3fdb33
tests: add more wildcards to test-extdiff.t
Matt Harbison <matt_harbison@yahoo.com>
parents:
41723
diff
changeset
|
165 |
diffing */extdiff.*/a.46c0e4daeb72/* a.81906f2b98ac/* (glob) |
41597
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
166 |
making snapshot of 2 files from rev 46c0e4daeb72 |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
167 |
a |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
168 |
b |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
169 |
making snapshot of 2 files from rev 81906f2b98ac |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
170 |
a |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
171 |
b |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
172 |
running '* diffing * *' in * (backgrounded) (glob) |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
173 |
running '* diffing * *' in * (backgrounded) (glob) |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
174 |
cleaning up temp directory |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
175 |
[1] |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
176 |
|
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
177 |
Test --per-file option for gui tool again: |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
178 |
|
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
179 |
$ hg --config merge-tools.alabalaf.gui=True alabalaf -c 6 --per-file --debug |
41723
88d4477ac4f6
tests: add more wildcards to test-extdiff.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41621
diff
changeset
|
180 |
diffing */extdiff.*/a.46c0e4daeb72/* a.81906f2b98ac/* (glob) |
88d4477ac4f6
tests: add more wildcards to test-extdiff.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41621
diff
changeset
|
181 |
diffing */extdiff.*/a.46c0e4daeb72/* a.81906f2b98ac/* (glob) |
41597
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
182 |
making snapshot of 2 files from rev 46c0e4daeb72 |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
183 |
a |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
184 |
b |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
185 |
making snapshot of 2 files from rev 81906f2b98ac |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
186 |
a |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
187 |
b |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
188 |
running '* diffing * *' in * (backgrounded) (glob) |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
189 |
running '* diffing * *' in * (backgrounded) (glob) |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
190 |
cleaning up temp directory |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
191 |
[1] |
a4cd77a425a3
extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com>
parents:
41501
diff
changeset
|
192 |
|
41501
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
193 |
Test --per-file and --confirm options: |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
194 |
|
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
195 |
$ hg --config ui.interactive=True falabala -c 6 --per-file --confirm <<EOF |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
196 |
> n |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
197 |
> y |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
198 |
> EOF |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
199 |
diff a (1 of 2) [Yns?] n |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
200 |
diff b (2 of 2) [Yns?] y |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
201 |
diffing "*\\extdiff.*\\a.46c0e4daeb72\\b" "a.81906f2b98ac\\b" (glob) (windows !) |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
202 |
diffing */extdiff.*/a.46c0e4daeb72/b a.81906f2b98ac/b (glob) (no-windows !) |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
203 |
[1] |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
204 |
|
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
205 |
Test --per-file and --confirm options with skipping: |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
206 |
|
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
207 |
$ hg --config ui.interactive=True falabala -c 6 --per-file --confirm <<EOF |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
208 |
> s |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
209 |
> EOF |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
210 |
diff a (1 of 2) [Yns?] s |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
211 |
[1] |
fa471151d269
extdiff: add --per-file and --confirm options
Ludovic Chabant <ludovic@chabant.com>
parents:
39723
diff
changeset
|
212 |
|
23680
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
213 |
issue4463: usage of command line configuration without additional quoting |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
214 |
|
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
215 |
$ cat <<EOF >> $HGRCPATH |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
216 |
> [extdiff] |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
217 |
> cmd.4463a = echo |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
218 |
> opts.4463a = a-naked 'single quoted' "double quoted" |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
219 |
> 4463b = echo b-naked 'single quoted' "double quoted" |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
220 |
> echo = |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
221 |
> EOF |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
222 |
$ hg update -q -C 0 |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
223 |
$ echo a >> a |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
224 |
|
23680
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
225 |
$ hg --debug 4463a | grep '^running' |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
226 |
running 'echo a-naked \'single quoted\' "double quoted" "*\\a" "*\\a"' in */extdiff.* (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
227 |
running 'echo a-naked \'single quoted\' "double quoted" */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !) |
23680
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
228 |
$ hg --debug 4463b | grep '^running' |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
229 |
running 'echo b-naked \'single quoted\' "double quoted" "*\\a" "*\\a"' in */extdiff.* (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
230 |
running 'echo b-naked \'single quoted\' "double quoted" */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !) |
23680
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
231 |
$ hg --debug echo | grep '^running' |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
232 |
running '*echo* "*\\a" "*\\a"' in */extdiff.* (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
233 |
running '*echo */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !) |
23680
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
234 |
|
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
235 |
(getting options from other than extdiff section) |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
236 |
|
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
237 |
$ cat <<EOF >> $HGRCPATH |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
238 |
> [extdiff] |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
239 |
> # using diff-tools diffargs |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
240 |
> 4463b2 = echo |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
241 |
> # using merge-tools diffargs |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
242 |
> 4463b3 = echo |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
243 |
> # no diffargs |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
244 |
> 4463b4 = echo |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
245 |
> [diff-tools] |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
246 |
> 4463b2.diffargs = b2-naked 'single quoted' "double quoted" |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
247 |
> [merge-tools] |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
248 |
> 4463b3.diffargs = b3-naked 'single quoted' "double quoted" |
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
249 |
> EOF |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
250 |
|
23680
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
251 |
$ hg --debug 4463b2 | grep '^running' |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
252 |
running 'echo b2-naked \'single quoted\' "double quoted" "*\\a" "*\\a"' in */extdiff.* (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
253 |
running 'echo b2-naked \'single quoted\' "double quoted" */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !) |
23680
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
254 |
$ hg --debug 4463b3 | grep '^running' |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
255 |
running 'echo b3-naked \'single quoted\' "double quoted" "*\\a" "*\\a"' in */extdiff.* (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
256 |
running 'echo b3-naked \'single quoted\' "double quoted" */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !) |
23680
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
257 |
$ hg --debug 4463b4 | grep '^running' |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
258 |
running 'echo "*\\a" "*\\a"' in */extdiff.* (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
259 |
running 'echo */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !) |
23682
1642eb429536
windows: quote the specified string only when it has to be quoted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23680
diff
changeset
|
260 |
$ hg --debug 4463b4 --option b4-naked --option 'being quoted' | grep '^running' |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
261 |
running 'echo b4-naked "being quoted" "*\\a" "*\\a"' in */extdiff.* (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
262 |
running "echo b4-naked 'being quoted' */a $TESTTMP/a/a" in */extdiff.* (glob) (no-windows !) |
23682
1642eb429536
windows: quote the specified string only when it has to be quoted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23680
diff
changeset
|
263 |
$ hg --debug extdiff -p echo --option echo-naked --option 'being quoted' | grep '^running' |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
264 |
running 'echo echo-naked "being quoted" "*\\a" "*\\a"' in */extdiff.* (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
265 |
running "echo echo-naked 'being quoted' */a $TESTTMP/a/a" in */extdiff.* (glob) (no-windows !) |
23680
4075f2f8ea53
extdiff: avoid unexpected quoting arguments for external tools (issue4463)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
23172
diff
changeset
|
266 |
|
23969
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
267 |
$ touch 'sp ace' |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
268 |
$ hg add 'sp ace' |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
269 |
$ hg ci -m 'sp ace' |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
270 |
created new head |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
271 |
$ echo > 'sp ace' |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
272 |
|
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
273 |
Test pre-72a89cf86fcd backward compatibility with half-baked manual quoting |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
274 |
|
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
275 |
$ cat <<EOF >> $HGRCPATH |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
276 |
> [extdiff] |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
277 |
> odd = |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
278 |
> [merge-tools] |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
279 |
> odd.diffargs = --foo='\$clabel' '\$clabel' "--bar=\$clabel" "\$clabel" |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
280 |
> odd.executable = echo |
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
281 |
> EOF |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
282 |
|
32253
bc2e23354cc0
test-extdiff: fill in a missing Windows test
Matt Harbison <matt_harbison@yahoo.com>
parents:
30152
diff
changeset
|
283 |
$ hg --debug odd | grep '^running' |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
284 |
running '"*\\echo.exe" --foo="sp ace" "sp ace" --bar="sp ace" "sp ace"' in * (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
285 |
running "*/echo --foo='sp ace' 'sp ace' --bar='sp ace' 'sp ace'" in * (glob) (no-windows !) |
23969
01e5b7323a48
extdiff: reintroduce backward compatibility with manual quoting of parameters
Mads Kiilerich <madski@unity3d.com>
parents:
23683
diff
changeset
|
286 |
|
24108
d65ecb814fc0
shellquote: fix missing quotes for empty string
Yuya Nishihara <yuya@tcha.org>
parents:
23974
diff
changeset
|
287 |
Empty argument must be quoted |
d65ecb814fc0
shellquote: fix missing quotes for empty string
Yuya Nishihara <yuya@tcha.org>
parents:
23974
diff
changeset
|
288 |
|
d65ecb814fc0
shellquote: fix missing quotes for empty string
Yuya Nishihara <yuya@tcha.org>
parents:
23974
diff
changeset
|
289 |
$ cat <<EOF >> $HGRCPATH |
d65ecb814fc0
shellquote: fix missing quotes for empty string
Yuya Nishihara <yuya@tcha.org>
parents:
23974
diff
changeset
|
290 |
> [extdiff] |
d65ecb814fc0
shellquote: fix missing quotes for empty string
Yuya Nishihara <yuya@tcha.org>
parents:
23974
diff
changeset
|
291 |
> kdiff3 = echo |
d65ecb814fc0
shellquote: fix missing quotes for empty string
Yuya Nishihara <yuya@tcha.org>
parents:
23974
diff
changeset
|
292 |
> [merge-tools] |
d65ecb814fc0
shellquote: fix missing quotes for empty string
Yuya Nishihara <yuya@tcha.org>
parents:
23974
diff
changeset
|
293 |
> kdiff3.diffargs=--L1 \$plabel1 --L2 \$clabel \$parent \$child |
d65ecb814fc0
shellquote: fix missing quotes for empty string
Yuya Nishihara <yuya@tcha.org>
parents:
23974
diff
changeset
|
294 |
> EOF |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
295 |
|
46134
0a4d47f4337b
extdiff: add --from/--to and deprecate -r, as was done for `hg diff`
Martin von Zweigbergk <martinvonz@google.com>
parents:
46133
diff
changeset
|
296 |
$ hg --debug kdiff3 --from 0 | grep '^running' |
32254
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
297 |
running 'echo --L1 "@0" --L2 "" a.8a5febb7f867 a' in * (glob) (windows !) |
c05f71e57ec4
test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com>
parents:
32253
diff
changeset
|
298 |
running "echo --L1 '@0' --L2 '' a.8a5febb7f867 a" in * (glob) (no-windows !) |
24108
d65ecb814fc0
shellquote: fix missing quotes for empty string
Yuya Nishihara <yuya@tcha.org>
parents:
23974
diff
changeset
|
299 |
|
16899
8149ff405c78
tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
300 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
301 |
Test extdiff of multiple files in tmp dir: |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
302 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
303 |
$ hg update -C 0 > /dev/null |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
304 |
$ echo changed > a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
305 |
$ echo changed > b |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
306 |
#if execbit |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
307 |
$ chmod +x b |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
308 |
#endif |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
309 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
310 |
Diff in working directory, before: |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
311 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
312 |
$ hg diff --git |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
313 |
diff --git a/a b/a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
314 |
--- a/a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
315 |
+++ b/a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
316 |
@@ -1,1 +1,1 @@ |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
317 |
-a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
318 |
+changed |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
319 |
diff --git a/b b/b |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
320 |
old mode 100644 (execbit !) |
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
321 |
new mode 100755 (execbit !) |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
322 |
--- a/b |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
323 |
+++ b/b |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
324 |
@@ -1,1 +1,1 @@ |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
325 |
-b |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
326 |
+changed |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
327 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
328 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
329 |
Edit with extdiff -p: |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
330 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
331 |
Prepare custom diff/edit tool: |
8065
66d0a03d3afc
extdiff: preserve execute-bit across copies (issue1562)
Patrick Mezard <pmezard@gmail.com>
parents:
7758
diff
changeset
|
332 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
333 |
$ cat > 'diff tool.py' << EOT |
32956
b6776b34e44e
tests: use $PYTHON in #! so we always use the right Python
Augie Fackler <augie@google.com>
parents:
32323
diff
changeset
|
334 |
> #!$PYTHON |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
335 |
> import time |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
336 |
> time.sleep(1) # avoid unchanged-timestamp problems |
36067
d83fc41dabf3
py3: replace file() with open() in test-extdiff.t
Pulkit Goyal <7895pulkit@gmail.com>
parents:
33612
diff
changeset
|
337 |
> open('a/a', 'ab').write(b'edited\n') |
d83fc41dabf3
py3: replace file() with open() in test-extdiff.t
Pulkit Goyal <7895pulkit@gmail.com>
parents:
33612
diff
changeset
|
338 |
> open('a/b', 'ab').write(b'edited\n') |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
339 |
> EOT |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
340 |
|
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
341 |
#if execbit |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
342 |
$ chmod +x 'diff tool.py' |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
343 |
#endif |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
344 |
|
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
345 |
will change to /tmp/extdiff.TMP and populate directories a.TMP and a |
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
346 |
and start tool |
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
347 |
|
33612
3b77d4787c18
tests: avoid unexpected result at invocation of *.py file on Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32956
diff
changeset
|
348 |
#if windows |
3b77d4787c18
tests: avoid unexpected result at invocation of *.py file on Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32956
diff
changeset
|
349 |
$ cat > 'diff tool.bat' << EOF |
39723
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
36301
diff
changeset
|
350 |
> @"$PYTHON" "`pwd`/diff tool.py" |
33612
3b77d4787c18
tests: avoid unexpected result at invocation of *.py file on Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32956
diff
changeset
|
351 |
> EOF |
3b77d4787c18
tests: avoid unexpected result at invocation of *.py file on Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32956
diff
changeset
|
352 |
$ hg extdiff -p "`pwd`/diff tool.bat" |
3b77d4787c18
tests: avoid unexpected result at invocation of *.py file on Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32956
diff
changeset
|
353 |
[1] |
3b77d4787c18
tests: avoid unexpected result at invocation of *.py file on Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32956
diff
changeset
|
354 |
#else |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
355 |
$ hg extdiff -p "`pwd`/diff tool.py" |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12304
diff
changeset
|
356 |
[1] |
33612
3b77d4787c18
tests: avoid unexpected result at invocation of *.py file on Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32956
diff
changeset
|
357 |
#endif |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
358 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
359 |
Diff in working directory, after: |
9956
6045a8c4dbbc
extdiff: respect --option in command aliases (issue949)
Sune Foldager <cryo@cyanite.org>
parents:
8212
diff
changeset
|
360 |
|
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
361 |
$ hg diff --git |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
362 |
diff --git a/a b/a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
363 |
--- a/a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
364 |
+++ b/a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
365 |
@@ -1,1 +1,2 @@ |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
366 |
-a |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
367 |
+changed |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
368 |
+edited |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
369 |
diff --git a/b b/b |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
370 |
old mode 100644 (execbit !) |
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
371 |
new mode 100755 (execbit !) |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
372 |
--- a/b |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
373 |
+++ b/b |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
374 |
@@ -1,1 +1,2 @@ |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
375 |
-b |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
376 |
+changed |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
377 |
+edited |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
378 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
379 |
Test extdiff with --option: |
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
380 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
381 |
$ hg extdiff -p echo -o this -c 1 |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
382 |
this "*\\a.8a5febb7f867\\a" "a.34eed99112ab\\a" (glob) (windows !) |
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
383 |
this */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12304
diff
changeset
|
384 |
[1] |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
385 |
|
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
386 |
$ hg falabala -o this -c 1 |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
387 |
diffing this "*\\a.8a5febb7f867\\a" "a.34eed99112ab\\a" (glob) (windows !) |
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
388 |
diffing this */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12304
diff
changeset
|
389 |
[1] |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
390 |
|
23138
72a89cf86fcd
extdiff: quote user-supplied options passed to shell
Michael Fyles <mf@vorston.net>
parents:
22117
diff
changeset
|
391 |
Test extdiff's handling of options with spaces in them: |
72a89cf86fcd
extdiff: quote user-supplied options passed to shell
Michael Fyles <mf@vorston.net>
parents:
22117
diff
changeset
|
392 |
|
72a89cf86fcd
extdiff: quote user-supplied options passed to shell
Michael Fyles <mf@vorston.net>
parents:
22117
diff
changeset
|
393 |
$ hg edspace -c 1 |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
394 |
"name <user@example.com>" "*\\a.8a5febb7f867\\a" "a.34eed99112ab\\a" (glob) (windows !) |
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
395 |
name <user@example.com> */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !) |
23138
72a89cf86fcd
extdiff: quote user-supplied options passed to shell
Michael Fyles <mf@vorston.net>
parents:
22117
diff
changeset
|
396 |
[1] |
72a89cf86fcd
extdiff: quote user-supplied options passed to shell
Michael Fyles <mf@vorston.net>
parents:
22117
diff
changeset
|
397 |
|
72a89cf86fcd
extdiff: quote user-supplied options passed to shell
Michael Fyles <mf@vorston.net>
parents:
22117
diff
changeset
|
398 |
$ hg extdiff -p echo -o "name <user@example.com>" -c 1 |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
399 |
"name <user@example.com>" "*\\a.8a5febb7f867\\a" "a.34eed99112ab\\a" (glob) (windows !) |
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
400 |
name <user@example.com> */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !) |
23138
72a89cf86fcd
extdiff: quote user-supplied options passed to shell
Michael Fyles <mf@vorston.net>
parents:
22117
diff
changeset
|
401 |
[1] |
72a89cf86fcd
extdiff: quote user-supplied options passed to shell
Michael Fyles <mf@vorston.net>
parents:
22117
diff
changeset
|
402 |
|
13660
a56c1b2bff18
Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents:
12640
diff
changeset
|
403 |
Test with revsets: |
a56c1b2bff18
Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents:
12640
diff
changeset
|
404 |
|
a56c1b2bff18
Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents:
12640
diff
changeset
|
405 |
$ hg extdif -p echo -c "rev(1)" |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
406 |
"*\\a.8a5febb7f867\\a" "a.34eed99112ab\\a" (glob) (windows !) |
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
407 |
*/extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12304
diff
changeset
|
408 |
[1] |
13660
a56c1b2bff18
Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents:
12640
diff
changeset
|
409 |
|
a56c1b2bff18
Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents:
12640
diff
changeset
|
410 |
$ hg extdif -p echo -r "0::1" |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
411 |
"*\\a.8a5febb7f867\\a" "a.34eed99112ab\\a" (glob) (windows !) |
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
412 |
*/extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !) |
13660
a56c1b2bff18
Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents:
12640
diff
changeset
|
413 |
[1] |
14024 | 414 |
|
23150
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
415 |
Fallback to merge-tools.tool.executable|regkey |
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
416 |
$ mkdir dir |
32257
affd753ddaf1
extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com>
parents:
32256
diff
changeset
|
417 |
$ cat > 'dir/tool.sh' << 'EOF' |
23150
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
418 |
> #!/bin/sh |
32257
affd753ddaf1
extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com>
parents:
32256
diff
changeset
|
419 |
> # Mimic a tool that syncs all attrs, including mtime |
affd753ddaf1
extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com>
parents:
32256
diff
changeset
|
420 |
> cp $1/a $2/a |
affd753ddaf1
extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com>
parents:
32256
diff
changeset
|
421 |
> touch -r $1/a $2/a |
32323
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
422 |
> chmod +x $2/a |
23150
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
423 |
> echo "** custom diff **" |
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
424 |
> EOF |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
425 |
#if execbit |
23150
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
426 |
$ chmod +x dir/tool.sh |
32255
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
427 |
#endif |
f41cc3dd73d6
test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com>
parents:
32254
diff
changeset
|
428 |
|
32256
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
429 |
Windows can't run *.sh directly, so create a shim executable that can be. |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
430 |
Without something executable, the next hg command will try to run `tl` instead |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
431 |
of $tool (and fail). |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
432 |
#if windows |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
433 |
$ cat > dir/tool.bat <<EOF |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
434 |
> @sh -c "`pwd`/dir/tool.sh %1 %2" |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
435 |
> EOF |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
436 |
$ tool=`pwd`/dir/tool.bat |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
437 |
#else |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
438 |
$ tool=`pwd`/dir/tool.sh |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
439 |
#endif |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
440 |
|
32257
affd753ddaf1
extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com>
parents:
32256
diff
changeset
|
441 |
$ cat a |
affd753ddaf1
extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com>
parents:
32256
diff
changeset
|
442 |
changed |
affd753ddaf1
extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com>
parents:
32256
diff
changeset
|
443 |
edited |
23150
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
444 |
$ hg --debug tl --config extdiff.tl= --config merge-tools.tl.executable=$tool |
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
445 |
making snapshot of 2 files from rev * (glob) |
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
446 |
a |
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
447 |
b |
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
448 |
making snapshot of 2 files from working directory |
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
449 |
a |
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
450 |
b |
32256
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
451 |
running '$TESTTMP/a/dir/tool.bat a.* a' in */extdiff.* (glob) (windows !) |
98bb992bef19
test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32255
diff
changeset
|
452 |
running '$TESTTMP/a/dir/tool.sh a.* a' in */extdiff.* (glob) (no-windows !) |
23150
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
453 |
** custom diff ** |
32257
affd753ddaf1
extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com>
parents:
32256
diff
changeset
|
454 |
file changed while diffing. Overwriting: $TESTTMP/a/a (src: */extdiff.*/a/a) (glob) |
23150
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
455 |
cleaning up temp directory |
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
456 |
[1] |
32257
affd753ddaf1
extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com>
parents:
32256
diff
changeset
|
457 |
$ cat a |
affd753ddaf1
extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com>
parents:
32256
diff
changeset
|
458 |
a |
23150
aff73c777b0b
extdiff: allow a preconfigured merge-tool to be invoked
Matt Harbison <matt_harbison@yahoo.com>
parents:
22117
diff
changeset
|
459 |
|
32323
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
460 |
#if execbit |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
461 |
$ [ -x a ] |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
462 |
|
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
463 |
$ cat > 'dir/tool.sh' << 'EOF' |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
464 |
> #!/bin/sh |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
465 |
> chmod -x $2/a |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
466 |
> echo "** custom diff **" |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
467 |
> EOF |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
468 |
|
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
469 |
$ hg --debug tl --config extdiff.tl= --config merge-tools.tl.executable=$tool |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
470 |
making snapshot of 2 files from rev * (glob) |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
471 |
a |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
472 |
b |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
473 |
making snapshot of 2 files from working directory |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
474 |
a |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
475 |
b |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
476 |
running '$TESTTMP/a/dir/tool.sh a.* a' in */extdiff.* (glob) |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
477 |
** custom diff ** |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
478 |
file changed while diffing. Overwriting: $TESTTMP/a/a (src: */extdiff.*/a/a) (glob) |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
479 |
cleaning up temp directory |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
480 |
[1] |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
481 |
|
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
482 |
$ [ -x a ] |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
483 |
[1] |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
484 |
#endif |
8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Matt Harbison <matt_harbison@yahoo.com>
parents:
32257
diff
changeset
|
485 |
|
14021
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
486 |
$ cd .. |
12304
41dd368b6fe8
tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents:
10775
diff
changeset
|
487 |
|
16899
8149ff405c78
tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
488 |
#if symlink |
8149ff405c78
tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
489 |
|
14024 | 490 |
Test symlinks handling (issue1909) |
491 |
||
14021
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
492 |
$ hg init testsymlinks |
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
493 |
$ cd testsymlinks |
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
494 |
$ echo a > a |
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
495 |
$ hg ci -Am adda |
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
496 |
adding a |
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
497 |
$ echo a >> a |
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
498 |
$ ln -s missing linka |
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
499 |
$ hg add linka |
46134
0a4d47f4337b
extdiff: add --from/--to and deprecate -r, as was done for `hg diff`
Martin von Zweigbergk <martinvonz@google.com>
parents:
46133
diff
changeset
|
500 |
$ hg falabala --from 0 --traceback |
14021
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
501 |
diffing testsymlinks.07f494440405 testsymlinks |
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
502 |
[1] |
3eb632d9cf42
extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents:
12640
diff
changeset
|
503 |
$ cd .. |
16899
8149ff405c78
tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
504 |
|
8149ff405c78
tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
505 |
#endif |
29630
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
506 |
|
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
507 |
Test handling of non-ASCII paths in generated docstrings (issue5301) |
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
508 |
|
36301
be5a6fe3643a
py3: make test-extdiff.t pass on Python 3
Yuya Nishihara <yuya@tcha.org>
parents:
36067
diff
changeset
|
509 |
>>> with open("u", "wb") as f: |
be5a6fe3643a
py3: make test-extdiff.t pass on Python 3
Yuya Nishihara <yuya@tcha.org>
parents:
36067
diff
changeset
|
510 |
... n = f.write(b"\xa5\xa5") |
29630
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
511 |
$ U=`cat u` |
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
512 |
|
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
513 |
$ HGPLAIN=1 hg --config hgext.extdiff= --config extdiff.cmd.td=hi help -k xyzzy |
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
514 |
abort: no matches |
29978
7109d5ddeb0c
help: use single quotes in use warning
timeless <timeless@mozdev.org>
parents:
29735
diff
changeset
|
515 |
(try 'hg help' for a list of topics) |
46261
c9b2a4d69e66
errors: raise InputError when non-existent help section requested
Martin von Zweigbergk <martinvonz@google.com>
parents:
46134
diff
changeset
|
516 |
[10] |
29630
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
517 |
|
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
518 |
$ HGPLAIN=1 hg --config hgext.extdiff= --config extdiff.cmd.td=hi help td > /dev/null |
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
519 |
|
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
520 |
$ LC_MESSAGES=ja_JP.UTF-8 hg --config hgext.extdiff= --config extdiff.cmd.td=$U help -k xyzzy |
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
521 |
abort: no matches |
29978
7109d5ddeb0c
help: use single quotes in use warning
timeless <timeless@mozdev.org>
parents:
29735
diff
changeset
|
522 |
(try 'hg help' for a list of topics) |
46261
c9b2a4d69e66
errors: raise InputError when non-existent help section requested
Martin von Zweigbergk <martinvonz@google.com>
parents:
46134
diff
changeset
|
523 |
[10] |
29630
67b180c0e263
extdiff: escape path for docstring (issue5301)
Matt Mackall <mpm@selenic.com>
parents:
28053
diff
changeset
|
524 |
|
29735
91b2f2176395
extdiff: isolate path variable of saved command to independent paragraph
Yuya Nishihara <yuya@tcha.org>
parents:
29630
diff
changeset
|
525 |
$ LC_MESSAGES=ja_JP.UTF-8 hg --config hgext.extdiff= --config extdiff.cmd.td=$U help td \ |
91b2f2176395
extdiff: isolate path variable of saved command to independent paragraph
Yuya Nishihara <yuya@tcha.org>
parents:
29630
diff
changeset
|
526 |
> | grep "^ '" |
91b2f2176395
extdiff: isolate path variable of saved command to independent paragraph
Yuya Nishihara <yuya@tcha.org>
parents:
29630
diff
changeset
|
527 |
'\xa5\xa5' |
43810
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
528 |
|
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
529 |
$ cd $TESTTMP |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
530 |
|
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
531 |
Test that diffing a single file works, even if that file is new |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
532 |
|
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
533 |
$ hg init testsinglefile |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
534 |
$ cd testsinglefile |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
535 |
$ echo a > a |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
536 |
$ hg add a |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
537 |
$ hg falabala |
43840
fb03cd716f50
tests: stabilize test-extdiff.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
43810
diff
changeset
|
538 |
diffing nul "*\\a" (glob) (windows !) |
fb03cd716f50
tests: stabilize test-extdiff.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
43810
diff
changeset
|
539 |
diffing /dev/null */a (glob) (no-windows !) |
43810
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
540 |
[1] |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
541 |
$ hg ci -qm a |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
542 |
$ hg falabala -c . |
43840
fb03cd716f50
tests: stabilize test-extdiff.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
43810
diff
changeset
|
543 |
diffing nul "*\\a" (glob) (windows !) |
fb03cd716f50
tests: stabilize test-extdiff.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
43810
diff
changeset
|
544 |
diffing /dev/null */a (glob) (no-windows !) |
43810
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
545 |
[1] |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
546 |
$ echo a >> a |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
547 |
$ hg falabala |
43840
fb03cd716f50
tests: stabilize test-extdiff.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
43810
diff
changeset
|
548 |
diffing "*\\a" "*\\a" (glob) (windows !) |
fb03cd716f50
tests: stabilize test-extdiff.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
43810
diff
changeset
|
549 |
diffing */a */a (glob) (no-windows !) |
43810
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
550 |
[1] |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
551 |
$ hg ci -qm 2a |
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
552 |
$ hg falabala -c . |
43840
fb03cd716f50
tests: stabilize test-extdiff.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
43810
diff
changeset
|
553 |
diffing "*\\a" "*\\a" (glob) (windows !) |
fb03cd716f50
tests: stabilize test-extdiff.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
43810
diff
changeset
|
554 |
diffing */a */a (glob) (no-windows !) |
43810
765a9c299c44
py3: make a pycompat.osdevnull, use it in extdiff
Kyle Lippincott <spectral@google.com>
parents:
41814
diff
changeset
|
555 |
[1] |