mirror of
https://github.com/encode/django-rest-framework.git
synced 2024-11-23 10:03:57 +03:00
Updated tests to pass in python 3
This commit is contained in:
parent
9d281e187a
commit
3f5e3c28f5
|
@ -2,6 +2,7 @@ from __future__ import unicode_literals, absolute_import
|
|||
from django import template
|
||||
from django.core.urlresolvers import reverse, NoReverseMatch
|
||||
from django.http import QueryDict
|
||||
from django.utils.encoding import iri_to_uri
|
||||
from django.utils.html import escape
|
||||
from django.utils.safestring import SafeData, mark_safe
|
||||
from rest_framework.compat import urlparse, force_text, six, smart_urlquote
|
||||
|
@ -144,7 +145,9 @@ def add_query_param(request, key, val):
|
|||
"""
|
||||
Add a query parameter to the current request url, and return the new url.
|
||||
"""
|
||||
return replace_query_param(request.build_absolute_uri(), key, val)
|
||||
iri = request.get_full_path()
|
||||
uri = iri_to_uri(iri)
|
||||
return replace_query_param(uri, key, val)
|
||||
|
||||
|
||||
@register.filter
|
||||
|
|
|
@ -10,9 +10,10 @@ factory = APIRequestFactory()
|
|||
class TemplateTagTests(TestCase):
|
||||
|
||||
def test_add_query_param_with_non_latin_charactor(self):
|
||||
request = factory.get("/?q=查询")
|
||||
# Ensure we don't double-escape non-latin characters
|
||||
# that are present in the querystring.
|
||||
# https://github.com/tomchristie/django-rest-framework/pull/1314
|
||||
request = factory.get("/", {'q': '查询'})
|
||||
json_url = add_query_param(request, "format", "json")
|
||||
self.assertIn(json_url, [
|
||||
"http://testserver/?format=json&q=%E6%9F%A5%E8%AF%A2",
|
||||
"http://testserver/?q=%E6%9F%A5%E8%AF%A2&format=json",
|
||||
])
|
||||
self.assertIn("q=%E6%9F%A5%E8%AF%A2", json_url)
|
||||
self.assertIn("format=json")
|
||||
|
|
Loading…
Reference in New Issue
Block a user