1079
1079
handler.set_proxy(request, 'http')
1082
def assertEvaluateProxyBypass(self, expected, host, no_proxy):
1083
handler = _urllib2_wrappers.ProxyHandler()
1084
self.assertEquals(expected,
1085
handler.evaluate_proxy_bypass(host, no_proxy))
1082
1087
def test_empty_user(self):
1083
1088
self.overrideEnv('http_proxy', 'http://bar.com')
1084
1089
request = self._proxied_request()
1089
1094
self.overrideEnv('http_proxy', 'host:1234')
1090
1095
self.assertRaises(errors.InvalidURL, self._proxied_request)
1097
def test_evaluate_proxy_bypass_true(self):
1098
"""The host is not proxied"""
1099
self.assertEvaluateProxyBypass(True, 'example.com', 'example.com')
1100
self.assertEvaluateProxyBypass(True, 'bzr.example.com', '*example.com')
1102
def test_evaluate_proxy_bypass_false(self):
1103
"""The host is proxied"""
1104
self.assertEvaluateProxyBypass(False, 'bzr.example.com', None)
1106
def test_evaluate_proxy_bypass_unknown(self):
1107
"""The host is not explicitly proxied"""
1108
self.assertEvaluateProxyBypass(None, 'example.com', 'not.example.com')
1109
self.assertEvaluateProxyBypass(None, 'bzr.example.com', 'example.com')
1111
def test_evaluate_proxy_bypass_empty_entries(self):
1112
"""Ignore empty entries"""
1113
self.assertEvaluateProxyBypass(None, 'example.com', '')
1114
self.assertEvaluateProxyBypass(None, 'example.com', ',')
1115
self.assertEvaluateProxyBypass(None, 'example.com', 'foo,,bar')
1093
1118
class TestProxyHttpServer(http_utils.TestCaseWithTwoWebservers):
1094
1119
"""Tests proxy server.