mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			58 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # -*- coding: utf-8 -*-
 | ||
| from __future__ import unicode_literals
 | ||
| 
 | ||
| from unittest import skipUnless
 | ||
| 
 | ||
| from django.contrib.gis.geos import HAS_GEOS
 | ||
| from django.test import TestCase
 | ||
| from django.test.utils import modify_settings, override_settings
 | ||
| from django.utils.encoding import force_text
 | ||
| 
 | ||
| GOOGLE_MAPS_API_KEY = 'XXXX'
 | ||
| 
 | ||
| 
 | ||
| @skipUnless(HAS_GEOS, 'Geos is required.')
 | ||
| @modify_settings(
 | ||
|     INSTALLED_APPS={'append': 'django.contrib.gis'},
 | ||
| )
 | ||
| class GoogleMapsTest(TestCase):
 | ||
| 
 | ||
|     @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)
 | ||
| 
 | ||
|     @override_settings(GOOGLE_MAPS_API_KEY=GOOGLE_MAPS_API_KEY)
 | ||
|     def test_unicode_in_google_maps(self):
 | ||
|         """
 | ||
|         Test that GoogleMap doesn't crash with non-ASCII content.
 | ||
|         """
 | ||
|         from django.contrib.gis.geos import Point
 | ||
|         from django.contrib.gis.maps.google.gmap import GoogleMap, GMarker
 | ||
| 
 | ||
|         center = Point(6.146805, 46.227574)
 | ||
|         marker = GMarker(center,
 | ||
|                          title='En français !')
 | ||
|         google_map = GoogleMap(center=center, zoom=18, markers=[marker])
 | ||
|         self.assertIn("En français", google_map.scripts)
 | ||
| 
 | ||
|     def test_gevent_html_safe(self):
 | ||
|         from django.contrib.gis.maps.google.overlays import GEvent
 | ||
|         event = GEvent('click', 'function() {location.href = "http://www.google.com"}')
 | ||
|         self.assertTrue(hasattr(GEvent, '__html__'))
 | ||
|         self.assertEqual(force_text(event), event.__html__())
 | ||
| 
 | ||
|     def test_goverlay_html_safe(self):
 | ||
|         from django.contrib.gis.maps.google.overlays import GOverlayBase
 | ||
|         overlay = GOverlayBase()
 | ||
|         overlay.js_params = '"foo", "bar"'
 | ||
|         self.assertTrue(hasattr(GOverlayBase, '__html__'))
 | ||
|         self.assertEqual(force_text(overlay), overlay.__html__())
 |