tests/test-encoding.t
author Matt Mackall <mpm@selenic.com>
Sun, 26 Sep 2010 13:41:32 -0500
changeset 12432 7f3af5da4e6c
parent 12417 1aba1c38a85b
child 12866 eddc20306ab6
permissions -rw-r--r--
tests: unify test-hgweb
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
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
     8
  $ hg unbundle $TESTDIR/legacy-encoding.hg
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
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    33
  abort: decoding near ' encoded: é': 'ascii' codec can't decode byte 0xe9 in position 20: ordinal not in range(128)!
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`
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    44
  marked working directory as branch é
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    45
  $ HGENCODING=latin-1 hg ci -m 'latin1 branch'
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    46
  $ rm .hg/branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    47
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    48
hg log (ascii)
3783
4421cef5d3f0 Make quoting in test-encoding simpler
Matt Mackall <mpm@selenic.com>
parents: 3780
diff changeset
    49
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    50
  $ hg --encoding ascii log
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    51
  changeset:   5:093c6077d1c8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    52
  branch:      ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    53
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    54
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    55
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    56
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    57
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    58
  changeset:   4:94db611b4196
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:     Added tag ? for changeset ca661e7520de
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:   3:ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    64
  tag:         ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    65
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    66
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    67
  summary:     utf-8 e' encoded: ?
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    68
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    69
  changeset:   2:650c6f3d55dd
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:     latin-1 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:   1:0e5b7e3f9c4a
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:        Mon Jan 12 13:46:40 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    77
  summary:     koi8-r: ????? = u'\u0440\u0442\u0443\u0442\u044c'
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:   0:1e78a93102a3
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:     latin-1 e': ? = u'\xe9'
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
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    85
hg log (latin-1)
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    86
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    87
  $ hg --encoding latin-1 log
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    88
  changeset:   5:093c6077d1c8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    89
  branch:      é
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    90
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    91
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    92
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    93
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    94
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    95
  changeset:   4:94db611b4196
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:     Added tag é for changeset ca661e7520de
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:   3:ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   101
  tag:         é
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   102
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   103
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   104
  summary:     utf-8 e' encoded: é
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   105
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   106
  changeset:   2:650c6f3d55dd
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
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   109
  summary:     latin-1 e' encoded: é
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:   1:0e5b7e3f9c4a
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:        Mon Jan 12 13:46:40 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   114
  summary:     koi8-r: ÒÔÕÔØ = u'\u0440\u0442\u0443\u0442\u044c'
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:   0:1e78a93102a3
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
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   119
  summary:     latin-1 e': é = u'\xe9'
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   120
  
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   121
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   122
hg log (utf-8)
3777
5da370c2f72d Add a charset encoding test case
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   123
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   124
  $ hg --encoding utf-8 log
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   125
  changeset:   5:093c6077d1c8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   126
  branch:      é
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   127
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   128
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   129
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   130
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   131
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   132
  changeset:   4:94db611b4196
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:     Added tag é for changeset ca661e7520de
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:   3:ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   138
  tag:         é
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   139
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   140
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   141
  summary:     utf-8 e' encoded: é
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   142
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   143
  changeset:   2:650c6f3d55dd
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
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   146
  summary:     latin-1 e' encoded: é
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:   1:0e5b7e3f9c4a
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:        Mon Jan 12 13:46:40 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   151
  summary:     koi8-r: ÒÔÕÔØ = u'\u0440\u0442\u0443\u0442\u044c'
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:   0:1e78a93102a3
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
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   156
  summary:     latin-1 e': é = u'\xe9'
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
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   159
hg tags (ascii)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   160
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   161
  $ HGENCODING=ascii hg tags
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   162
  tip                                5:093c6077d1c8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   163
  ?                                  3:ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   164
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   165
hg tags (latin-1)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   166
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   167
  $ HGENCODING=latin-1 hg tags
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   168
  tip                                5:093c6077d1c8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   169
  é                                 3:ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   170
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   171
hg tags (utf-8)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   172
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   173
  $ HGENCODING=utf-8 hg tags
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   174
  tip                                5:093c6077d1c8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   175
  é                                 3:ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   176
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   177
hg branches (ascii)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   178
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   179
  $ HGENCODING=ascii hg branches
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   180
  ?                              5:093c6077d1c8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   181
  default                        4:94db611b4196 (inactive)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   182
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   183
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
   184
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   185
  $ HGENCODING=latin-1 hg branches
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   186
  é                             5:093c6077d1c8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   187
  default                        4:94db611b4196 (inactive)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   188
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   189
hg branches (utf-8)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   190
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   191
  $ HGENCODING=utf-8 hg branches
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   192
  é                             5:093c6077d1c8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   193
  default                        4:94db611b4196 (inactive)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   194
  $ echo '[ui]' >> .hg/hgrc
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   195
  $ echo 'fallbackencoding = koi8-r' >> .hg/hgrc
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   196
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   197
hg log (utf-8)
3843
abaa2cd00d2b make transcoding more robust
Matt Mackall <mpm@selenic.com>
parents: 3839
diff changeset
   198
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   199
  $ HGENCODING=utf-8 hg log
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   200
  changeset:   5:093c6077d1c8
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   201
  branch:      é
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   202
  tag:         tip
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   203
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   204
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   205
  summary:     latin1 branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   206
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   207
  changeset:   4:94db611b4196
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:     Added tag é for changeset ca661e7520de
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:   3:ca661e7520de
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   213
  tag:         é
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   214
  user:        test
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   215
  date:        Thu Jan 01 00:00:00 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   216
  summary:     utf-8 e' encoded: é
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   217
  
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   218
  changeset:   2:650c6f3d55dd
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
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   221
  summary:     latin-1 e' encoded: é
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:   1:0e5b7e3f9c4a
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:        Mon Jan 12 13:46:40 1970 +0000
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   226
  summary:     koi8-r: ртуть = u'\u0440\u0442\u0443\u0442\u044c'
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:   0:1e78a93102a3
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
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   231
  summary:     latin-1 e': И = u'\xe9'
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   232
  
3845
8958417abf62 Make test-encoding return 0
Matt Mackall <mpm@selenic.com>
parents: 3843
diff changeset
   233
12417
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   234
hg log (dolphin)
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   235
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   236
  $ HGENCODING=dolphin hg log
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   237
  abort: unknown encoding: dolphin, please check your locale settings
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   238
  [255]
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   239
  $ HGENCODING=ascii hg branch `cat latin-1-tag`
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   240
  abort: decoding near 'é': 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)!
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   241
  [255]
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   242
  $ cp latin-1-tag .hg/branch
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   243
  $ HGENCODING=latin-1 hg ci -m 'should fail'
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   244
  abort: branch name not in UTF-8!
1aba1c38a85b tests: unify test-encoding
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   245
  [255]