app/django/contrib/gis/tests/test_gdal_driver.py
changeset 323 ff1a9aa48cfd
equal deleted inserted replaced
322:6641e941ef1e 323:ff1a9aa48cfd
       
     1 import os, os.path, unittest
       
     2 from django.contrib.gis.gdal import Driver, OGRException
       
     3 
       
     4 valid_drivers = ('ESRI Shapefile', 'MapInfo File', 'TIGER', 'S57', 'DGN',
       
     5                  'Memory', 'CSV', 'GML', 'KML')
       
     6 
       
     7 invalid_drivers = ('Foo baz', 'clucka', 'ESRI Shp')
       
     8 
       
     9 aliases = {'eSrI' : 'ESRI Shapefile',
       
    10            'TigER/linE' : 'TIGER',
       
    11            'SHAPE' : 'ESRI Shapefile',
       
    12            'sHp' : 'ESRI Shapefile',
       
    13            }
       
    14 
       
    15 class DriverTest(unittest.TestCase):
       
    16 
       
    17     def test01_valid_driver(self):
       
    18         "Testing valid OGR Data Source Drivers."
       
    19         for d in valid_drivers:
       
    20             dr = Driver(d)
       
    21             self.assertEqual(d, str(dr))
       
    22 
       
    23     def test02_invalid_driver(self):
       
    24         "Testing invalid OGR Data Source Drivers."
       
    25         for i in invalid_drivers:
       
    26             self.assertRaises(OGRException, Driver, i)
       
    27 
       
    28     def test03_aliases(self):
       
    29         "Testing driver aliases."
       
    30         for alias, full_name in aliases.items():
       
    31             dr = Driver(alias)
       
    32             self.assertEqual(full_name, str(dr))
       
    33 
       
    34 def suite():
       
    35     s = unittest.TestSuite()
       
    36     s.addTest(unittest.makeSuite(DriverTest))
       
    37     return s
       
    38 
       
    39 def run(verbosity=2):
       
    40     unittest.TextTestRunner(verbosity=verbosity).run(suite())