tests/test-encoding.t
author Mads Kiilerich <madski@unity3d.com>
Tue, 29 Jan 2013 17:01:41 +0100
branchstable
changeset 18501 a3b2dc1aa909
parent 17361 5e276d1d504a
child 22429 7a7eed5176a4
permissions -rw-r--r--
OS X: try cheap ascii .lower() in normcase before making full unicode dance This is similar to what is done in encoding.lower, introduced in c481761033bd. This has been seen making 'hg up' and 'hg st' in a 50000+ files repo 13% faster. This might make Mercurial slightly slower for users who mainly use non-ASCII filenames. That is a reasonable trade-off.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
     1
Test character encoding
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
     2
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
     3
  $ hg init t
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
     4
  $ cd t
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
     5
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
     6
we need a repo with some legacy latin-1 changesets
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     7
16350
4f795f5fbb0b tests: make tests work if directory contains special characters
Thomas Arendsen Hein <thomas@intevation.de>
parents: 15769
diff changeset
     8
  $ hg unbundle "$TESTDIR/bundles/legacy-encoding.hg"
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
     9
  adding changesets
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    10
  adding manifests
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    11
  adding file changes
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    12
  added 2 changesets with 2 changes to 1 files
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    13
  (run 'hg update' to get a working copy)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    14
  $ hg co
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    15
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    16
  $ python << EOF
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    17
  > f = file('latin-1', 'w'); f.write("latin-1 e' encoded: \xe9"); f.close()
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    18
  > f = file('utf-8', 'w'); f.write("utf-8 e' encoded: \xc3\xa9"); f.close()
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    19
  > f = file('latin-1-tag', 'w'); f.write("\xe9"); f.close()
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    20
  > EOF
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    21
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    22
should fail with encoding error
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    23
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    24
  $ echo "plain old ascii" > a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    25
  $ hg st
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    26
  M a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    27
  ? latin-1
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    28
  ? latin-1-tag
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    29
  ? utf-8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    30
  $ HGENCODING=ascii hg ci -l latin-1
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    31
  transaction abort!
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    32
  rollback completed
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
    33
  abort: decoding near ' encoded: \xe9': 'ascii' codec can't decode byte 0xe9 in position 20: ordinal not in range(128)! (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    34
  [255]
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    35
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    36
these should work
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    37
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    38
  $ echo "latin-1" > a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    39
  $ HGENCODING=latin-1 hg ci -l latin-1
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    40
  $ echo "utf-8" > a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    41
  $ HGENCODING=utf-8 hg ci -l utf-8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    42
  $ HGENCODING=latin-1 hg tag `cat latin-1-tag`
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    43
  $ HGENCODING=latin-1 hg branch `cat latin-1-tag`
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
    44
  marked working directory as branch \xe9 (esc)
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 14162
diff changeset
    45
  (branches are permanent and global, did you want a bookmark?)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    46
  $ HGENCODING=latin-1 hg ci -m 'latin1 branch'
17360
935831597e16 rollback: write dirstate branch with correct encoding
Sune Foldager <cryo@cyanite.org>
parents: 16913
diff changeset
    47
  $ hg -q rollback
935831597e16 rollback: write dirstate branch with correct encoding
Sune Foldager <cryo@cyanite.org>
parents: 16913
diff changeset
    48
  $ HGENCODING=latin-1 hg branch
935831597e16 rollback: write dirstate branch with correct encoding
Sune Foldager <cryo@cyanite.org>
parents: 16913
diff changeset
    49
  \xe9 (esc)
935831597e16 rollback: write dirstate branch with correct encoding
Sune Foldager <cryo@cyanite.org>
parents: 16913
diff changeset
    50
  $ HGENCODING=latin-1 hg ci -m 'latin1 branch'
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    51
  $ rm .hg/branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    52
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    53
hg log (ascii)
3783
4421cef5d3f0 Make quoting in test-encoding simpler
Matt Mackall <mpm@selenic.com>
parents: 3780
diff changeset
    54
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    55
  $ hg --encoding ascii log
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14116
diff changeset
    56
  changeset:   5:a52c0692f24a
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    57
  branch:      ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    58
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    59
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    60
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    61
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    62
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    63
  changeset:   4:94db611b4196
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    64
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    65
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    66
  summary:     Added tag ? for changeset ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    67
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    68
  changeset:   3:ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    69
  tag:         ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    70
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    71
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    72
  summary:     utf-8 e' encoded: ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    73
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    74
  changeset:   2:650c6f3d55dd
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    75
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    76
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    77
  summary:     latin-1 e' encoded: ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    78
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    79
  changeset:   1:0e5b7e3f9c4a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    80
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    81
  date:        Mon Jan 12 13:46:40 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    82
  summary:     koi8-r: ????? = u'\u0440\u0442\u0443\u0442\u044c'
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    83
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    84
  changeset:   0:1e78a93102a3
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    85
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    86
  date:        Mon Jan 12 13:46:40 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    87
  summary:     latin-1 e': ? = u'\xe9'
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    88
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    89
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    90
hg log (latin-1)
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    91
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    92
  $ hg --encoding latin-1 log
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14116
diff changeset
    93
  changeset:   5:a52c0692f24a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
    94
  branch:      \xe9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    95
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    96
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    97
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    98
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    99
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   100
  changeset:   4:94db611b4196
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   101
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   102
  date:        Thu Jan 01 00:00:00 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   103
  summary:     Added tag \xe9 for changeset ca661e7520de (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   104
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   105
  changeset:   3:ca661e7520de
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   106
  tag:         \xe9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   107
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   108
  date:        Thu Jan 01 00:00:00 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   109
  summary:     utf-8 e' encoded: \xe9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   110
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   111
  changeset:   2:650c6f3d55dd
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   112
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   113
  date:        Thu Jan 01 00:00:00 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   114
  summary:     latin-1 e' encoded: \xe9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   115
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   116
  changeset:   1:0e5b7e3f9c4a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   117
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   118
  date:        Mon Jan 12 13:46:40 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   119
  summary:     koi8-r: \xd2\xd4\xd5\xd4\xd8 = u'\\u0440\\u0442\\u0443\\u0442\\u044c' (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   120
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   121
  changeset:   0:1e78a93102a3
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   122
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   123
  date:        Mon Jan 12 13:46:40 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   124
  summary:     latin-1 e': \xe9 = u'\\xe9' (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   125
  
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   126
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   127
hg log (utf-8)
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   128
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   129
  $ hg --encoding utf-8 log
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14116
diff changeset
   130
  changeset:   5:a52c0692f24a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   131
  branch:      \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   132
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   133
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   134
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   135
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   136
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   137
  changeset:   4:94db611b4196
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   138
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   139
  date:        Thu Jan 01 00:00:00 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   140
  summary:     Added tag \xc3\xa9 for changeset ca661e7520de (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   141
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   142
  changeset:   3:ca661e7520de
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   143
  tag:         \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   144
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   145
  date:        Thu Jan 01 00:00:00 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   146
  summary:     utf-8 e' encoded: \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   147
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   148
  changeset:   2:650c6f3d55dd
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   149
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   150
  date:        Thu Jan 01 00:00:00 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   151
  summary:     latin-1 e' encoded: \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   152
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   153
  changeset:   1:0e5b7e3f9c4a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   154
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   155
  date:        Mon Jan 12 13:46:40 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   156
  summary:     koi8-r: \xc3\x92\xc3\x94\xc3\x95\xc3\x94\xc3\x98 = u'\\u0440\\u0442\\u0443\\u0442\\u044c' (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   157
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   158
  changeset:   0:1e78a93102a3
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   159
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   160
  date:        Mon Jan 12 13:46:40 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   161
  summary:     latin-1 e': \xc3\xa9 = u'\\xe9' (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   162
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   163
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   164
hg tags (ascii)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   165
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   166
  $ HGENCODING=ascii hg tags
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14116
diff changeset
   167
  tip                                5:a52c0692f24a
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   168
  ?                                  3:ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   169
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   170
hg tags (latin-1)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   171
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   172
  $ HGENCODING=latin-1 hg tags
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14116
diff changeset
   173
  tip                                5:a52c0692f24a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   174
  \xe9                                  3:ca661e7520de (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   175
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   176
hg tags (utf-8)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   177
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   178
  $ HGENCODING=utf-8 hg tags
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14116
diff changeset
   179
  tip                                5:a52c0692f24a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   180
  \xc3\xa9                                  3:ca661e7520de (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   181
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   182
hg branches (ascii)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   183
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   184
  $ HGENCODING=ascii hg branches
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14116
diff changeset
   185
  ?                              5:a52c0692f24a
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   186
  default                        4:94db611b4196 (inactive)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   187
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   188
hg branches (latin-1)
3835
d1ce5461beed Allow the user to specify the fallback encoding for the changelog
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3827
diff changeset
   189
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   190
  $ HGENCODING=latin-1 hg branches
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14116
diff changeset
   191
  \xe9                              5:a52c0692f24a (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   192
  default                        4:94db611b4196 (inactive)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   193
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   194
hg branches (utf-8)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   195
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   196
  $ HGENCODING=utf-8 hg branches
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14116
diff changeset
   197
  \xc3\xa9                              5:a52c0692f24a (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   198
  default                        4:94db611b4196 (inactive)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   199
  $ echo '[ui]' >> .hg/hgrc
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   200
  $ echo 'fallbackencoding = koi8-r' >> .hg/hgrc
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   201
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   202
hg log (utf-8)
3843
abaa2cd00d2b make transcoding more robust
Matt Mackall <mpm@selenic.com>
parents: 3839
diff changeset
   203
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   204
  $ HGENCODING=utf-8 hg log
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 14116
diff changeset
   205
  changeset:   5:a52c0692f24a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   206
  branch:      \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   207
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   208
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   209
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   210
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   211
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   212
  changeset:   4:94db611b4196
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   213
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   214
  date:        Thu Jan 01 00:00:00 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   215
  summary:     Added tag \xc3\xa9 for changeset ca661e7520de (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   216
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   217
  changeset:   3:ca661e7520de
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   218
  tag:         \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   219
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   220
  date:        Thu Jan 01 00:00:00 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   221
  summary:     utf-8 e' encoded: \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   222
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   223
  changeset:   2:650c6f3d55dd
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   224
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   225
  date:        Thu Jan 01 00:00:00 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   226
  summary:     latin-1 e' encoded: \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   227
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   228
  changeset:   1:0e5b7e3f9c4a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   229
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   230
  date:        Mon Jan 12 13:46:40 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   231
  summary:     koi8-r: \xd1\x80\xd1\x82\xd1\x83\xd1\x82\xd1\x8c = u'\\u0440\\u0442\\u0443\\u0442\\u044c' (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   232
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   233
  changeset:   0:1e78a93102a3
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   234
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   235
  date:        Mon Jan 12 13:46:40 1970 +0000
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   236
  summary:     latin-1 e': \xd0\x98 = u'\\xe9' (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   237
  
3845
8958417abf62 Make test-encoding return 0
Matt Mackall <mpm@selenic.com>
parents: 3843
diff changeset
   238
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   239
hg log (dolphin)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   240
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   241
  $ HGENCODING=dolphin hg log
15769
afdf4f5bac61 encoding: use hint markup for "please check your locale settings"
Mads Kiilerich <mads@kiilerich.com>
parents: 15615
diff changeset
   242
  abort: unknown encoding: dolphin
afdf4f5bac61 encoding: use hint markup for "please check your locale settings"
Mads Kiilerich <mads@kiilerich.com>
parents: 15615
diff changeset
   243
  (please check your locale settings)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   244
  [255]
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   245
  $ HGENCODING=ascii hg branch `cat latin-1-tag`
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   246
  abort: decoding near '\xe9': 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)! (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   247
  [255]
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   248
  $ cp latin-1-tag .hg/branch
13047
6c375e07d673 branch: operate on branch names in local string space where possible
Matt Mackall <mpm@selenic.com>
parents: 12942
diff changeset
   249
  $ HGENCODING=latin-1 hg ci -m 'auto-promote legacy name'
13940
b7b26e54e37a encoding: avoid localstr when a string can be encoded losslessly (issue2763)
Matt Mackall <mpm@selenic.com>
parents: 13047
diff changeset
   250
b7b26e54e37a encoding: avoid localstr when a string can be encoded losslessly (issue2763)
Matt Mackall <mpm@selenic.com>
parents: 13047
diff changeset
   251
Test roundtrip encoding of lookup tables when not using UTF-8 (issue2763)
b7b26e54e37a encoding: avoid localstr when a string can be encoded losslessly (issue2763)
Matt Mackall <mpm@selenic.com>
parents: 13047
diff changeset
   252
b7b26e54e37a encoding: avoid localstr when a string can be encoded losslessly (issue2763)
Matt Mackall <mpm@selenic.com>
parents: 13047
diff changeset
   253
  $ HGENCODING=latin-1 hg up `cat latin-1-tag`
b7b26e54e37a encoding: avoid localstr when a string can be encoded losslessly (issue2763)
Matt Mackall <mpm@selenic.com>
parents: 13047
diff changeset
   254
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
17346
2944a6d35158 check-code: fix check for trailing whitespace on empty lines
Mads Kiilerich <mads@kiilerich.com>
parents: 16913
diff changeset
   255
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16350
diff changeset
   256
  $ cd ..