tests/test-convert-tla.out
author Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Sat, 14 Aug 2010 01:30:54 +0200
branchstable
changeset 11892 2be70ca17311
parent 10490 f2618cacb485
permissions -rw-r--r--
encoding: improve handling of buggy getpreferredencoding() on Mac OS X Prior to version 2.7, calling locale.getpreferredencoding() would always return 'mac-roman' on Mac OS X. Previously, this was handled by a call to locale.setlocale(). Unfortunately, Python 2.6.5 and older have a bug where isspace() would incorrectly report True for 0x85 and 0xa0 after such a call. In order to fix this, we replace the previous _encodingfixup mapping to an _encodingfixers mapping. Rather than mapping encodings to their replacement, it maps them to a function returning the replacement. This allows us to provide an simplified implementation of getpreferredencoding() which extracts the expected encoding and restores the locale. This fix is based on a patch originally submitted by Martijn Pieters as well as feedback from Brodie Rao.

% create tla archive
% initialize tla repo
* creating version tla@mercurial--convert/tla--test--0
* imported tla@mercurial--convert/tla--test--0
% create initial files
A/ .arch-ids
A/ src
A/ src/.arch-ids
A  .arch-ids/a.id
A  a
A  src/.arch-ids/=id
A  src/.arch-ids/b.id
A  src/b
* update pristine tree (tla@mercurial--convert/tla--test--0--base-0 => tla--test--0--patch-1)
* committed tla@mercurial--convert/tla--test--0--patch-1
% create link file and modify a
A  src/.arch-ids/a-link.id
A  src/a-link
M  a
* update pristine tree (tla@mercurial--convert/tla--test--0--patch-1 => tla--test--0--patch-2)
* committed tla@mercurial--convert/tla--test--0--patch-2
% create second link and modify b
A  src/.arch-ids/a-link-2.id
A  src/a-link-2
Mb src/b
* update pristine tree (tla@mercurial--convert/tla--test--0--patch-2 => tla--test--0--patch-3)
* committed tla@mercurial--convert/tla--test--0--patch-3
% b file to link and a-link-2 to regular file
fl src/b
lf src/a-link-2
* update pristine tree (tla@mercurial--convert/tla--test--0--patch-3 => tla--test--0--patch-4)
* committed tla@mercurial--convert/tla--test--0--patch-4
% move a-link-2 file and src directory
D/ src/.arch-ids
A/ test/.arch-ids
/> src	test
=> src/.arch-ids/a-link-2.id	.arch-ids/c.id
=> src/a-link-2	c
=> src/.arch-ids/=id	test/.arch-ids/=id
=> src/.arch-ids/a-link.id	test/.arch-ids/a-link.id
=> src/.arch-ids/b.id	test/.arch-ids/b.id
* update pristine tree (tla@mercurial--convert/tla--test--0--patch-4 => tla--test--0--patch-5)
* committed tla@mercurial--convert/tla--test--0--patch-5
% converting tla repo to Mercurial
initializing destination tla-repo-hg repository
analyzing tree version tla@mercurial--convert/tla--test--0...
scanning source...
sorting...
converting...
5 initial import
4 added a file, src and src/b (binary)
3 added link to a and modify a
2 added second link and modify b
1 file to link and link to file test
0 move and rename a-link-2 file and src directory
% show graph log
o  5 "move and rename a-link-2 file and src directory" files: c src/a-link src/a-link-2 src/b test/a-link test/b
|
o  4 "file to link and link to file test" files: src/a-link-2 src/b
|
o  3 "added second link and modify b" files: src/a-link-2 src/b
|
o  2 "added link to a and modify a" files: a src/a-link
|
o  1 "added a file, src and src/b (binary)" files: a src/b
|
o  0 "initial import" files:

c4072c4b72e1cabace081888efa148ee80ca3cbb 644   a
0201ac32a3a8e86e303dff60366382a54b48a72e 644   c
c0067ba5ff0b7c9a3eb17270839d04614c435623 644 @ test/a-link
375f4263d86feacdea7e3c27100abd1560f2a973 644 @ test/b