view tests/test-http @ 8810:ac92775b3b80

Add patch.eol to ignore EOLs when patching (issue1019) The intent is to fix many issues involving patching when win32ext is enabled. With win32ext, the working directory and repository files EOLs are not the same which means that patches made on a non-win32ext host do not apply cleanly because of EOLs discrepancies. A theorically correct approach would be transform either the patched file or the patch content with the encoding/decoding filters used by win32ext. This solution is tricky to implement and invasive, instead we prefer to address the win32ext case, by offering a way to ignore input EOLs when patching and rewriting them when saving the patched result.
author Patrick Mezard <pmezard@gmail.com>
date Mon, 15 Jun 2009 00:03:26 +0200
parents 6c82beaaa11a
children 49b62395e910
line wrap: on
line source

#!/bin/sh

cp "$TESTDIR"/printenv.py .

hg init test
cd test
echo foo>foo
hg commit -A -m 1
hg --config server.uncompressed=True serve -p $HGPORT -d --pid-file=../hg1.pid
hg serve -p $HGPORT1 -d --pid-file=../hg2.pid
# Test server address cannot be reused
hg serve -p $HGPORT1 2>&1 | sed -e "s/abort: cannot start server at ':$HGPORT1':.*/abort: cannot start server at ':20060':/"
cd ..
cat hg1.pid hg2.pid >> $DAEMON_PIDS

echo % clone via stream
http_proxy= hg clone --uncompressed http://localhost:$HGPORT/ copy 2>&1 | \
  sed -e 's/[0-9][0-9.]*/XXX/g' -e 's/[KM]\(B\/sec\)/X\1/'
hg verify -R copy

echo % try to clone via stream, should use pull instead
http_proxy= hg clone --uncompressed http://localhost:$HGPORT1/ copy2

echo % clone via pull
http_proxy= hg clone http://localhost:$HGPORT1/ copy-pull
hg verify -R copy-pull

cd test
echo bar > bar
hg commit -A -d '1 0' -m 2
cd ..

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