RETIRED, further work has moved to Debian project infrastructure
Go to file
Chris Dent 905ef41cb0 Guard against http_proxy and https_proxy
requests and urllib will get upset of socks proxy settings are
present in the environment. In those interceptors, an exception
will now be raised if $http_proxy or $https_proxy are set.

Tests are added to cover the variable being set for all four
of the interceptor types.

This is the quick and dirty solution to the problem. The way this
has been done shows some clear opportunities for refactoring down
the road.

Fixes #30
2016-01-21 19:17:56 +00:00
docs Fix handling of empty script name 2015-12-28 22:14:33 +00:00
test Guard against http_proxy and https_proxy 2016-01-21 19:17:56 +00:00
wsgi_intercept Guard against http_proxy and https_proxy 2016-01-21 19:17:56 +00:00
.gitignore Initial commit 2012-10-02 07:04:33 -07:00
.travis.yml Remove support for 2.6 and support for 3.5 2015-12-28 12:30:14 +00:00
LICENSE Add title to LICENSE file 2015-08-12 13:44:44 +01:00
MANIFEST.in Rename COPYRIGHT to LICENSE 2015-08-12 12:01:41 +01:00
Makefile Add documentation for interceptors 2015-12-28 21:14:19 +00:00
README Add tests for port 8080 2014-07-19 14:06:56 +01:00
README.md Add documentation for interceptors 2015-12-28 21:14:19 +00:00
setup.cfg Add missing MANIFEST.in 2014-08-06 10:44:02 +01:00
setup.py Intial stab at context manager based intercepts 2015-12-28 14:22:35 +00:00

README.md

python3-wsgi-intercept

travis

Python3 port of the important bits of wsgi-intercept, now working for 2.7, 3.3, 3.4 and 3.5.

Documentation is available on Read The Docs.

What is it?

wsgi_intercept installs a WSGI application in place of a real host for testing while still preserving HTTP semantics. See the PyPI page page for more details.

Modern Version

For the 2 and 3 version only some intercept functionality is provided, with a working implementation in Python 2 for:

  • urllib2
  • httplib
  • httplib2
  • requests

and in Python 3 for:

  • urllib.request
  • http.client
  • httplib2
  • requests

If you are using Python 2 and need support for a different HTTP client, require a version of wsgi_intercept<0.6. Another option to keep in mind is that interceptor code from earlier versions, such as the interceptor for mechanize ought to work when imported independently (see related conversation).