diff options
| author | Tom Christie | 2013-05-18 08:55:59 -0700 |
|---|---|---|
| committer | Tom Christie | 2013-05-18 08:55:59 -0700 |
| commit | c7fd2435330f094a7ab64f4358d11d6c2967eba1 (patch) | |
| tree | 3b3fc8d9530037677166d7b793cb842c5ea40357 /rest_framework/tests | |
| parent | 3f47eb7a77fcc735782dd1bf8e8e053e26417ea1 (diff) | |
| parent | b9b22976125fffa4552da695183bf75fbaf0b927 (diff) | |
| download | django-rest-framework-c7fd2435330f094a7ab64f4358d11d6c2967eba1.tar.bz2 | |
Merge pull request #863 from pyriku/787-unicodejsonrenderer
Adds UnicodeJSONRenderer
Diffstat (limited to 'rest_framework/tests')
| -rw-r--r-- | rest_framework/tests/renderers.py | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/rest_framework/tests/renderers.py b/rest_framework/tests/renderers.py index 40bac9cb..739f9184 100644 --- a/rest_framework/tests/renderers.py +++ b/rest_framework/tests/renderers.py @@ -1,3 +1,4 @@ +# -*- coding: utf-8 -*- from decimal import Decimal from django.core.cache import cache from django.test import TestCase @@ -8,7 +9,7 @@ from rest_framework.compat import yaml, etree, patterns, url, include from rest_framework.response import Response from rest_framework.views import APIView from rest_framework.renderers import BaseRenderer, JSONRenderer, YAMLRenderer, \ - XMLRenderer, JSONPRenderer, BrowsableAPIRenderer + XMLRenderer, JSONPRenderer, BrowsableAPIRenderer, UnicodeJSONRenderer from rest_framework.parsers import YAMLParser, XMLParser from rest_framework.settings import api_settings from rest_framework.compat import StringIO @@ -254,6 +255,23 @@ class JSONRendererTests(TestCase): content = renderer.render(obj, 'application/json; indent=2') self.assertEqual(strip_trailing_whitespace(content), _indented_repr) + def test_check_ascii(self): + obj = {'countries': ['United Kingdom', 'France', 'España']} + renderer = JSONRenderer() + content = renderer.render(obj, 'application/json') + self.assertEqual(content, '{"countries": ["United Kingdom", "France", "Espa\\u00f1a"]}') + + +class UnicodeJSONRendererTests(TestCase): + """ + Tests specific for the Unicode JSON Renderer + """ + def test_proper_encoding(self): + obj = {'countries': ['United Kingdom', 'France', 'España']} + renderer = UnicodeJSONRenderer() + content = renderer.render(obj, 'application/json') + self.assertEqual(content, '{"countries": ["United Kingdom", "France", "España"]}') + class JSONPRendererTests(TestCase): """ |
