view tests/test-remove.out @ 12252:4481f8a93c7a stable

convert/darcs: handle non-ASCII metadata in darcs changelog (issue2354) Given a commit author or message with non-ASCII characters in a darcs repo, convert would raise a UnicodeEncodeError when adding changesets to the hg changelog. This happened because etree returns back unicode objects for any text it can't encode into ASCII. convert was passing these objects to changelog.add(), which would then attempt encoding.fromlocal() on them. This patch ensures converter_source.recode() is called on each piece of commit data returned by etree. (Also note that darcs is currently encoding agnostic and will print out whatever is in a patch's metadata byte-for-byte, even in the XML changelog.)
author Brodie Rao <brodie@bitheap.org>
date Fri, 10 Sep 2010 09:30:50 -0500
parents 07ac2a560fce
children
line wrap: on
line source

% file not managed
not removing foo: file is untracked
exit code: 1
? foo
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 00 state added, options none
not removing bar: file has been marked for add (use -f to force removal)
exit code: 1
A bar
./bar
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 01 state clean, options none
exit code: 0
R foo
? bar
./bar
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 02 state modified, options none
not removing foo: file is modified (use -f to force removal)
exit code: 1
M foo
? bar
./bar
./foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 03 state missing, options none
exit code: 0
R foo
? bar
./bar
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 10 state added, options -f
exit code: 0
? bar
./bar
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 11 state clean, options -f
exit code: 0
R foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 12 state modified, options -f
exit code: 0
R foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 13 state missing, options -f
exit code: 0
R foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 20 state added, options -A
not removing bar: file still exists (use -f to force removal)
exit code: 1
A bar
./bar
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 21 state clean, options -A
not removing foo: file still exists (use -f to force removal)
exit code: 1
? bar
./bar
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 22 state modified, options -A
not removing foo: file still exists (use -f to force removal)
exit code: 1
M foo
? bar
./bar
./foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 23 state missing, options -A
exit code: 0
R foo
? bar
./bar
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 30 state added, options -Af
exit code: 0
? bar
./bar
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 31 state clean, options -Af
exit code: 0
R foo
./foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 32 state modified, options -Af
exit code: 0
R foo
./foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% 33 state missing, options -Af
exit code: 0
R foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
adding test/bar
adding test/foo
% dir, options none
removing test/bar
removing test/foo
exit code: 0
R test/bar
R test/foo
./foo
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
% dir, options -f
removing test/bar
removing test/foo
exit code: 0
R test/bar
R test/foo
./foo
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
% dir, options -A
not removing test/foo: file still exists (use -f to force removal)
removing test/bar
exit code: 1
R test/bar
./foo
./test/foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% dir, options -Af
removing test/bar
removing test/foo
exit code: 0
R test/bar
R test/foo
./foo
./test/foo
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
test remove dropping empty trees (issue1861)
adding issue1861/b/c/y
adding issue1861/x
removing issue1861/b/c/y
x