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

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

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

revision 692 by jonathan, Wed Apr 16 14:10:10 2003 UTC revision 765 by bh, Tue Apr 29 12:42:14 2003 UTC
# Line 1  Line 1 
1  # Copyright (c) 2002 by Intevation GmbH  # Copyright (c) 2002, 2003 by Intevation GmbH
2  # Authors:  # Authors:
3  # Bernhard Herzog <[email protected]>  # Bernhard Herzog <[email protected]>
4  #  #
# Line 136  contents_test_labels = '''\ Line 136  contents_test_labels = '''\
136  </session>  </session>
137  '''  '''
138    
139    contents_test_layer_projection = '''\
140    <?xml version="1.0" encoding="UTF-8"?>
141    <!DOCTYPE session SYSTEM "thuban.dtd">
142    <session title="single map&amp;layer">
143            <map title="Test Map">
144                    <projection>
145                            <parameter value="zone=26"/>
146                            <parameter value="proj=utm"/>
147                            <parameter value="ellps=clrk66"/>
148                    </projection>
149                    <layer title="My Layer" stroke_width="1" fill="None"
150                        filename="../../Data/iceland/political.shp"
151                        stroke="#000000">
152                        <projection name="hello">
153                            <parameter value="zone=13"/>
154                            <parameter value="proj=tmerc"/>
155                            <parameter value="ellps=clrk66"/>
156                        </projection>
157                <classification field="POPYREG" field_type="string">
158                    <clnull label="hallo">
159                        <cldata stroke="#000000" stroke_width="1" fill="None"/>
160                    </clnull>
161                    <clpoint label="welt" value="1">
162                        <cldata stroke="#000000" stroke_width="2" fill="None"/>
163                    </clpoint>
164                </classification>
165            </layer>
166                    <layer title="My Layer" stroke_width="1" fill="None"
167                        filename="../../Data/iceland/political.shp"
168                        stroke="#000000">
169                        <projection>
170                            <parameter value="proj=lcc"/>
171                            <parameter value="ellps=clrk66"/>
172                        </projection>
173            </layer>
174        </map>
175    </session>
176    '''
177    
178  class LoadSessionTest(unittest.TestCase, support.FileTestMixin):  class LoadSessionTest(unittest.TestCase, support.FileTestMixin):
179    
180      def setUp(self):      def setUp(self):
# Line 151  class LoadSessionTest(unittest.TestCase, Line 190  class LoadSessionTest(unittest.TestCase,
190          file = open(self.temp_file_name("load_labels.thuban"), "w")          file = open(self.temp_file_name("load_labels.thuban"), "w")
191          file.write(contents_test_labels)          file.write(contents_test_labels)
192          file.close()          file.close()
193    
194            file = open(self.temp_file_name("load_layerproj.thuban"), "w")
195            file.write(contents_test_layer_projection)
196            file.close()
197    
198          self.session = None          self.session = None
199    
200      def tearDown(self):      def tearDown(self):
201          if self.session is not None:          if self.session is not None:
202              self.session.Destroy()              self.session.Destroy()
203            self.session = None
204    
205      def testSingleLayer(self):      def testSingleLayer(self):
206          """Load a session with a single map with a single layer"""          """Load a session with a single map with a single layer"""
# Line 283  class LoadSessionTest(unittest.TestCase, Line 328  class LoadSessionTest(unittest.TestCase,
328    
329          self.TestLayers(map.Layers(), expected)          self.TestLayers(map.Layers(), expected)
330    
331        def testLayerProjection(self):
332            eq = self.assertEquals
333            neq = self.assertNotEqual
334    
335            session = load_session(self.temp_file_name("load_layerproj.thuban"))
336            self.session = session
337    
338            map = self.session.Maps()[0] # only one map in the sample
339    
340            layers = map.Layers() # two layers in the sample
341    
342            # test layer with a named projection
343            proj = layers[0].GetProjection()
344            neq(proj, None)
345            eq(proj.GetName(), "hello")
346            eq(proj.GetParameter("proj"), "tmerc")
347            eq(proj.GetParameter("zone"), "13")
348            eq(proj.GetParameter("ellps"), "clrk66")
349    
350            # test layer with an unnamed projection
351            proj = layers[1].GetProjection()
352            neq(proj, None)
353            eq(proj.GetName(), "Unknown")
354            eq(proj.GetParameter("proj"), "lcc")
355            eq(proj.GetParameter("ellps"), "clrk66")
356    
357  if __name__ == "__main__":  if __name__ == "__main__":
358      unittest.main()      unittest.main()
359    

Legend:
Removed from v.692  
changed lines
  Added in v.765

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26