tests/test-eolfilename.t
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
Fri, 06 Jul 2012 18:45:27 +0900
changeset 17157 87e8440964a0
parent 16913 f2719b387380
child 17742 405b6bd015df
permissions -rw-r--r--
localrepo: use path expansion API via vfs As a part of migration to vfs, this patch moves path expansion API invocations in the constructor of "localrepository" to the constructor of "opener", because the root path to the repository is very important to handle paths using non-ASCII characters correctly. This patch also rearrange initialization order of "wvfs" field, because it is required to initialize "self.root".
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12425
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
     1
http://mercurial.selenic.com/bts/issue352
3607
f4c9bb4ad7b1 issue352: disallow '\n' and '\r' in filenames (dirstate and manifest)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     2
12425
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
     3
  $ "$TESTDIR/hghave" eol-in-paths || exit 80
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
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12425
diff changeset
    12
  adding he\rllo (esc)
12425
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    13
  abort: '\n' and '\r' disallowed in filenames: 'he\rllo'
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    14
  [255]
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    15
  $ hg ci -A -m m
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12425
diff changeset
    16
  adding he\rllo (esc)
12425
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    17
  abort: '\n' and '\r' disallowed in filenames: 'he\rllo'
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    18
  [255]
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    19
  $ rm "$A"
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    20
  $ echo foo > "hell
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    21
  > o"
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    22
  $ hg add
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    23
  adding hell
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    24
  o
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    25
  abort: '\n' and '\r' disallowed in filenames: 'hell\no'
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    26
  [255]
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    27
  $ hg ci -A -m m
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    28
  adding hell
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    29
  o
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    30
  abort: '\n' and '\r' disallowed in filenames: 'hell\no'
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    31
  [255]
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    32
  $ echo foo > "$A"
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    33
  $ hg debugwalk
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12425
diff changeset
    34
  f  he\rllo  he\rllo (esc)
12425
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    35
  f  hell
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    36
  o  hell
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    37
  o
10475
2253715fde97 color: don't crash on invalid status codes (issue2036)
Brodie Rao <me+hg@dackz.net>
parents: 8936
diff changeset
    38
13945
03f3ce7ca2a8 copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents: 12942
diff changeset
    39
  $ echo bla > quickfox
03f3ce7ca2a8 copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents: 12942
diff changeset
    40
  $ hg add quickfox
03f3ce7ca2a8 copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents: 12942
diff changeset
    41
  $ hg ci -m 2
03f3ce7ca2a8 copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents: 12942
diff changeset
    42
  $ A=`printf 'quick\rfox'`
03f3ce7ca2a8 copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents: 12942
diff changeset
    43
  $ hg cp quickfox "$A"
03f3ce7ca2a8 copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents: 12942
diff changeset
    44
  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
    45
  [255]
03f3ce7ca2a8 copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents: 12942
diff changeset
    46
  $ hg mv quickfox "$A"
03f3ce7ca2a8 copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents: 12942
diff changeset
    47
  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
    48
  [255]
03f3ce7ca2a8 copy: do not copy file if name is disallowed anyway
Adrian Buehlmann <adrian@cadifra.com>
parents: 12942
diff changeset
    49
12425
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    50
http://mercurial.selenic.com/bts/issue2036
10475
2253715fde97 color: don't crash on invalid status codes (issue2036)
Brodie Rao <me+hg@dackz.net>
parents: 8936
diff changeset
    51
12425
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    52
  $ cd ..
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    53
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    54
test issue2039
10475
2253715fde97 color: don't crash on invalid status codes (issue2036)
Brodie Rao <me+hg@dackz.net>
parents: 8936
diff changeset
    55
12425
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    56
  $ hg init bar
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    57
  $ cd bar
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    58
  $ echo "[extensions]" >> $HGRCPATH
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    59
  $ echo "color=" >> $HGRCPATH
13987
e0f07847f8de color: add support for terminfo-based attributes and color
Danek Duvall <duvall@comfychair.org>
parents: 13945
diff changeset
    60
  $ echo "[color]" >> $HGRCPATH
e0f07847f8de color: add support for terminfo-based attributes and color
Danek Duvall <duvall@comfychair.org>
parents: 13945
diff changeset
    61
  $ echo "mode = ansi" >> $HGRCPATH
12425
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    62
  $ A=`printf 'foo\nbar'`
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    63
  $ B=`printf 'foo\nbar.baz'`
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    64
  $ touch "$A"
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    65
  $ touch "$B"
fcf55506c2f4 tests: unify test-eolfilename
Matt Mackall <mpm@selenic.com>
parents: 10475
diff changeset
    66
  $ hg status --color=always
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12425
diff changeset
    67
  \x1b[0;35;1;4m? foo\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12425
diff changeset
    68
  \x1b[0;35;1;4mbar\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12425
diff changeset
    69
  \x1b[0;35;1;4m? foo\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12425
diff changeset
    70
  \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
    71
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 13987
diff changeset
    72
  $ cd ..