view tests/test-encode @ 12408:78a97859b90d

revset: support raw string literals This adds support for r'...' and r"..." as string literals. Strings with the "r" prefix will not have their escape characters interpreted. This is especially useful for grep(), where, with regular string literals, \number is interpreted as an octal escape code, and \b is interpreted as the backspace character (\x08).
author Brodie Rao <brodie@bitheap.org>
date Fri, 24 Sep 2010 15:36:53 -0500
parents 4c94b6d0fb1c
children
line wrap: on
line source

#!/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"
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