Readd GenericIp field support and tests as we now require Django >= 1.4.

This commit is contained in:
Jacek Tomaszewski 2014-08-02 16:42:14 +02:00
parent 19c2a90e9f
commit e59cf5a4cd
4 changed files with 29 additions and 34 deletions

View file

@ -23,6 +23,7 @@ SUPPORTED_FIELDS = (
fields.FloatField,
fields.DecimalField,
fields.IPAddressField,
fields.GenericIPAddressField,
fields.DateField,
fields.DateTimeField,
fields.TimeField,
@ -31,10 +32,6 @@ SUPPORTED_FIELDS = (
fields.related.ForeignKey,
# Above implies also OneToOneField
)
try:
SUPPORTED_FIELDS += (fields.GenericIPAddressField,) # Django 1.4+ only
except AttributeError:
pass
class NONE:

View file

@ -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):

View file

@ -1151,9 +1151,9 @@ class OtherFieldsTest(ModeltranslationTestBase):
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)
@ -1282,29 +1282,29 @@ class OtherFieldsTest(ModeltranslationTestBase):
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()

View file

@ -66,10 +66,8 @@ translator.register(OneToOneFieldModel, OneToOneFieldModelTranslationOptions)
# ######### 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)