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())