app/django/contrib/gis/tests/test_gdal_driver.py
changeset 323 ff1a9aa48cfd
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/app/django/contrib/gis/tests/test_gdal_driver.py	Tue Oct 14 16:00:59 2008 +0000
@@ -0,0 +1,40 @@
+import os, os.path, unittest
+from django.contrib.gis.gdal import Driver, OGRException
+
+valid_drivers = ('ESRI Shapefile', 'MapInfo File', 'TIGER', 'S57', 'DGN',
+                 'Memory', 'CSV', 'GML', 'KML')
+
+invalid_drivers = ('Foo baz', 'clucka', 'ESRI Shp')
+
+aliases = {'eSrI' : 'ESRI Shapefile',
+           'TigER/linE' : 'TIGER',
+           'SHAPE' : 'ESRI Shapefile',
+           'sHp' : 'ESRI Shapefile',
+           }
+
+class DriverTest(unittest.TestCase):
+
+    def test01_valid_driver(self):
+        "Testing valid OGR Data Source Drivers."
+        for d in valid_drivers:
+            dr = Driver(d)
+            self.assertEqual(d, str(dr))
+
+    def test02_invalid_driver(self):
+        "Testing invalid OGR Data Source Drivers."
+        for i in invalid_drivers:
+            self.assertRaises(OGRException, Driver, i)
+
+    def test03_aliases(self):
+        "Testing driver aliases."
+        for alias, full_name in aliases.items():
+            dr = Driver(alias)
+            self.assertEqual(full_name, str(dr))
+
+def suite():
+    s = unittest.TestSuite()
+    s.addTest(unittest.makeSuite(DriverTest))
+    return s
+
+def run(verbosity=2):
+    unittest.TextTestRunner(verbosity=verbosity).run(suite())