mirror of
https://github.com/encode/django-rest-framework.git
synced 2024-11-26 11:33:59 +03:00
6 first tests passes under python 3.2
This commit is contained in:
parent
49f8e6419a
commit
606c20f012
|
@ -40,7 +40,7 @@ class BasicAuthentication(BaseAuthentication):
|
||||||
auth = request.META['HTTP_AUTHORIZATION'].split()
|
auth = request.META['HTTP_AUTHORIZATION'].split()
|
||||||
if len(auth) == 2 and auth[0].lower() == "basic":
|
if len(auth) == 2 and auth[0].lower() == "basic":
|
||||||
try:
|
try:
|
||||||
auth_parts = base64.b64decode(auth[1]).partition(':')
|
auth_parts = base64.b64decode(auth[1].encode('utf8')).decode('utf8').partition(':')
|
||||||
except TypeError:
|
except TypeError:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ def is_form_media_type(media_type):
|
||||||
"""
|
"""
|
||||||
Return True if the media type is a valid form media type.
|
Return True if the media type is a valid form media type.
|
||||||
"""
|
"""
|
||||||
base_media_type, params = parse_header(media_type)
|
base_media_type, params = parse_header(media_type.encode('utf8'))
|
||||||
return (base_media_type == 'application/x-www-form-urlencoded' or
|
return (base_media_type == 'application/x-www-form-urlencoded' or
|
||||||
base_media_type == 'multipart/form-data')
|
base_media_type == 'multipart/form-data')
|
||||||
|
|
||||||
|
|
|
@ -44,13 +44,13 @@ class BasicAuthTests(TestCase):
|
||||||
|
|
||||||
def test_post_form_passing_basic_auth(self):
|
def test_post_form_passing_basic_auth(self):
|
||||||
"""Ensure POSTing json over basic auth with correct credentials passes and does not require CSRF"""
|
"""Ensure POSTing json over basic auth with correct credentials passes and does not require CSRF"""
|
||||||
auth = b'Basic ' + base64.encodestring(('%s:%s' % (self.username, self.password)).encode('utf8')).strip()
|
auth = 'Basic ' + base64.encodestring(('%s:%s' % (self.username, self.password)).encode('utf8')).strip().decode('utf8')
|
||||||
response = self.csrf_client.post('/', {'example': 'example'}, HTTP_AUTHORIZATION=auth)
|
response = self.csrf_client.post('/', {'example': 'example'}, HTTP_AUTHORIZATION=auth)
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
def test_post_json_passing_basic_auth(self):
|
def test_post_json_passing_basic_auth(self):
|
||||||
"""Ensure POSTing form over basic auth with correct credentials passes and does not require CSRF"""
|
"""Ensure POSTing form over basic auth with correct credentials passes and does not require CSRF"""
|
||||||
auth = b'Basic %s' % base64.encodestring(('%s:%s' % (self.username, self.password)).encode('utf8')).strip()
|
auth = 'Basic ' + base64.encodestring(('%s:%s' % (self.username, self.password)).encode('utf8')).strip().decode('utf8')
|
||||||
response = self.csrf_client.post('/', json.dumps({'example': 'example'}), 'application/json', HTTP_AUTHORIZATION=auth)
|
response = self.csrf_client.post('/', json.dumps({'example': 'example'}), 'application/json', HTTP_AUTHORIZATION=auth)
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
|
|
|
@ -47,7 +47,7 @@ class _MediaType(object):
|
||||||
if media_type_str is None:
|
if media_type_str is None:
|
||||||
media_type_str = ''
|
media_type_str = ''
|
||||||
self.orig = media_type_str
|
self.orig = media_type_str
|
||||||
self.full_type, self.params = parse_header(media_type_str)
|
self.full_type, self.params = parse_header(media_type_str.encode('utf8'))
|
||||||
self.main_type, sep, self.sub_type = self.full_type.partition('/')
|
self.main_type, sep, self.sub_type = self.full_type.partition('/')
|
||||||
|
|
||||||
def match(self, other):
|
def match(self, other):
|
||||||
|
|
Loading…
Reference in New Issue
Block a user