[1.5.x] Fixed #20773 -- [gis] Fixed regression in GoogleMap output

Thanks Martyn Clement for the report and the initial patch.
Backport of 27c1a7257 from master.
This commit is contained in:
Claude Paroz 2013-07-22 09:55:45 +02:00
parent 9386bbc75f
commit 0191011532
2 changed files with 21 additions and 3 deletions

View File

@ -134,7 +134,8 @@ class GoogleMap(object):
@property
def scripts(self):
"Returns all <script></script> tags required with Google Maps JavaScript."
return format_html('%s\n <script type="text/javascript">\n//<![CDATA[\n%s//]]>\n </script>', self.api_script, mark_safe(self.js))
return format_html('{0}\n <script type="text/javascript">\n//<![CDATA[\n{1}//]]>\n </script>',
self.api_script, mark_safe(self.js))
@property
def style(self):

View File

@ -1,11 +1,14 @@
from __future__ import absolute_import
from django.test import TestCase
from django.contrib.gis import admin
from django.contrib.gis.geos import GEOSGeometry, Point
from django.test import TestCase
from django.test.utils import override_settings
from .models import City
GOOGLE_MAPS_API_KEY = 'XXXX'
class GeoAdminTest(TestCase):
urls = 'django.contrib.gis.tests.geoadmin.urls'
@ -35,7 +38,9 @@ class GeoAdminTest(TestCase):
result)
def test_olwidget_has_changed(self):
""" Check that changes are accurately noticed by OpenLayersWidget. """
"""
Check that changes are accurately noticed by OpenLayersWidget.
"""
geoadmin = admin.site._registry[City]
form = geoadmin.get_changelist_form(None)()
has_changed = form.fields['point'].widget._has_changed
@ -51,3 +56,15 @@ class GeoAdminTest(TestCase):
self.assertFalse(has_changed(initial, data_same))
self.assertFalse(has_changed(initial, data_almost_same))
self.assertTrue(has_changed(initial, data_changed))
@override_settings(GOOGLE_MAPS_API_KEY=GOOGLE_MAPS_API_KEY)
def test_google_map_scripts(self):
"""
Testing GoogleMap.scripts() output. See #20773.
"""
from django.contrib.gis.maps.google.gmap import GoogleMap
google_map = GoogleMap()
scripts = google_map.scripts
self.assertIn(GOOGLE_MAPS_API_KEY, scripts)
self.assertIn("new GMap2", scripts)