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

Annotation of /branches/WIP-pyshapelib-bramz/test/test_wxproj.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1864 - (hide annotations)
Fri Oct 24 17:25:53 2003 UTC (21 years, 4 months ago) by bh
Original Path: trunk/thuban/test/test_wxproj.py
File MIME type: text/x-python
File size: 2957 byte(s)
(TestShapeCentroid.test_invalid_shape_id):
New. test whether an exception is raised for invalid shape ids

1 bh 1740 # Copyright (C) 2003 by Intevation GmbH
2     # Authors:
3     # Bernhard Herzog <[email protected]>
4     #
5     # This program is free software under the GPL (>=v2)
6     # Read the file COPYING coming with the software for details.
7    
8     """Test cases for wxproj"""
9    
10     __version__ = "$Revision$"
11     # $Source$
12     # $Id$
13    
14     import os
15     import unittest
16    
17     import support
18     support.initthuban()
19    
20     import shapelib
21     from wxproj import shape_centroid
22     from Thuban.Model.proj import Projection
23    
24    
25     class TestShapeCentroid(unittest.TestCase, support.FloatComparisonMixin):
26    
27     """Test cases for wxproj.shape_centroid()"""
28    
29     def setUp(self):
30     filename = os.path.join("..", "Data", "iceland", "political.shp")
31     self.shapefile = shapelib.ShapeFile(filename)
32     self.map_proj = Projection(["proj=utm", "zone=26", "ellps=clrk66"])
33     self.layer_proj = Projection(["proj=latlong",
34     "to_meter=0.017453292519943295",
35     "ellps=clrk66"])
36    
37     def test_no_proj(self):
38     """Test shape_centroid without any projections"""
39     self.assertFloatSeqEqual(shape_centroid(self.shapefile.cobject(), 0,
40     None, None,
41     1, 1, 0, 0),
42     (-22.5514848648, 64.7794567309))
43    
44     def test_map_proj(self):
45     """Test shape_centroid with map projection"""
46     self.assertFloatSeqEqual(shape_centroid(self.shapefile.cobject(), 0,
47     self.map_proj, None,
48     1, 1, 0, 0),
49     (711378, 7191110),
50     epsilon = 1)
51    
52     def test_layer_proj(self):
53     """Test shape_centroid with layer projection"""
54     self.assertFloatSeqEqual(shape_centroid(self.shapefile.cobject(), 0,
55     None, self.layer_proj,
56     1, 1, 0, 0),
57     (-22.5514848648, 64.7794567309))
58    
59     def test_both_proj(self):
60     """Test shape_centroid with map and layer projection"""
61     self.assertFloatSeqEqual(shape_centroid(self.shapefile.cobject(), 0,
62     self.map_proj, self.layer_proj,
63     1, 1, 0, 0),
64     (711378, 7191110),
65     epsilon=1)
66    
67 bh 1864 def test_invalid_shape_id(self):
68     """Test shape_centroid without an invalid shape id"""
69     self.assertRaises(ValueError, shape_centroid,
70     self.shapefile.cobject(), -1, None, None,
71     1, 1, 0, 0)
72     self.assertRaises(ValueError, shape_centroid,
73     self.shapefile.cobject(), 1000000, None, None,
74     1, 1, 0, 0)
75    
76 bh 1740 if __name__ == "__main__":
77     support.run_tests()

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26