test-archive
82 lines
| 2.0 KiB
| text/plain
|
TextLexer
/ tests / test-archive
Thomas Arendsen Hein
|
r1166 | #!/bin/sh | ||
mkdir test | ||||
cd test | ||||
hg init | ||||
echo foo>foo | ||||
Brendan Cully
|
r4653 | hg commit -Am 1 -d '1 0' | ||
Thomas Arendsen Hein
|
r1166 | echo bar>bar | ||
Brendan Cully
|
r4653 | hg commit -Am 2 -d '2 0' | ||
Thomas Arendsen Hein
|
r1166 | mkdir baz | ||
echo bletch>baz/bletch | ||||
Brendan Cully
|
r4653 | hg commit -Am 3 -d '1000000000 0' | ||
mpm@selenic.com
|
r1260 | echo "[web]" >> .hg/hgrc | ||
Thomas Arendsen Hein
|
r1166 | echo "name = test-archive" >> .hg/hgrc | ||
Thomas Arendsen Hein
|
r2500 | echo "allow_archive = gz bz2, zip" >> .hg/hgrc | ||
Dirkjan Ochtman
|
r5924 | hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log | ||
Vadim Gelfer
|
r2571 | cat hg.pid >> $DAEMON_PIDS | ||
Thomas Arendsen Hein
|
r1166 | |||
TIP=`hg id -v | cut -f1 -d' '` | ||||
QTIP=`hg id -q` | ||||
cat > getarchive.py <<EOF | ||||
Bryan O'Sullivan
|
r5384 | import os, sys, urllib2 | ||
Thomas Arendsen Hein
|
r1166 | node, archive = sys.argv[1:] | ||
Bryan O'Sullivan
|
r5384 | f = urllib2.urlopen('http://127.0.0.1:%s/?cmd=archive;node=%s;type=%s' | ||
% (os.environ['HGPORT'], node, archive)) | ||||
Thomas Arendsen Hein
|
r1166 | sys.stdout.write(f.read()) | ||
EOF | ||||
TK Soh
|
r2187 | http_proxy= python getarchive.py "$TIP" gz | gunzip | tar tf - | sed "s/$QTIP/TIP/" | ||
http_proxy= python getarchive.py "$TIP" bz2 | bunzip2 | tar tf - | sed "s/$QTIP/TIP/" | ||||
Thomas Arendsen Hein
|
r1166 | http_proxy= python getarchive.py "$TIP" zip > archive.zip | ||
unzip -t archive.zip | sed "s/$QTIP/TIP/" | ||||
Vadim Gelfer
|
r2114 | hg archive -t tar test.tar | ||
tar tf test.tar | ||||
hg archive -t tbz2 -X baz test.tar.bz2 | ||||
bunzip2 -dc test.tar.bz2 | tar tf - | ||||
hg archive -t tgz -p %b-%h test-%h.tar.gz | ||||
gzip -dc test-$QTIP.tar.gz | tar tf - | sed "s/$QTIP/TIP/" | ||||
Patrick Mezard
|
r4805 | cat > md5comp.py <<EOF | ||
Brendan Cully
|
r4653 | import md5, sys | ||
Patrick Mezard
|
r4805 | f1, f2 = sys.argv[1:3] | ||
h1 = md5.md5(file(f1, 'rb').read()).hexdigest() | ||||
h2 = md5.md5(file(f2, 'rb').read()).hexdigest() | ||||
print h1 == h2 or "md5 differ: " + repr((h1, h2)) | ||||
Brendan Cully
|
r4653 | EOF | ||
Patrick Mezard
|
r4805 | # archive name is stored in the archive, so create similar | ||
# archives and rename them afterwards. | ||||
Brendan Cully
|
r4653 | hg archive -t tgz tip.tar.gz | ||
Patrick Mezard
|
r4805 | mv tip.tar.gz tip1.tar.gz | ||
Brendan Cully
|
r4653 | sleep 1 | ||
hg archive -t tgz tip.tar.gz | ||||
Patrick Mezard
|
r4805 | mv tip.tar.gz tip2.tar.gz | ||
python md5comp.py tip1.tar.gz tip2.tar.gz | ||||
Brendan Cully
|
r4653 | |||
Vadim Gelfer
|
r2114 | hg archive -t zip -p /illegal test.zip | ||
hg archive -t zip -p very/../bad test.zip | ||||
Thomas Arendsen Hein
|
r6183 | hg archive --config ui.archivemeta=false -t zip -r 2 test.zip | ||
Vadim Gelfer
|
r2114 | unzip -t test.zip | ||
Vadim Gelfer
|
r2476 | |||
hg archive -t tar - | tar tf - | sed "s/$QTIP/TIP/" | ||||
Brendan Cully
|
r4863 | |||
Alexis S. L. Carvalho
|
r4836 | hg archive -r 0 -t tar rev-%r.tar | ||
if [ -f rev-0.tar ]; then | ||||
echo 'rev-0.tar created' | ||||
fi | ||||
Brendan Cully
|
r5061 | |||
Dirkjan Ochtman
|
r6019 | hg archive -t bogus test.bogus | ||
Dirkjan Ochtman
|
r5924 | echo % server errors | ||
cat errors.log | ||||
Brendan Cully
|
r5061 | echo '% empty repo' | ||
hg init ../empty | ||||
cd ../empty | ||||
hg archive ../test-empty | ||||
Dirkjan Ochtman
|
r5924 | |||
Brendan Cully
|
r5061 | exit 0 | ||