tests/test-encode
author Ry4an Brase <ry4an-hg@ry4an.org>
Wed, 14 Apr 2010 00:24:47 -0500
branchstable
changeset 10904 26d1d23e5a2b
parent 10279 1c4ab236ebcb
child 12156 4c94b6d0fb1c
permissions -rwxr-xr-x
Fix --blacklist when --jobs > 1 in run_tests.py. The options parsing logic replaces the options.blacklist initial value, a list of filenames, with a dict of test names to filenames. When runchildren rebuilds the command line to launch child processes the dict is flattened and provided as a malformed argument when a filename is expected. Fix is to remove the blacklist option from child invocations since the filtering is handled in the parent anyway.

#!/bin/sh

hg init

cat > .hg/hgrc <<EOF
[encode]
not.gz = tr [:lower:] [:upper:]
*.gz = gzip -d

[decode]
not.gz = tr [:upper:] [:lower:]
*.gz = gzip

EOF

echo "this is a test" | gzip > a.gz
echo "this is a test" > not.gz
hg add *
hg ci -m "test" -d "1000000 0"
echo %% no changes
hg status
touch *

echo %% no changes
hg status

echo %% check contents in repo are encoded
hg debugdata .hg/store/data/a.gz.d 0
hg debugdata .hg/store/data/not.gz.d 0

echo %% check committed content was decoded
gunzip < a.gz
cat not.gz

rm *
hg co -C

echo %% check decoding of our new working dir copy
gunzip < a.gz
cat not.gz

echo %% check hg cat operation
hg cat a.gz
hg cat --decode a.gz | gunzip
mkdir subdir
cd subdir
hg -R .. cat ../a.gz
hg -R .. cat --decode ../a.gz | gunzip