diff -r 8d941af65caf -r 77b6da96e6f1 web/lib/django/contrib/gis/tests/geoapp/test_regress.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/lib/django/contrib/gis/tests/geoapp/test_regress.py Wed Jun 02 18:57:35 2010 +0200 @@ -0,0 +1,37 @@ +import os, unittest +from django.contrib.gis.tests.utils import no_mysql, no_oracle, no_postgis, no_spatialite +from django.contrib.gis.shortcuts import render_to_kmz +from models import City + +class GeoRegressionTests(unittest.TestCase): + + def test01_update(self): + "Testing GeoQuerySet.update(), see #10411." + pnt = City.objects.get(name='Pueblo').point + bak = pnt.clone() + pnt.y += 0.005 + pnt.x += 0.005 + + City.objects.filter(name='Pueblo').update(point=pnt) + self.assertEqual(pnt, City.objects.get(name='Pueblo').point) + City.objects.filter(name='Pueblo').update(point=bak) + self.assertEqual(bak, City.objects.get(name='Pueblo').point) + + def test02_kmz(self): + "Testing `render_to_kmz` with non-ASCII data, see #11624." + name = '\xc3\x85land Islands'.decode('iso-8859-1') + places = [{'name' : name, + 'description' : name, + 'kml' : '5.0,23.0' + }] + kmz = render_to_kmz('gis/kml/placemarks.kml', {'places' : places}) + + @no_spatialite + @no_mysql + def test03_extent(self): + "Testing `extent` on a table with a single point, see #11827." + pnt = City.objects.get(name='Pueblo').point + ref_ext = (pnt.x, pnt.y, pnt.x, pnt.y) + extent = City.objects.filter(name='Pueblo').extent() + for ref_val, val in zip(ref_ext, extent): + self.assertAlmostEqual(ref_val, val, 4)