diff options
| 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 |
| commit | 76704764573c45b42279087c90c69662c6951165 (patch) | |
| tree | 68ee755b29fddfe0d5de04b081d2f9b20653d4cd /chimere/tests.py | |
| parent | 27d48170fbf6989c9c933ece82c378afc4ed3094 (diff) | |
| download | Chimè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.py | 34 |
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]) |
