view tests/test-static-http @ 8589:3edf133dcb5a

dirstate: skip step 3 in walk if nothing new will match nothing will ever match on match.never nothing new will match on match.exact (all found in step 1) nothing new will match on match.match when there is no pattern and there is no direcory in pats
author Simon Heimberg <simohe@besonet.ch>
date Thu, 14 May 2009 19:54:26 +0200
parents 3e6206967570
children d4a62b6d4a58
line wrap: on
line source

#!/bin/sh

cp "$TESTDIR"/printenv.py .

http_proxy= hg clone http://localhost:$HGPORT/ copy
echo $?
test -d copy || echo copy: No such file or directory

# This server doesn't do range requests so it's basically only good for
# one pull
cat > dumb.py <<EOF
import BaseHTTPServer, SimpleHTTPServer, os, signal

def run(server_class=BaseHTTPServer.HTTPServer,
        handler_class=SimpleHTTPServer.SimpleHTTPRequestHandler):
    server_address = ('localhost', int(os.environ['HGPORT']))
    httpd = server_class(server_address, handler_class)
    httpd.serve_forever()

signal.signal(signal.SIGTERM, lambda x: sys.exit(0))
run()
EOF

python dumb.py 2>/dev/null &
echo $! >> $DAEMON_PIDS

mkdir remote
cd remote
hg init
echo foo > bar
hg add bar
hg commit -m"test" -d "1000000 0"
hg tip

cd ..

http_proxy= hg clone static-http://localhost:$HGPORT/remote local | sed -e 's,:[0-9][0-9]*/,/,'

cd local
hg verify
cat bar

cd ../remote
echo baz > quux
hg commit -A -mtest2 -d '100000000 0'

cd ../local
echo '[hooks]' >> .hg/hgrc
echo 'changegroup = python ../printenv.py changegroup' >> .hg/hgrc
http_proxy= hg pull | sed -e 's,:[0-9][0-9]*/,/,'

echo '% trying to push'
hg update
echo more foo >> bar
hg commit -m"test" -d "100000000 0"
http_proxy= hg push | sed -e 's,:[0-9][0-9]*/,/,'

echo '% test with "/" URI (issue 747)'
cd ..
hg init
echo a > a
hg add a
hg ci -ma

http_proxy= hg clone static-http://localhost:$HGPORT/ local2 | sed -e 's,:[0-9][0-9]*/,/,'

cd local2
hg verify
cat a
hg paths | sed -e 's,:[0-9][0-9]*/,/,'

echo '% test with empty repo (issue965)'
cd ..
hg init remotempty

http_proxy= hg clone static-http://localhost:$HGPORT/remotempty local3 | sed -e 's,:[0-9][0-9]*/,/,'

cd local3
hg verify
hg paths | sed -e 's,:[0-9][0-9]*/,/,'

echo '% test with non-repo'
cd ..
mkdir notarepo
http_proxy= hg clone static-http://localhost:$HGPORT/notarepo local3 2>&1 | sed -e 's,:[0-9][0-9]*/,/,'

kill $!