tests/test-gpg
author Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Sat, 14 Aug 2010 01:30:54 +0200
branchstable
changeset 11892 2be70ca17311
parent 9041 6e5e548452de
permissions -rwxr-xr-x
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.

#!/bin/sh

"$TESTDIR/hghave" gpg || exit 80

cat <<EOF >> $HGRCPATH
[extensions]
gpg=

[gpg]
cmd=gpg --no-permission-warning --no-secmem-warning --homedir $TESTDIR/gpg
EOF

hg init r
cd r
echo foo > foo
hg ci -Amfoo

echo '% no signatures'
hg sigs

echo '% hg sign 0'
hg sign 0

echo '% hg sigs'
hg sigs

echo '% hg sigcheck 0'
hg sigcheck 0