Mercurial > hg
annotate tests/test-eolfilename.t @ 33116:6c113a7dec52
tests: use the system hg for examining the local repository
Most test scripts use "hg" to interact with a temporary test repository.
However a few tests also want to run hg commands to interact with the local
repository containing the mercurial source code. Notably, many of the
test-check-* tests want to check local files and commit messages.
These tests were previously using the version of hg being tested to query the
source repository. However, this will fail if the source repository requires
extensions or other settings not supported by the version of mercurial being
tested. The source repository was typically initially cloned using the system
hg installation, so we should use the system hg installation to query it.
There was already a helpers-testrepo.sh script designed to help cope with
different requirements for the source repository versus the test repositories.
However, it only handled the evolve extension. This new behavior works with
any extensions that are different between the system installation and the test
installation.
author | Adam Simpkins <simpkins@fb.com> |
---|---|
date | Tue, 27 Jun 2017 17:24:31 -0700 |
parents | 20c9f3ecc192 |
children | 7c3a59e2971b |
rev | line source |
---|---|
22046
7a9cbb315d84
tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents:
17910
diff
changeset
|
1 #require eol-in-paths |
3607
f4c9bb4ad7b1
issue352: disallow '\n' and '\r' in filenames (dirstate and manifest)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
2 |
26420
2fc86d92c4a9
urls: bulk-change BTS urls to new location
Matt Mackall <mpm@selenic.com>
parents:
23172
diff
changeset
|
3 https://bz.mercurial-scm.org/352 |
3607
f4c9bb4ad7b1
issue352: disallow '\n' and '\r' in filenames (dirstate and manifest)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
4 |
12425
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
5 test issue352 |
3607
f4c9bb4ad7b1
issue352: disallow '\n' and '\r' in filenames (dirstate and manifest)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
6 |
12425
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
7 $ hg init foo |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
8 $ cd foo |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
9 $ A=`printf 'he\rllo'` |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
10 $ echo foo > "$A" |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
11 $ hg add |
17742
405b6bd015df
run-tests: allow test output lines to be terminated with \r in addition to \n
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
12 adding he\r (no-eol) (esc) |
405b6bd015df
run-tests: allow test output lines to be terminated with \r in addition to \n
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
13 llo |
12425
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
14 abort: '\n' and '\r' disallowed in filenames: 'he\rllo' |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
15 [255] |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
16 $ hg ci -A -m m |
17742
405b6bd015df
run-tests: allow test output lines to be terminated with \r in addition to \n
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
17 adding he\r (no-eol) (esc) |
405b6bd015df
run-tests: allow test output lines to be terminated with \r in addition to \n
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
18 llo |
12425
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
19 abort: '\n' and '\r' disallowed in filenames: 'he\rllo' |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
20 [255] |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
21 $ rm "$A" |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
22 $ echo foo > "hell |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
23 > o" |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
24 $ hg add |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
25 adding hell |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
26 o |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
27 abort: '\n' and '\r' disallowed in filenames: 'hell\no' |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
28 [255] |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
29 $ hg ci -A -m m |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
30 adding hell |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
31 o |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
32 abort: '\n' and '\r' disallowed in filenames: 'hell\no' |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
33 [255] |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
34 $ echo foo > "$A" |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
35 $ hg debugwalk |
32553
20c9f3ecc192
match: handle everything-matching using new alwaysmatcher
Martin von Zweigbergk <martinvonz@google.com>
parents:
32504
diff
changeset
|
36 matcher: <alwaysmatcher> |
17742
405b6bd015df
run-tests: allow test output lines to be terminated with \r in addition to \n
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
37 f he\r (no-eol) (esc) |
405b6bd015df
run-tests: allow test output lines to be terminated with \r in addition to \n
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
38 llo he\r (no-eol) (esc) |
405b6bd015df
run-tests: allow test output lines to be terminated with \r in addition to \n
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
39 llo |
12425
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
40 f hell |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
41 o hell |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
42 o |
10475
2253715fde97
color: don't crash on invalid status codes (issue2036)
Brodie Rao <me+hg@dackz.net>
parents:
8936
diff
changeset
|
43 |
13945
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
44 $ echo bla > quickfox |
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
45 $ hg add quickfox |
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
46 $ hg ci -m 2 |
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
47 $ A=`printf 'quick\rfox'` |
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
48 $ hg cp quickfox "$A" |
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
49 abort: '\n' and '\r' disallowed in filenames: 'quick\rfox' |
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
50 [255] |
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
51 $ hg mv quickfox "$A" |
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
52 abort: '\n' and '\r' disallowed in filenames: 'quick\rfox' |
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
53 [255] |
03f3ce7ca2a8
copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents:
12942
diff
changeset
|
54 |
26420
2fc86d92c4a9
urls: bulk-change BTS urls to new location
Matt Mackall <mpm@selenic.com>
parents:
23172
diff
changeset
|
55 https://bz.mercurial-scm.org/2036 |
10475
2253715fde97
color: don't crash on invalid status codes (issue2036)
Brodie Rao <me+hg@dackz.net>
parents:
8936
diff
changeset
|
56 |
12425
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
57 $ cd .. |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
58 |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
59 test issue2039 |
10475
2253715fde97
color: don't crash on invalid status codes (issue2036)
Brodie Rao <me+hg@dackz.net>
parents:
8936
diff
changeset
|
60 |
12425
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
61 $ hg init bar |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
62 $ cd bar |
23172
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22046
diff
changeset
|
63 $ cat <<EOF >> $HGRCPATH |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22046
diff
changeset
|
64 > [extensions] |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22046
diff
changeset
|
65 > color = |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22046
diff
changeset
|
66 > [color] |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22046
diff
changeset
|
67 > mode = ansi |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22046
diff
changeset
|
68 > EOF |
12425
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
69 $ A=`printf 'foo\nbar'` |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
70 $ B=`printf 'foo\nbar.baz'` |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
71 $ touch "$A" |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
72 $ touch "$B" |
fcf55506c2f4
tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents:
10475
diff
changeset
|
73 $ hg status --color=always |
17910
c8709ff57ff2
status: use condwrite to avoid zero-width format string hack
Matt Mackall <mpm@selenic.com>
parents:
17742
diff
changeset
|
74 \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mfoo\x1b[0m (esc) |
12942
05fffd665170
tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12425
diff
changeset
|
75 \x1b[0;35;1;4mbar\x1b[0m (esc) |
17910
c8709ff57ff2
status: use condwrite to avoid zero-width format string hack
Matt Mackall <mpm@selenic.com>
parents:
17742
diff
changeset
|
76 \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mfoo\x1b[0m (esc) |
12942
05fffd665170
tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12425
diff
changeset
|
77 \x1b[0;35;1;4mbar.baz\x1b[0m (esc) |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
13987
diff
changeset
|
78 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
13987
diff
changeset
|
79 $ cd .. |