Fix mediatype string representation

This commit is contained in:
Artem Muterko 2017-01-13 12:40:09 +02:00
parent 8ee2167a14
commit caf4248216
2 changed files with 4 additions and 3 deletions

View File

@ -50,6 +50,7 @@ def order_by_precedence(media_type_lst):
class _MediaType(object):
def __init__(self, media_type_str):
self.orig = '' if (media_type_str is None) else media_type_str
# import pdb; pdb.set_trace()
self.full_type, self.params = parse_header(self.orig.encode(HTTP_HEADER_ENCODING))
self.main_type, sep, self.sub_type = self.full_type.partition('/')
@ -83,5 +84,5 @@ class _MediaType(object):
def __str__(self):
ret = "%s/%s" % (self.main_type, self.sub_type)
for key, val in self.params.items():
ret += "; %s=%s" % (key, val)
ret += "; %s=%s" % (key, val.decode(HTTP_HEADER_ENCODING))
return ret

View File

@ -72,5 +72,5 @@ class TestAcceptedMediaType(TestCase):
assert mediatype.precedence == 1
def test_mediatype_string_representation(self):
mediatype = _MediaType('test/*;foo=bar')
assert str(mediatype) == "test/*; foo=b'bar'"
mediatype = _MediaType('test/*; foo=bar')
assert str(mediatype) == 'test/*; foo=bar'