tests/test-encoding.t
author Martin Geisler <martin@geisler.net>
Thu, 19 Jul 2012 00:53:27 +0200
branchstable
changeset 17222 98823bd0d697
parent 16350 4f795f5fbb0b
child 16913 f2719b387380
permissions -rw-r--r--
windows: removed duplicate termwidth definition Changeset dbf91976f900 caused this when the "from win32 import *" line was replaced with explicit import statements: the wildcard import was at the bottom of the file and so windows.termwidth was overwritten by win32.termwidth as indented, but the new explicit import statements were at the top and so win32.termwidth got lost. With the switch to ctypes, win32 can always be imported and so the fallback termwidth in windows is no longer needed.
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'
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    47
  $ rm .hg/branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    48
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    49
hg log (ascii)
3783
4421cef5d3f0 Make quoting in test-encoding simpler
Matt Mackall <mpm@selenic.com>
parents: 3780
diff changeset
    50
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    51
  $ 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
    52
  changeset:   5:a52c0692f24a
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    53
  branch:      ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    54
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    55
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    56
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    57
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    58
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    59
  changeset:   4:94db611b4196
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    60
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    61
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    62
  summary:     Added tag ? for changeset ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    63
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    64
  changeset:   3:ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    65
  tag:         ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    66
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    67
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    68
  summary:     utf-8 e' encoded: ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    69
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    70
  changeset:   2:650c6f3d55dd
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    71
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    72
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    73
  summary:     latin-1 e' encoded: ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    74
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    75
  changeset:   1:0e5b7e3f9c4a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    76
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    77
  date:        Mon Jan 12 13:46:40 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    78
  summary:     koi8-r: ????? = u'\u0440\u0442\u0443\u0442\u044c'
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    79
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    80
  changeset:   0:1e78a93102a3
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    81
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    82
  date:        Mon Jan 12 13:46:40 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    83
  summary:     latin-1 e': ? = u'\xe9'
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    84
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    85
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    86
hg log (latin-1)
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    87
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    88
  $ 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
    89
  changeset:   5:a52c0692f24a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
    90
  branch:      \xe9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    91
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    92
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    93
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    94
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    95
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    96
  changeset:   4:94db611b4196
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    97
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    98
  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
    99
  summary:     Added tag \xe9 for changeset ca661e7520de (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   100
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   101
  changeset:   3:ca661e7520de
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   102
  tag:         \xe9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   103
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   104
  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
   105
  summary:     utf-8 e' encoded: \xe9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   106
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   107
  changeset:   2:650c6f3d55dd
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   108
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   109
  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
   110
  summary:     latin-1 e' encoded: \xe9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   111
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   112
  changeset:   1:0e5b7e3f9c4a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   113
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   114
  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
   115
  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
   116
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   117
  changeset:   0:1e78a93102a3
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   118
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   119
  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
   120
  summary:     latin-1 e': \xe9 = u'\\xe9' (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   121
  
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   122
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   123
hg log (utf-8)
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   124
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   125
  $ 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
   126
  changeset:   5:a52c0692f24a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   127
  branch:      \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   128
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   129
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   130
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   131
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   132
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   133
  changeset:   4:94db611b4196
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   134
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   135
  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
   136
  summary:     Added tag \xc3\xa9 for changeset ca661e7520de (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   137
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   138
  changeset:   3:ca661e7520de
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   139
  tag:         \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   140
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   141
  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
   142
  summary:     utf-8 e' encoded: \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   143
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   144
  changeset:   2:650c6f3d55dd
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   145
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   146
  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
   147
  summary:     latin-1 e' encoded: \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   148
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   149
  changeset:   1:0e5b7e3f9c4a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   150
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   151
  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
   152
  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
   153
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   154
  changeset:   0:1e78a93102a3
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   155
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   156
  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
   157
  summary:     latin-1 e': \xc3\xa9 = u'\\xe9' (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   158
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   159
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   160
hg tags (ascii)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   161
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   162
  $ 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
   163
  tip                                5:a52c0692f24a
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   164
  ?                                  3:ca661e7520de
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
hg tags (latin-1)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   167
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   168
  $ 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
   169
  tip                                5:a52c0692f24a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   170
  \xe9                                  3:ca661e7520de (esc)
12417
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
hg tags (utf-8)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   173
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   174
  $ 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
   175
  tip                                5:a52c0692f24a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   176
  \xc3\xa9                                  3:ca661e7520de (esc)
12417
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
hg branches (ascii)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   179
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   180
  $ 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
   181
  ?                              5:a52c0692f24a
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   182
  default                        4:94db611b4196 (inactive)
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
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
   185
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   186
  $ 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
   187
  \xe9                              5:a52c0692f24a (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   188
  default                        4:94db611b4196 (inactive)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   189
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   190
hg branches (utf-8)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   191
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   192
  $ 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
   193
  \xc3\xa9                              5:a52c0692f24a (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   194
  default                        4:94db611b4196 (inactive)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   195
  $ echo '[ui]' >> .hg/hgrc
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   196
  $ echo 'fallbackencoding = koi8-r' >> .hg/hgrc
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   197
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   198
hg log (utf-8)
3843
abaa2cd00d2b make transcoding more robust
Matt Mackall <mpm@selenic.com>
parents: 3839
diff changeset
   199
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   200
  $ 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
   201
  changeset:   5:a52c0692f24a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   202
  branch:      \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   203
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   204
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   205
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   206
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   207
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   208
  changeset:   4:94db611b4196
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   209
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   210
  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
   211
  summary:     Added tag \xc3\xa9 for changeset ca661e7520de (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   212
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   213
  changeset:   3:ca661e7520de
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12866
diff changeset
   214
  tag:         \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   215
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   216
  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
   217
  summary:     utf-8 e' encoded: \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   218
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   219
  changeset:   2:650c6f3d55dd
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   220
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   221
  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
   222
  summary:     latin-1 e' encoded: \xc3\xa9 (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   223
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   224
  changeset:   1:0e5b7e3f9c4a
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   225
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   226
  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
   227
  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
   228
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   229
  changeset:   0:1e78a93102a3
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   230
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   231
  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
   232
  summary:     latin-1 e': \xd0\x98 = u'\\xe9' (esc)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   233
  
3845
8958417abf62 Make test-encoding return 0
Matt Mackall <mpm@selenic.com>
parents: 3843
diff changeset
   234
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   235
hg log (dolphin)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   236
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   237
  $ 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
   238
  abort: unknown encoding: dolphin
afdf4f5bac61 encoding: use hint markup for "please check your locale settings"
Mads Kiilerich <mads@kiilerich.com>
parents: 15615
diff changeset
   239
  (please check your locale settings)
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   240
  [255]
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   241
  $ 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
   242
  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
   243
  [255]
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   244
  $ 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
   245
  $ 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
   246
b7b26e54e37a encoding: avoid localstr when a string can be encoded losslessly (issue2763)
Matt Mackall <mpm@selenic.com>
parents: 13047
diff changeset
   247
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
   248
b7b26e54e37a encoding: avoid localstr when a string can be encoded losslessly (issue2763)
Matt Mackall <mpm@selenic.com>
parents: 13047
diff changeset
   249
  $ 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
   250
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
b7b26e54e37a encoding: avoid localstr when a string can be encoded losslessly (issue2763)
Matt Mackall <mpm@selenic.com>
parents: 13047
diff changeset
   251