/[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 2034 by bh, Mon Dec 22 16:35:16 2003 UTC revision 2620 by jonathan, Fri May 6 14:19:23 2005 UTC
# Line 1  Line 1 
1  # Copyright (c) 2002, 2003 by Intevation GmbH  # Copyright (c) 2002, 2003, 2004 by Intevation GmbH
2  # Authors:  # Authors:
3  # Bernhard Herzog <[email protected]>  # Bernhard Herzog <[email protected]>
4  #  #
# Line 16  files created by Thuban 0.2. Line 16  files created by Thuban 0.2.
16  Maintenance of the test cases:  Maintenance of the test cases:
17    
18  When during a development period the file format is changed with respect  When during a development period the file format is changed with respect
19  to the last released version for the first, the tests here should be  to the last released version for the first time, the tests here should
20  copied to the version specific test file. The round-trip tests which  be copied to the version specific test file.  The round-trip tests which
21  save the session again and compare the XML files should not be copied  save the session again and compare the XML files should not be copied
22  over as they only make sense here to make sure th that the files checked  over as they only make sense here to make sure th that the files checked
23  here are actually ones that may have been written by the current thuban  here are actually ones that may have been written by the current thuban
# Line 53  from Thuban.Model.table import DBFTable, Line 53  from Thuban.Model.table import DBFTable,
53  from Thuban.Model.label import ALIGN_CENTER, ALIGN_TOP, ALIGN_BOTTOM, \  from Thuban.Model.label import ALIGN_CENTER, ALIGN_TOP, ALIGN_BOTTOM, \
54       ALIGN_LEFT, ALIGN_RIGHT, ALIGN_BASELINE       ALIGN_LEFT, ALIGN_RIGHT, ALIGN_BASELINE
55    
   
56  def filenames_equal(name1, name2):  def filenames_equal(name1, name2):
57      """Return true if the filenames name1 and name2 are equal.      """Return true if the filenames name1 and name2 are equal.
58    
# Line 89  class LoadSessionTest(support.FileLoadTe Line 88  class LoadSessionTest(support.FileLoadTe
88          self.session = None          self.session = None
89    
90    
91      dtd = "http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"      dtd = "http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
92      thubanids = [((dtd, n), (None, "id")) for n in      thubanids = [((dtd, n), (None, "id")) for n in
93                   ["fileshapesource", "filetable", "jointable",                   ["fileshapesource", "filetable", "jointable",
94                    "derivedshapesource"]]                    "derivedshapesource"]]
# Line 124  class LoadSessionTest(support.FileLoadTe Line 123  class LoadSessionTest(support.FileLoadTe
123                  print a != b and "***************" or ""                  print a != b and "***************" or ""
124                  print a                  print a
125                  print b                  print b
126    
127          self.assertEquals(el1, el2,          self.assertEquals(el1, el2,
128                            "loaded file not equivalent to the saved file")                            "loaded file not equivalent to the saved file")
129    
# Line 162  class ClassificationTest(LoadSessionTest Line 162  class ClassificationTest(LoadSessionTest
162                  props.SetLineWidth(data[CLASSES][i][GROUP_PROPS][1])                  props.SetLineWidth(data[CLASSES][i][GROUP_PROPS][1])
163                  props.SetFill(                  props.SetFill(
164                      parse_color(data[CLASSES][i][GROUP_PROPS][2]))                      parse_color(data[CLASSES][i][GROUP_PROPS][2]))
165                    if len(data[CLASSES][i][GROUP_PROPS]) > 3:
166                        props.SetSize(data[CLASSES][i][GROUP_PROPS][3])
167    
168                  if data[CLASSES][i][GROUP_TYPE] == "default":                  if data[CLASSES][i][GROUP_TYPE] == "default":
169                      g = ClassGroupDefault(props, data[CLASSES][i][GROUP_LABEL])                      g = ClassGroupDefault(props, data[CLASSES][i][GROUP_LABEL])
# Line 185  class TestSingleLayer(LoadSessionTest): Line 187  class TestSingleLayer(LoadSessionTest):
187      # want to test whether the loading code handles that correctly.      # want to test whether the loading code handles that correctly.
188      file_contents = '''\      file_contents = '''\
189  <?xml version="1.0" encoding="UTF-8"?>  <?xml version="1.0" encoding="UTF-8"?>
190  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
191  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
192          title="Stra\xc3\x9fen &amp; Landmarken">          title="Stra\xc3\x9fen &amp; Landmarken">
193      <fileshapesource filetype="shapefile" id="D1"      <fileshapesource filetype="shapefile" id="D1"
194          filename="../../Data/iceland/political.shp"/>          filename="../../Data/iceland/political.shp"/>
# Line 277  class TestNonAsciiColumnName(LoadSession Line 279  class TestNonAsciiColumnName(LoadSession
279    
280      file_contents = '''\      file_contents = '''\
281  <?xml version="1.0" encoding="UTF-8"?>  <?xml version="1.0" encoding="UTF-8"?>
282  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
283  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
284          title="Non ASCII column name test">          title="Non ASCII column name test">
285      <fileshapesource filetype="shapefile" id="D1"      <fileshapesource filetype="shapefile" id="D1"
286          filename="TestNonAsciiColumnName.shp"/>          filename="TestNonAsciiColumnName.shp"/>
# Line 354  class TestLayerVisibility(LoadSessionTes Line 356  class TestLayerVisibility(LoadSessionTes
356    
357      file_contents = '''\      file_contents = '''\
358  <?xml version="1.0" encoding="UTF-8"?>  <?xml version="1.0" encoding="UTF-8"?>
359  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
360  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
361          title="single map&amp;layer">          title="single map&amp;layer">
362      <fileshapesource filetype="shapefile" id="D1"      <fileshapesource filetype="shapefile" id="D1"
363          filename="../../Data/iceland/political.shp"/>          filename="../../Data/iceland/political.shp"/>
# Line 388  class TestLayerVisibility(LoadSessionTes Line 390  class TestLayerVisibility(LoadSessionTes
390          self.check_format()          self.check_format()
391    
392    
393    class TestSymbolSize(ClassificationTest):
394    
395        file_contents = '''\
396    <?xml version="1.0" encoding="UTF-8"?>
397    <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
398    <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd" title="Thuban sample session">
399        <fileshapesource filetype="shapefile" id="D813968480" filename="../../Data/iceland/cultural_landmark-point.shp"/>
400        <map title="Iceland map">
401            <layer title="cultural_landmark-point" stroke_width="1" shapestore="D813968480" visible="true" stroke="#000000" fill="#000000">
402                <classification field="CLPTLABEL" field_type="string">
403                    <clnull label="">
404                        <cldata stroke="#000000" stroke_width="1" size="3" fill="#000000"/>
405                    </clnull>
406                    <clpoint label="" value="RUINS">
407                        <cldata stroke="#000000" stroke_width="1" size="6" fill="#ffffff"/>
408                    </clpoint>
409                    <clpoint label="" value="FARM">
410                        <cldata stroke="#000000" stroke_width="1" size="9" fill="#ffff00"/>
411                    </clpoint>
412                </classification>
413            </layer>
414        </map>
415    </session>
416    '''
417    
418        def test(self):
419            """Test that the size attribute for point symbols is correctly
420            loaded for a layer."""
421            eq = self.assertEquals
422            session = load_session(self.filename())
423            self.session = session
424    
425            map = session.Maps()[0] # only one map in the sample
426    
427            expected = [("cultural_landmark-point", 2,
428                            [("default", (), "",
429                                ("#000000", 1, "#000000", 3)),
430                             ("single", "RUINS", "",
431                                ("#000000", 1, "#ffffff", 6)),
432                             ("single", "FARM", "",
433                                ("#000000", 1, "#ffff00", 9))])]
434    
435            self.TestLayers(map.Layers(), expected)
436    
437            self.check_format()
438    
439    
440  class TestClassification(ClassificationTest):  class TestClassification(ClassificationTest):
441    
442      file_contents = '''\      file_contents = '''\
443  <?xml version="1.0" encoding="UTF-8"?>  <?xml version="1.0" encoding="UTF-8"?>
444  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
445  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
446          title="single map&amp;layer">          title="single map&amp;layer">
447      <fileshapesource filetype="shapefile" id="D138389860"      <fileshapesource filetype="shapefile" id="D138389860"
448          filename="../../Data/iceland/political.shp"/>          filename="../../Data/iceland/political.shp"/>
# Line 484  class TestLabels(ClassificationTest): Line 533  class TestLabels(ClassificationTest):
533    
534      file_contents = '''\      file_contents = '''\
535  <?xml version="1.0" encoding="UTF-8"?>  <?xml version="1.0" encoding="UTF-8"?>
536  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
537  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
538          title="single map&amp;layer">          title="single map&amp;layer">
539      <fileshapesource filetype="shapefile" id="D1"      <fileshapesource filetype="shapefile" id="D1"
540          filename="../../Data/iceland/political.shp"/>          filename="../../Data/iceland/political.shp"/>
# Line 532  class TestLayerProjection(LoadSessionTes Line 581  class TestLayerProjection(LoadSessionTes
581    
582      file_contents = '''\      file_contents = '''\
583  <?xml version="1.0" encoding="UTF-8"?>  <?xml version="1.0" encoding="UTF-8"?>
584  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
585  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
586          title="single map&amp;layer">          title="single map&amp;layer">
587      <fileshapesource filetype="shapefile" id="D2"      <fileshapesource filetype="shapefile" id="D2"
588          filename="../../Data/iceland/roads-line.shp"/>          filename="../../Data/iceland/roads-line.shp"/>
# Line 610  class TestRasterLayer(LoadSessionTest): Line 659  class TestRasterLayer(LoadSessionTest):
659    
660      file_contents = '''\      file_contents = '''\
661  <?xml version="1.0" encoding="UTF-8"?>  <?xml version="1.0" encoding="UTF-8"?>
662  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
663  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
664          title="single map&amp;layer">          title="single map&amp;layer">
665      <map title="Test Map">      <map title="Test Map">
666          <rasterlayer visible="false" filename="../../Data/iceland/island.tif"          <rasterlayer visible="false" filename="../../Data/iceland/island.tif"
667                  title="My RasterLayer"/>                  title="My RasterLayer" opacity="0.4" masktype="alpha"/>
668      </map>      </map>
669  </session>  </session>
670  '''  '''
# Line 632  class TestRasterLayer(LoadSessionTest): Line 681  class TestRasterLayer(LoadSessionTest):
681          layer = map.Layers()[0] # one layer in the sample          layer = map.Layers()[0] # one layer in the sample
682    
683          eq(layer.Title(), "My RasterLayer")          eq(layer.Title(), "My RasterLayer")
684            eq(layer.Opacity(), 0.4)
685            eq(layer.MaskType(), layer.MASK_ALPHA)
686    
687          self.failIf(layer.Visible())          self.failIf(layer.Visible())
688          self.failUnless(filenames_equal(layer.GetImageFilename(),          self.failUnless(filenames_equal(layer.GetImageFilename(),
689                                          os.path.join(self.temp_dir(),                                          os.path.join(self.temp_dir(),
# Line 644  class TestRasterLayer(LoadSessionTest): Line 696  class TestRasterLayer(LoadSessionTest):
696  class TestJoinedTable(LoadSessionTest):  class TestJoinedTable(LoadSessionTest):
697    
698      file_contents = '''<?xml version="1.0" encoding="UTF-8"?>      file_contents = '''<?xml version="1.0" encoding="UTF-8"?>
699  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
700  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd" title="A Joined Table session">  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd" title="A Joined Table session">
701      <fileshapesource filetype="shapefile" id="D137227612"      <fileshapesource filetype="shapefile" id="D137227612"
702          filename="../../Data/iceland/roads-line.shp"/>          filename="../../Data/iceland/roads-line.shp"/>
703      <filetable filetype="DBF" filename="load_joinedtable.dbf" id="D136171140"      <filetable filetype="DBF" filename="load_joinedtable.dbf" id="D136171140"
# Line 695  class TestLabelLayer(LoadSessionTest): Line 747  class TestLabelLayer(LoadSessionTest):
747      # test whether they're supported correctly.      # test whether they're supported correctly.
748    
749      file_contents = '''<?xml version="1.0" encoding="UTF-8"?>      file_contents = '''<?xml version="1.0" encoding="UTF-8"?>
750  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
751  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd" title="Thuban sample session">  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd" title="Thuban sample session">
752      <fileshapesource filetype="shapefile" id="D145265052"      <fileshapesource filetype="shapefile" id="D145265052"
753          filename="../../Data/iceland/political.shp"/>          filename="../../Data/iceland/political.shp"/>
754      <fileshapesource filetype="shapefile" id="D145412868"      <fileshapesource filetype="shapefile" id="D145412868"
# Line 752  class TestLabelLayer(LoadSessionTest): Line 804  class TestLabelLayer(LoadSessionTest):
804  class TestPostGISLayer(LoadSessionTest):  class TestPostGISLayer(LoadSessionTest):
805    
806      file_contents = '''<?xml version="1.0" encoding="UTF-8"?>      file_contents = '''<?xml version="1.0" encoding="UTF-8"?>
807  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
808  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
809          title="unnamed session">          title="unnamed session">
810      <dbconnection port="%(port)s" host="%(host)s" user="%(user)s"      <dbconnection port="%(port)s" host="%(host)s" user="%(user)s"
811          dbtype="postgis" id="D142684948" dbname="%(dbname)s"/>          dbtype="postgis" id="D142684948" dbname="%(dbname)s"/>
812      <dbshapesource tablename="landmarks" id="D143149420" dbconn="D142684948"/>      <dbshapesource id="D143149420" dbconn="D142684948"
813            tablename="landmarks_point_id" id_column="point_id"
814            geometry_column="the_geom" />
815      <map title="unnamed map">      <map title="unnamed map">
816          <layer shapestore="D143149420" visible="true" stroke="#000000"          <layer shapestore="D143149420" visible="true" stroke="#000000"
817                  title="landmarks" stroke_width="1" fill="None"/>                  title="landmarks" stroke_width="1" fill="None"/>
# Line 801  class TestPostGISLayer(LoadSessionTest): Line 855  class TestPostGISLayer(LoadSessionTest):
855  class TestPostGISLayerPassword(LoadSessionTest):  class TestPostGISLayerPassword(LoadSessionTest):
856    
857      file_contents = '''<?xml version="1.0" encoding="UTF-8"?>      file_contents = '''<?xml version="1.0" encoding="UTF-8"?>
858  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
859  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
860          title="unnamed session">          title="unnamed session">
861      <dbconnection port="%(port)s" host="%(host)s" user="%(user)s"      <dbconnection port="%(port)s" host="%(host)s" user="%(user)s"
862          dbtype="postgis" id="D142684948" dbname="%(dbname)s"/>          dbtype="postgis" id="D142684948" dbname="%(dbname)s"/>
# Line 896  class TestLoadError(LoadSessionTest): Line 950  class TestLoadError(LoadSessionTest):
950    
951      file_contents = '''\      file_contents = '''\
952  <?xml version="1.0" encoding="UTF-8"?>  <?xml version="1.0" encoding="UTF-8"?>
953  <!DOCTYPE session SYSTEM "thuban-1.0.dtd">  <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
954  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd"  <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd"
955          title="single map&amp;layer">          title="single map&amp;layer">
956      <fileshapesource id="D1" filename="../../Data/iceland/political.shp"/>      <fileshapesource id="D1" filename="../../Data/iceland/political.shp"/>
957      <map title="Test Map">      <map title="Test Map">
# Line 924  class TestLoadError(LoadSessionTest): Line 978  class TestLoadError(LoadSessionTest):
978              # LoadError really was about the missing attribute              # LoadError really was about the missing attribute
979              self.assertEquals(str(value),              self.assertEquals(str(value),
980                "Element "                "Element "
981                "(u'http://thuban.intevation.org/dtds/thuban-1.0rc1.dtd',"                "(u'http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd',"
982                " u'fileshapesource') requires an attribute 'filetype'")                " u'fileshapesource') requires an attribute 'filetype'")
983          else:          else:
984              self.fail("Missing filetype attribute doesn't raise LoadError")              self.fail("Missing filetype attribute doesn't raise LoadError")
985    
986    class Shapefile_CallBack:
987    
988        def __init__(self, params):
989            """Initialize the callback return values.
990              
991               params must be a dictionary of the potential CB modes (keys),
992               with lists of tuples of return values as values.
993               Depending on the test the callback can be called multiple,
994               each time a return value is poped from the list
995            """
996    
997            self.params = params
998    
999    
1000        def s_cb(self, filename, mode = None, second_try= 0):
1001            if self.params.has_key(mode):
1002                return self.params[mode].pop(0)
1003            else:
1004                raise LoadError
1005            
1006    class TestAltPath(LoadSessionTest):
1007    
1008        """Test the various cases in the alternative path feature.
1009    
1010           The test checks the reasonable cases:
1011           - First recognition of a path error, fixed with user interaction.
1012           - First recognition of a path error, load cancelled.
1013           - Path error fixed from list, confirmed by user.
1014           - Path error fixed from list, changed by user.
1015           - Path error fixed from list, cancelled by user.
1016           - Path error wrongly fixed from list, manual fix forced.
1017        """
1018    
1019        file_contents = '''\
1020    <?xml version="1.0" encoding="UTF-8"?>
1021    <!DOCTYPE session SYSTEM "thuban-1.1.dtd">
1022    <session xmlns="http://thuban.intevation.org/dtds/thuban-1.1-dev.dtd" title="AltPath Test session">
1023        <fileshapesource filetype="shapefile" id="D1108450956" filename="../../Data/iceland/political.shp"/>
1024        <fileshapesource filetype="shapefile" id="D1108900076" filename="../Data/iceland/roads-line.shp"/>
1025        <fileshapesource filetype="shapefile" id="D1108947244" filename="../../Data/iceland/cultural_landmark-point.shp"/>
1026        <map title="not the iceland map">
1027            <layer title="political" stroke_width="1" shapestore="D1108450956" visible="true" stroke="#000000" fill="#c0c0c0"/>
1028            <layer title="roads-line" stroke_width="1" shapestore="D1108900076" visible="true" stroke="#000000" fill="None"/>
1029            <layer title="something else" stroke_width="1" shapestore="D1108947244" visible="true" stroke="#000000" fill="None"/>
1030        </map>
1031    </session>
1032    '''
1033    
1034        def checkSession(self, session):
1035            """Check if session has been loaded successfully."""
1036            
1037            eq = self.assertEquals
1038    
1039            map = session.Maps()[0]
1040            layers = map.Layers()
1041    
1042            eq("AltPath Test session", session.Title())
1043            eq("not the iceland map", map.Title())
1044            eq(3,len(layers))
1045            eq("political",layers[0].Title())
1046            eq("roads-line",layers[1].Title())
1047            eq("something else",layers[2].Title())
1048    
1049        def test_01_single_path_error_fix(self):
1050            """Test single file path error fix."""
1051            # The usual initial case
1052            s_cb = Shapefile_CallBack({
1053                        "search": [("../Data/iceland/roads-line.shp",0)],
1054                        "check": [(None, None)]})
1055            self.session = load_session(self.filename(),
1056                                        shapefile_callback =s_cb.s_cb)
1057            self.checkSession(self.session)
1058            
1059        def test_02_path_error_fix_from_list(self):
1060            """Test single file path error fix."""
1061            # This represents the usual case for "from_list"
1062            s_cb = Shapefile_CallBack({
1063                    "search": [("../Data/iceland/roads-line.shp",1)],
1064                    "check": [(os.path.abspath("../Data/iceland/roads-line.shp"),1)]
1065                   })
1066            self.session = load_session(self.filename(),
1067                                        shapefile_callback =s_cb.s_cb)
1068            self.checkSession(self.session)
1069    
1070        def test_03_single_path_error_cancelled(self):
1071            """Test alternative path cancelled."""
1072            s_cb = Shapefile_CallBack({
1073                        "search": [(None,0)],
1074                        "check": [(None, None)]})
1075            self.assertRaises(LoadCancelled,
1076                                load_session, self.filename(), None, s_cb.s_cb)
1077    
1078        def test_04_path_error_fix_from_list_cancelled(self):
1079            """Test alternative path from list cancelled."""
1080            s_cb = Shapefile_CallBack({
1081                    "search": [("../Data/iceland/roads-line.shp",1)],
1082                    "check": [(None,1)]
1083                   })
1084            self.assertRaises(LoadCancelled,
1085                                load_session, self.filename(), None, s_cb.s_cb)
1086    
1087        def test_05_path_error_fix_from_list_changed(self):
1088            """Test alternative path from list changed."""
1089            s_cb = Shapefile_CallBack({
1090                    "search": [("../Data/iceland/roads-line.shp",1)],
1091                    "check": [("../Data/iceland/roads-line.shp",0)]
1092                   })
1093            self.session = load_session(self.filename(),
1094                                        shapefile_callback =s_cb.s_cb)
1095            self.checkSession(self.session)
1096    
1097        def test_06_path_error_fix_from_list_fails(self):
1098            """Test alternative path recovery from list."""
1099            s_cb = Shapefile_CallBack({
1100                    "search": [("../wrong/iceland/roads-line.shp",1),
1101                                ("../Data/iceland/roads-line.shp",0)],
1102                    "check": [(None,None)]
1103                   })
1104            self.session = load_session(self.filename(),
1105                                        shapefile_callback =s_cb.s_cb)
1106            self.assertRaises(IndexError,
1107                                s_cb.s_cb, None, "search")
1108            
1109    
1110    
1111  if __name__ == "__main__":  if __name__ == "__main__":
1112      support.run_tests()      support.run_tests()

Legend:
Removed from v.2034  
changed lines
  Added in v.2620

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26