Skip to content

Commit

Permalink
Readd GenericIp field support and tests as we now require Django >= 1.4.
Browse files Browse the repository at this point in the history
  • Loading branch information
zlorf committed Aug 2, 2014
1 parent 19c2a90 commit e59cf5a
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 34 deletions.
5 changes: 1 addition & 4 deletions modeltranslation/fields.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
fields.FloatField,
fields.DecimalField,
fields.IPAddressField,
fields.GenericIPAddressField,
fields.DateField,
fields.DateTimeField,
fields.TimeField,
Expand All @@ -31,10 +32,6 @@
fields.related.ForeignKey,
# Above implies also OneToOneField
)
try:
SUPPORTED_FIELDS += (fields.GenericIPAddressField,) # Django 1.4+ only
except AttributeError:
pass


class NONE:
Expand Down
2 changes: 1 addition & 1 deletion modeltranslation/tests/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ class OtherFieldsModel(models.Model):
date = models.DateField(blank=True, null=True)
datetime = models.DateTimeField(blank=True, null=True)
time = models.TimeField(blank=True, null=True)
# genericip = models.GenericIPAddressField(blank=True, null=True)
genericip = models.GenericIPAddressField(blank=True, null=True)


class FancyDescriptor(object):
Expand Down
52 changes: 26 additions & 26 deletions modeltranslation/tests/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -1151,9 +1151,9 @@ def test_translated_models(self):
self.assertTrue('ip' in field_names)
self.assertTrue('ip_de' in field_names)
self.assertTrue('ip_en' in field_names)
# self.assertTrue('genericip' in field_names)
# self.assertTrue('genericip_de' in field_names)
# self.assertTrue('genericip_en' in field_names)
self.assertTrue('genericip' in field_names)
self.assertTrue('genericip_de' in field_names)
self.assertTrue('genericip_en' in field_names)
self.assertTrue('float' in field_names)
self.assertTrue('float_de' in field_names)
self.assertTrue('float_en' in field_names)
Expand Down Expand Up @@ -1282,29 +1282,29 @@ def test_translated_models_ipaddress_instance(self):
inst.ip = '1;2'
self.assertRaises(ValidationError, inst.full_clean)

# def test_translated_models_genericipaddress_instance(self):
# inst = OtherFieldsModel()
# inst.genericip = '2a02:42fe::4'
# self.assertEqual('de', get_language())
# self.assertEqual('2a02:42fe::4', inst.genericip)
# self.assertEqual('2a02:42fe::4', inst.genericip_de)
# self.assertEqual(None, inst.genericip_en)
#
# inst.genericip = '2a02:23fe::4'
# inst.save()
# self.assertEqual('2a02:23fe::4', inst.genericip)
# self.assertEqual('2a02:23fe::4', inst.genericip_de)
# self.assertEqual(None, inst.genericip_en)
#
# trans_real.activate('en')
# inst.genericip = '2a02:42fe::4'
# self.assertEqual('2a02:42fe::4', inst.genericip)
# self.assertEqual('2a02:23fe::4', inst.genericip_de)
# self.assertEqual('2a02:42fe::4', inst.genericip_en)
#
# # Check if validation is preserved
# inst.genericip = '1;2'
# self.assertRaises(ValidationError, inst.full_clean)
def test_translated_models_genericipaddress_instance(self):
inst = models.OtherFieldsModel()
inst.genericip = '2a02:42fe::4'
self.assertEqual('de', get_language())
self.assertEqual('2a02:42fe::4', inst.genericip)
self.assertEqual('2a02:42fe::4', inst.genericip_de)
self.assertEqual(None, inst.genericip_en)

inst.genericip = '2a02:23fe::4'
inst.save()
self.assertEqual('2a02:23fe::4', inst.genericip)
self.assertEqual('2a02:23fe::4', inst.genericip_de)
self.assertEqual(None, inst.genericip_en)

trans_real.activate('en')
inst.genericip = '2a02:42fe::4'
self.assertEqual('2a02:42fe::4', inst.genericip)
self.assertEqual('2a02:23fe::4', inst.genericip_de)
self.assertEqual('2a02:42fe::4', inst.genericip_en)

# Check if validation is preserved
inst.genericip = '1;2'
self.assertRaises(ValidationError, inst.full_clean)

def test_translated_models_float_instance(self):
inst = models.OtherFieldsModel()
Expand Down
4 changes: 1 addition & 3 deletions modeltranslation/tests/translation.py
Original file line number Diff line number Diff line change
Expand Up @@ -66,10 +66,8 @@ class OneToOneFieldModelTranslationOptions(TranslationOptions):
# ######### Custom fields testing

class OtherFieldsModelTranslationOptions(TranslationOptions):
# fields = ('int', 'boolean', 'nullboolean', 'csi', 'float', 'decimal',
# 'ip', 'genericip')
fields = ('int', 'boolean', 'nullboolean', 'csi', 'float', 'decimal',
'ip', 'date', 'datetime', 'time',)
'ip', 'genericip', 'date', 'datetime', 'time',)
translator.register(OtherFieldsModel, OtherFieldsModelTranslationOptions)


Expand Down

0 comments on commit e59cf5a

Please sign in to comment.