summaryrefslogtreecommitdiff
path: root/chimere/tests.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2012-11-16 00:40:31 +0100
committerÉtienne Loks <etienne.loks@peacefrogs.net>2012-11-16 00:40:31 +0100
commit76704764573c45b42279087c90c69662c6951165 (patch)
tree68ee755b29fddfe0d5de04b081d2f9b20653d4cd /chimere/tests.py
parent27d48170fbf6989c9c933ece82c378afc4ed3094 (diff)
downloadChimère-76704764573c45b42279087c90c69662c6951165.tar.bz2
Chimère-76704764573c45b42279087c90c69662c6951165.zip
Manage marker amendment in admin (refs #381)
Diffstat (limited to 'chimere/tests.py')
-rw-r--r--chimere/tests.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/chimere/tests.py b/chimere/tests.py
index ccbbfb5..63eb28f 100644
--- a/chimere/tests.py
+++ b/chimere/tests.py
@@ -8,10 +8,15 @@ test_path = os.path.abspath(__file__)
test_dir_path = os.path.dirname(test_path) + os.sep
from django.conf import settings
+from django.contrib.auth.models import User
+from django.contrib.gis.geos import GEOSGeometry
+from django.contrib.messages.storage.fallback import FallbackStorage
from django.core.urlresolvers import reverse
from django.template import Context
from django.test import TestCase
+from django.test.client import Client
+from chimere.admin import managed_modified, MarkerAdmin
from chimere.models import Area, Icon, Importer, Category, SubCategory, Marker,\
Route, News
from chimere.forms import MarkerForm, AreaAdminForm
@@ -264,3 +269,32 @@ class NewsTest(TestCase):
self.assertEqual(len(context['news_lst']), 2)
context = display_news(Context({'area_name':'area-2'}))
self.assertEqual(len(context['news_lst']), 1)
+
+class RapprochementTest(TestCase):
+ def setUp(self):
+ self.areas = areas_setup()
+ self.markers = marker_setup()
+ self.adminuser = User.objects.create_superuser('admin',
+ 'admin@test.com',
+ 'pass')
+ self.client.login(username='admin', password='pass')
+
+ def test_managed_modified(self):
+ ref_marker = self.markers[0]
+ new_vals = {'name':"Marker 1 - modified",
+ 'point':GEOSGeometry('SRID=4326;POINT(-4 48)')}
+ values = {'status':'M', 'ref_item':ref_marker}
+ values.update(new_vals)
+ modified_marker = Marker.objects.create(**values)
+ modified_marker.categories.add(ref_marker.categories.all()[0])
+ response = self.client.post('/admin/chimere/marker/',
+ data={'action':['managed_modified'],
+ 'index':0, 'rapprochement':1,
+ 'name':1, 'point':1,
+ '_selected_action':[unicode(ref_marker.pk)]
+ })
+ ref_marker = Marker.objects.get(pk=ref_marker.pk)
+ self.assertEqual(Marker.objects.filter(ref_item=ref_marker,
+ status='M').count(), 0)
+ for k in new_vals:
+ self.assertEqual(getattr(ref_marker, k), new_vals[k])