summaryrefslogtreecommitdiff
path: root/tests/test-encode.t
diff options
context:
space:
mode:
authorLorry <lorry@roadtrain.codethink.co.uk>2012-08-22 14:49:51 +0100
committerLorry <lorry@roadtrain.codethink.co.uk>2012-08-22 14:49:51 +0100
commita498da43c7fdb9f24b73680c02a4a3588cc62d9a (patch)
treedaf8119dae1749b5165b68033a1b23a7375ce9ce /tests/test-encode.t
downloadmercurial-tarball-a498da43c7fdb9f24b73680c02a4a3588cc62d9a.tar.gz
Tarball conversion
Diffstat (limited to 'tests/test-encode.t')
-rw-r--r--tests/test-encode.t63
1 files changed, 63 insertions, 0 deletions
diff --git a/tests/test-encode.t b/tests/test-encode.t
new file mode 100644
index 0000000..863bba3
--- /dev/null
+++ b/tests/test-encode.t
@@ -0,0 +1,63 @@
+Test encode/decode filters
+
+ $ 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"
+
+no changes
+
+ $ hg status
+ $ touch *
+
+no changes
+
+ $ hg status
+
+check contents in repo are encoded
+
+ $ hg debugdata a.gz 0
+ this is a test
+ $ hg debugdata not.gz 0
+ THIS IS A TEST
+
+check committed content was decoded
+
+ $ gunzip < a.gz
+ this is a test
+ $ cat not.gz
+ this is a test
+ $ rm *
+ $ hg co -C
+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+check decoding of our new working dir copy
+
+ $ gunzip < a.gz
+ this is a test
+ $ cat not.gz
+ this is a test
+
+check hg cat operation
+
+ $ hg cat a.gz
+ this is a test
+ $ hg cat --decode a.gz | gunzip
+ this is a test
+ $ mkdir subdir
+ $ cd subdir
+ $ hg -R .. cat ../a.gz
+ this is a test
+ $ hg -R .. cat --decode ../a.gz | gunzip
+ this is a test
+
+ $ cd ..