Add tests for html-form-rendering numeric fields

This commit is contained in:
Arek Korbik 2016-05-15 17:52:31 +02:00
parent f742452d46
commit 2cb71571cd

View File

@ -8,7 +8,7 @@ from collections import MutableMapping, OrderedDict
from django.conf.urls import include, url from django.conf.urls import include, url
from django.core.cache import cache from django.core.cache import cache
from django.db import models from django.db import models
from django.test import TestCase from django.test import TestCase, override_settings
from django.utils import six from django.utils import six
from django.utils.safestring import SafeText from django.utils.safestring import SafeText
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
@ -572,3 +572,60 @@ class TestMultipleChoiceFieldHTMLFormRenderer(TestCase):
result) result)
self.assertInHTML('<option value="1">Option1</option>', result) self.assertInHTML('<option value="1">Option1</option>', result)
self.assertInHTML('<option value="2">Option2</option>', result) self.assertInHTML('<option value="2">Option2</option>', result)
class TestIntegerFieldHTMLFormRenderer(TestCase):
"""
Test rendering IntegerField with HTMLFormRenderer.
"""
def setUp(self):
class TestSerializer(serializers.Serializer):
test_field = serializers.IntegerField()
self.TestSerializer = TestSerializer
self.renderer = HTMLFormRenderer()
def test_render_zero(self):
serializer = self.TestSerializer(data={'test_field': '0'})
serializer.is_valid()
result = self.renderer.render(serializer.data)
self.assertIsInstance(result, SafeText)
self.assertIsNotNone(re.search(r'<input .*value="0"', result, re.S))
class TestFloatFieldHTMLFormRenderer(TestCase):
"""
Test rendering FloatField with HTMLFormRenderer.
"""
def setUp(self):
class TestSerializer(serializers.Serializer):
test_field = serializers.FloatField()
self.TestSerializer = TestSerializer
self.renderer = HTMLFormRenderer()
def test_render_zero(self):
serializer = self.TestSerializer(data={'test_field': '0.0'})
serializer.is_valid()
result = self.renderer.render(serializer.data)
self.assertIsInstance(result, SafeText)
self.assertIsNotNone(re.search(r'<input .*value="0\.0"', result, re.S))
@override_settings(LANGUAGE_CODE='pl')
def test_render_with_comma_locale(self):
serializer = self.TestSerializer(data={'test_field': '1.5'})
serializer.is_valid()
result = self.renderer.render(serializer.data)
self.assertIsInstance(result, SafeText)
self.assertIsNotNone(re.search(r'<input .*value="1\.5"', result, re.S))