/[thuban]/branches/WIP-pyshapelib-bramz/test/test_layer.py
ViewVC logotype

Diff of /branches/WIP-pyshapelib-bramz/test/test_layer.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1142 by bh, Tue Jun 10 09:41:57 2003 UTC revision 1278 by jonathan, Fri Jun 20 17:46:58 2003 UTC
# Line 33  from Thuban.Model.proj import Projection Line 33  from Thuban.Model.proj import Projection
33  from Thuban.Model.data import DerivedShapeStore  from Thuban.Model.data import DerivedShapeStore
34  from Thuban.Model.classification import Classification, ClassGroupSingleton  from Thuban.Model.classification import Classification, ClassGroupSingleton
35    
36    import Thuban.Model.resource
37    
38  class TestLayer(unittest.TestCase, support.FileTestMixin,  class TestLayer(unittest.TestCase, support.FileTestMixin,
39                  support.FloatComparisonMixin):                  support.FloatComparisonMixin):
40    
# Line 75  class TestLayer(unittest.TestCase, suppo Line 77  class TestLayer(unittest.TestCase, suppo
77          self.failUnless(layer.Visible())          self.failUnless(layer.Visible())
78    
79          self.failIf(layer.HasClassification())          self.failIf(layer.HasClassification())
80            self.failIf(layer.HasShapes())
81    
82          self.assertEquals(layer.GetProjection(), None)          self.assertEquals(layer.GetProjection(), None)
83    
84          # set/get projection          # set/get projection
# Line 92  class TestLayer(unittest.TestCase, suppo Line 96  class TestLayer(unittest.TestCase, suppo
96          """Test Layer with arc shapes"""          """Test Layer with arc shapes"""
97          layer = self.layer = Layer("Test Layer",          layer = self.layer = Layer("Test Layer",
98                                     self.open_shapefile("roads-line.shp"))                                     self.open_shapefile("roads-line.shp"))
99            self.failUnless(layer.HasClassification())
100            self.failUnless(layer.HasShapes())
101          self.assertEquals(layer.ShapeType(), SHAPETYPE_ARC)          self.assertEquals(layer.ShapeType(), SHAPETYPE_ARC)
102          self.assertEquals(layer.NumShapes(), 839)          self.assertEquals(layer.NumShapes(), 839)
103          shape = layer.Shape(32)          shape = layer.Shape(32)
# Line 126  class TestLayer(unittest.TestCase, suppo Line 132  class TestLayer(unittest.TestCase, suppo
132          """Test Layer with polygon shapes"""          """Test Layer with polygon shapes"""
133          layer = self.layer = Layer("Test Layer",          layer = self.layer = Layer("Test Layer",
134                                     self.open_shapefile("political.shp"))                                     self.open_shapefile("political.shp"))
135            self.failUnless(layer.HasClassification())
136            self.failUnless(layer.HasShapes())
137          self.assertEquals(layer.ShapeType(), SHAPETYPE_POLYGON)          self.assertEquals(layer.ShapeType(), SHAPETYPE_POLYGON)
138          self.assertEquals(layer.NumShapes(), 156)          self.assertEquals(layer.NumShapes(), 156)
139          shape = layer.Shape(4)          shape = layer.Shape(4)
# Line 144  class TestLayer(unittest.TestCase, suppo Line 152  class TestLayer(unittest.TestCase, suppo
152          """Test Layer with point shapes"""          """Test Layer with point shapes"""
153          layer = self.layer = Layer("Test Layer",          layer = self.layer = Layer("Test Layer",
154                             self.open_shapefile("cultural_landmark-point.shp"))                             self.open_shapefile("cultural_landmark-point.shp"))
155            self.failUnless(layer.HasClassification())
156            self.failUnless(layer.HasShapes())
157          self.assertEquals(layer.ShapeType(), SHAPETYPE_POINT)          self.assertEquals(layer.ShapeType(), SHAPETYPE_POINT)
158          self.assertEquals(layer.NumShapes(), 34)          self.assertEquals(layer.NumShapes(), 34)
159          shape = layer.Shape(0)          shape = layer.Shape(0)
# Line 182  class TestLayer(unittest.TestCase, suppo Line 192  class TestLayer(unittest.TestCase, suppo
192          self.assertEquals(layer.GetFieldType("non existing"), None)          self.assertEquals(layer.GetFieldType("non existing"), None)
193    
194      def test_raster_layer(self):      def test_raster_layer(self):
195            if not Thuban.Model.resource.has_gdal_support():
196                return
197    
198          filename = self.build_path("island.tif")          filename = self.build_path("island.tif")
199          layer = RasterLayer("Test RasterLayer", filename)          layer = RasterLayer("Test RasterLayer", filename)
200            self.failIf(layer.HasClassification())
201            self.failIf(layer.HasShapes())
202          self.assertEquals(layer.GetImageFilename(), filename)          self.assertEquals(layer.GetImageFilename(), filename)
203          self.assertFloatSeqEqual(layer.BoundingBox(),          self.assertFloatSeqEqual(layer.BoundingBox(),
204                                   [-24.5500000, 63.2833330,                                   [-24.5500000, 63.2833330,
# Line 201  class TestLayer(unittest.TestCase, suppo Line 216  class TestLayer(unittest.TestCase, suppo
216              derived = DerivedShapeStore(store, store.Table())              derived = DerivedShapeStore(store, store.Table())
217              layer.SetShapeStore(derived)              layer.SetShapeStore(derived)
218              self.assert_(layer.ShapeStore() is derived)              self.assert_(layer.ShapeStore() is derived)
219    
220                # check that an exception is raised when the number
221                # of shapes differ from the number of rows in a table.
222                layer2 = Layer("Test Layer",
223                               self.open_shapefile("political.shp"))
224                store2 = layer2.ShapeStore()
225                self.assertRaises(ValueError,
226                                  DerivedShapeStore, store2, store.Table())
227    
228          finally:          finally:
229              store = derived = None              store = derived = None
230                layer2.Destroy()
231                store2 = None
232    
233    
234  class SetShapeStoreTests(unittest.TestCase, support.SubscriberMixin):  class SetShapeStoreTests(unittest.TestCase, support.SubscriberMixin):

Legend:
Removed from v.1142  
changed lines
  Added in v.1278

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26