Mercurial > hg
view tests/test-http @ 10753:a1cb8ca051c0 stable
wsgicgi: call close() on iterable to avoid resource leaks
Quoting PEP 333 (WSGI):
"If the iterable returned by the application has a close() method, the server
or gateway must call that method upon completion of the current request,
whether the request was completed normally, or terminated early due to
an error. (This is to support resource release by the application.
This protocol is intended to complement PEP 325's generator support,
and other common iterables with close() methods."
author | Konstantin Zemlyak <zart@zartsoft.ru> |
---|---|
date | Mon, 22 Mar 2010 15:16:27 +0100 |
parents | 1a8df80dfdde |
children |
line wrap: on
line source
#!/bin/sh cp "$TESTDIR"/printenv.py . hg init test cd test echo foo>foo mkdir foo.d foo.d/bAr.hg.d foo.d/baR.d.hg echo foo>foo.d/foo echo bar>foo.d/bAr.hg.d/BaR echo bar>foo.d/baR.d.hg/bAR hg commit -A -m 1 hg serve -p $HGPORT -d --pid-file=../hg1.pid hg --config server.uncompressed=False 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 ':\$HGPORT1':/" cd .. cat hg1.pid hg2.pid >> $DAEMON_PIDS echo % clone via stream 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 hg clone --uncompressed http://localhost:$HGPORT1/ copy2 echo % clone via pull 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,:$HGPORT1/,:\$HGPORT1/," cd ..