Rewrite test_mixed_case_scheme_acceptable to work with local httpbin

Instead of using hard-coded urls to httpbin.org, use the url defined
in `HTTPBIN_URL` replacing the scheme as necessary to test the mixed
cases.

Refs #1485
This commit is contained in:
David Pursehouse
2013-07-24 11:58:43 +09:00
parent 415fb53cb4
commit 012cc33d44
+10 -25
View File
@@ -12,7 +12,7 @@ import pickle
import requests
from requests.auth import HTTPDigestAuth
from requests.adapters import HTTPAdapter
from requests.compat import str, cookielib, getproxies, urljoin
from requests.compat import str, cookielib, getproxies, urljoin, urlparse
from requests.cookies import cookiejar_from_dict
from requests.exceptions import InvalidURL, MissingSchema
from requests.structures import CaseInsensitiveDict
@@ -92,30 +92,15 @@ class RequestsTestCase(unittest.TestCase):
def test_mixed_case_scheme_acceptable(self):
s = requests.Session()
s.proxies = getproxies()
r = requests.Request('GET', 'http://httpbin.org/get')
r = s.send(r.prepare())
self.assertEqual(r.status_code,200)
r = requests.Request('GET', 'HTTP://httpbin.org/get')
r = s.send(r.prepare())
self.assertEqual(r.status_code,200)
r = requests.Request('GET', 'hTTp://httpbin.org/get')
r = s.send(r.prepare())
self.assertEqual(r.status_code,200)
r = requests.Request('GET', 'HttP://httpbin.org/get')
r = s.send(r.prepare())
self.assertEqual(r.status_code,200)
r = requests.Request('GET', 'https://httpbin.org/get')
r = s.send(r.prepare())
self.assertEqual(r.status_code,200)
r = requests.Request('GET', 'HTTPS://httpbin.org/get')
r = s.send(r.prepare())
self.assertEqual(r.status_code,200)
r = requests.Request('GET', 'hTTps://httpbin.org/get')
r = s.send(r.prepare())
self.assertEqual(r.status_code,200)
r = requests.Request('GET', 'HttPs://httpbin.org/get')
r = s.send(r.prepare())
self.assertEqual(r.status_code,200)
parts = urlparse(httpbin('get'))
schemes = ['http://', 'HTTP://', 'hTTp://', 'HttP://',
'https://', 'HTTPS://', 'hTTps://', 'HttPs://']
for scheme in schemes:
url = scheme + parts.netloc + parts.path
r = requests.Request('GET', url)
r = s.send(r.prepare())
self.assertEqual(r.status_code, 200,
"failed for scheme %s" % scheme)
def test_HTTP_200_OK_GET_ALTERNATIVE(self):
r = requests.Request('GET', httpbin('get'))