summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2012-11-19 23:50:37 +0100
committerÉtienne Loks <etienne.loks@peacefrogs.net>2012-11-19 23:50:37 +0100
commitf769930eca0a0bbccf991e52c6c6abbba6414390 (patch)
tree9f1e40fde488122a4809787c3dba59dab8be8d1b
parentf77c4859fa9927155a5fb2be14c2c5ffb9469279 (diff)
parentc9d084af8ce719a07d507869d547825835d70a50 (diff)
downloadChimère-f769930eca0a0bbccf991e52c6c6abbba6414390.tar.bz2
Chimère-f769930eca0a0bbccf991e52c6c6abbba6414390.zip
Merge branch 'master' into saclay
-rw-r--r--chimere/forms.py2
-rw-r--r--chimere/tests.py7
2 files changed, 8 insertions, 1 deletions
diff --git a/chimere/forms.py b/chimere/forms.py
index c6998c8..be68205 100644
--- a/chimere/forms.py
+++ b/chimere/forms.py
@@ -544,6 +544,8 @@ class AreaAdminForm(forms.ModelForm):
raise forms.ValidationError(msg)
if self.cleaned_data.get('order'):
q = Area.objects.filter(order=self.cleaned_data.get('order'))
+ if self.instance:
+ q = q.exclude(pk=self.instance.pk)
if q.count():
msg= _(u"The area \"%s\" has the same order, you need to "
u" choose another one.") % unicode(q.all()[0])
diff --git a/chimere/tests.py b/chimere/tests.py
index 61a4dd6..049fbbe 100644
--- a/chimere/tests.py
+++ b/chimere/tests.py
@@ -299,9 +299,14 @@ class AreaAdminFormTest(TestCase):
'lower_right_corner':'SRID=4326;POINT(0 0)'}
# order already given
data = base_data.copy()
- data['order'] = 1
+ data['order'] = self.areas[0].order
form = AreaAdminForm(data)
self.assertEqual(form.is_valid(), False)
+ # update an already existing area
+ data = base_data.copy()
+ data['order'] = self.areas[0].order
+ form = AreaAdminForm(data, instance=self.areas[0])
+ self.assertEqual(form.is_valid(), True)
# empty area
data = base_data.copy()
data.update({'upper_left_lat': 0,