Merge pull request #419 from montiniz/django1.8-fixes

Django1.8 fixes
This commit is contained in:
Kamil Gałuszka 2015-03-30 20:40:55 +02:00
commit eb3ba7e98a
5 changed files with 47 additions and 21 deletions

View file

@ -41,7 +41,7 @@ class BaseListAction(AdminModel2Mixin, TemplateView):
options = utils.model_options(self.model)
self.app_label = options.app_label
self.model_name = options.module_name
self.model_name = options.model_name
self.item_count = len(queryset)

View file

@ -46,11 +46,12 @@ def datetime_renderer(value, field):
"""
if isinstance(value, datetime):
# django ticket #23466 Removing seconds from locale formats
return formats.localize(timezone.template_localtime(value))
elif isinstance(value, (date, time)):
return formats.localize(value)
return ":".join((formats.localize(value)).split(":")[:2])
else:
return value
return ":".join(value.split(":")[:2])
def title_renderer(value, field):

View file

@ -17,7 +17,7 @@ class RendererTestModel(models.Model):
class BooleanRendererTest(TestCase):
def setUp(self):
self.renderer = renderers.boolean_renderer
@ -59,7 +59,7 @@ class DatetimeRendererTest(TestCase):
def test_time_german(self):
activate('de')
out = self.renderer(dt.time(13, 37, 1), None)
self.assertEqual('13:37:01', out)
self.assertEqual('13:37', out)
def test_time_chinese(self):
activate('zh')
@ -70,6 +70,10 @@ class DatetimeRendererTest(TestCase):
out = self.renderer(dt.datetime(2013, 7, 6, 13, 37, 1), None)
self.assertEqual('July 6, 2013, 1:37 p.m.', out)
def test_date_as_string(self):
out = self.renderer('13:37:01', None)
self.assertEqual('13:37', out)
# TODO test timezone localization

View file

@ -12,7 +12,7 @@ from ..models import Post
class ModelFormFactoryTest(TestCase):
def test_modelform_factory(self):
form_class = modelform_factory(Post)
form_class = modelform_factory(Post, exclude=[])
self.assertTrue(form_class)
field = form_class.base_fields['title']
self.assertTrue(isinstance(field.widget, floppyforms.TextInput))
@ -358,7 +358,7 @@ class ModelFormTest(TestCase):
class MyForm(forms.ModelForm):
pass
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
form = form_class()
self.assertTrue(isinstance(
form.fields['title'].widget,
@ -368,7 +368,7 @@ class ModelFormTest(TestCase):
class MyForm(forms.ModelForm):
subtitle = forms.CharField()
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
self.assertTrue(isinstance(
form_class.base_fields['subtitle'].widget,
floppyforms.widgets.TextInput))
@ -385,7 +385,7 @@ class ModelFormTest(TestCase):
class MyForm(forms.ModelForm):
subtitle = forms.CharField()
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
form = form_class()
self.assertTrue(isinstance(
form.fields['subtitle'].widget,
@ -397,11 +397,12 @@ class ModelFormTest(TestCase):
class Meta:
model = Post
exclude = []
class ChildForm(MyForm):
created = forms.DateField()
form_class = modelform_factory(model=Post, form=ChildForm)
form_class = modelform_factory(model=Post, form=ChildForm, exclude=[])
form = form_class()
self.assertTrue(isinstance(
form.fields['title'].widget,
@ -427,6 +428,7 @@ class FieldWidgetTest(TestCase):
class Meta:
model = Post
exclude = []
form_class = floppify_form(MyForm)
widget = form_class().fields['email'].widget
@ -437,7 +439,7 @@ class FieldWidgetTest(TestCase):
class MyForm(forms.ModelForm):
float = forms.FloatField()
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
widget = form_class().fields['float'].widget
self.assertTrue(isinstance(widget, floppyforms.widgets.NumberInput))
self.assertEqual(widget.input_type, 'number')
@ -446,7 +448,7 @@ class FieldWidgetTest(TestCase):
class MyForm(forms.ModelForm):
decimal = forms.DecimalField()
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
widget = form_class().fields['decimal'].widget
self.assertTrue(isinstance(widget, floppyforms.widgets.NumberInput))
self.assertEqual(widget.input_type, 'number')
@ -455,7 +457,7 @@ class FieldWidgetTest(TestCase):
class MyForm(forms.ModelForm):
integer = forms.IntegerField()
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
widget = form_class().fields['integer'].widget
self.assertTrue(isinstance(widget, floppyforms.widgets.NumberInput))
self.assertEqual(widget.input_type, 'number')
@ -464,7 +466,7 @@ class FieldWidgetTest(TestCase):
class MyForm(forms.ModelForm):
email = forms.EmailField()
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
widget = form_class().fields['email'].widget
self.assertTrue(isinstance(widget, floppyforms.widgets.EmailInput))
self.assertEqual(widget.input_type, 'email')
@ -473,7 +475,7 @@ class FieldWidgetTest(TestCase):
class MyForm(forms.ModelForm):
url = forms.URLField()
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
widget = form_class().fields['url'].widget
self.assertTrue(isinstance(widget, floppyforms.widgets.URLInput))
self.assertEqual(widget.input_type, 'url')
@ -482,7 +484,7 @@ class FieldWidgetTest(TestCase):
class MyForm(forms.ModelForm):
slug = forms.SlugField()
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
widget = form_class().fields['slug'].widget
self.assertTrue(isinstance(widget, floppyforms.widgets.SlugInput))
self.assertEqual(widget.input_type, 'text')
@ -491,7 +493,7 @@ class FieldWidgetTest(TestCase):
class MyForm(forms.ModelForm):
ipaddress = forms.IPAddressField()
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
widget = form_class().fields['ipaddress'].widget
self.assertTrue(isinstance(widget, floppyforms.widgets.IPAddressInput))
self.assertEqual(widget.input_type, 'text')
@ -500,7 +502,7 @@ class FieldWidgetTest(TestCase):
class MyForm(forms.ModelForm):
splitdatetime = forms.SplitDateTimeField()
form_class = modelform_factory(model=Post, form=MyForm)
form_class = modelform_factory(model=Post, form=MyForm, exclude=[])
widget = form_class().fields['splitdatetime'].widget
self.assertTrue(isinstance(
widget, floppyforms.widgets.SplitDateTimeWidget))

25
tox.ini
View file

@ -2,6 +2,7 @@
# for py 3.x we are using only django 1.6.x as 1.5.x had only "experimental py3 support"
envlist = py27-dj1.6.x, py27-dj1.7.x, py33-dj1.6.x, py34-dj1.6.x,
py33-dj1.7.x, py34-dj1.7.x, pypy-dj1.6.x, pypy3-dj1.6.x,
py27-dj1.8.x, py33-dj1.8.x, py34-dj1.8.x,
skipsdist = True
[testenv]
@ -21,7 +22,7 @@ deps =
[testenv:py27-dj1.7.x]
basepython=python2.7
deps =
Django>=1.7,<1.8
Django>=1.7,<1.7.999
{[testenv]deps}
[testenv:py33-dj1.6.x]
@ -39,13 +40,13 @@ deps =
[testenv:py33-dj1.7.x]
basepython=python3.3
deps =
Django>=1.7,<1.8
Django>=1.7,<1.7.999
{[testenv]deps}
[testenv:py34-dj1.7.x]
basepython=python3.4
deps =
Django>=1.7,<1.8
Django>=1.7,<1.7.999
{[testenv]deps}
[testenv:pypy-dj1.6.x]
@ -59,3 +60,21 @@ basepython=pypy3
deps =
Django>=1.6,<1.7
{[testenv]deps}
[testenv:py27-dj1.8.x]
basepython=python2.7
deps =
Django>=1.8.c1,<1.9
{[testenv]deps}
[testenv:py34-dj1.8.x]
basepython=python3.4
deps =
Django>=1.8c1,<1.9
{[testenv]deps}
[testenv:py33-dj1.8.x]
basepython=python2.7
deps =
Django>=1.8.c1,<1.9
{[testenv]deps}