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

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

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

revision 982 by bh, Thu May 22 12:02:15 2003 UTC revision 1039 by bh, Mon May 26 17:31:24 2003 UTC
# Line 29  from Thuban.Model.proj import Projection Line 29  from Thuban.Model.proj import Projection
29  from Thuban.Model.color import Color  from Thuban.Model.color import Color
30  from Thuban.Model.table import MemoryTable, FIELDTYPE_STRING, \  from Thuban.Model.table import MemoryTable, FIELDTYPE_STRING, \
31                                 FIELDTYPE_INT, FIELDTYPE_DOUBLE                                 FIELDTYPE_INT, FIELDTYPE_DOUBLE
32    from Thuban.Model.data import DerivedShapeStore
33    
34    
35  class TestSessionSimple(unittest.TestCase):  class TestSessionSimple(unittest.TestCase):
36    
37      """Very simple test cases for Session"""      """Very simple test cases for Session"""
38    
39        def setUp(self):
40            """Initialize self.session to None"""
41            self.session = None
42    
43        def tearDown(self):
44            """Call self.session.Destroy() and reset self.session to None"""
45            self.session.Destroy()
46            self.session = None
47    
48      def test_initial_state(self):      def test_initial_state(self):
49          """Test Session's initial state"""          """Test Session's initial state"""
50          session = Session("Test Session")          session = self.session = Session("Test Session")
51          self.assertEquals(session.Title(), "Test Session")          self.assertEquals(session.Title(), "Test Session")
52          self.assertEquals(session.Maps(), [])          self.assertEquals(session.Maps(), [])
53          self.assertEquals(session.Tables(), [])          self.assertEquals(session.Tables(), [])
# Line 44  class TestSessionSimple(unittest.TestCas Line 55  class TestSessionSimple(unittest.TestCas
55          self.assertEquals(session.filename, None)          self.assertEquals(session.filename, None)
56          self.failIf(session.HasMaps())          self.failIf(session.HasMaps())
57          self.failIf(session.WasModified())          self.failIf(session.WasModified())
         session.Destroy()  
58    
59      def test_add_table(self):      def test_add_table(self):
60          """Test Session.AddTable()"""          """Test Session.AddTable()"""
61          session = Session("Test Session")          session = self.session = Session("Test Session")
62            memtable = MemoryTable([("type", FIELDTYPE_STRING),
63                                    ("value", FIELDTYPE_DOUBLE),
64                                    ("code", FIELDTYPE_INT)],
65                                   [("OTHER/UNKNOWN", -1.5, 11),
66                                    ("RUINS", 0.0, 1),
67                                    ("FARM", 3.141, 2),
68                                    ("BUILDING", 2.5, 3),
69                                    ("HUT", 1e6, 4),
70                                    ("LIGHTHOUSE", -0.01, 5)])
71            table = session.AddTable(memtable)
72            self.assertEquals(session.Tables(), [table])
73    
74        def test_open_table_file(self):
75            """Test Session.OpenTableFile()"""
76            session = self.session = Session("Test Session")
77            filename = os.path.join("..", "Data", "iceland",
78                                    "roads-line.dbf")
79            table = session.OpenTableFile(filename)
80            self.assertEquals(session.Tables(), [table])
81    
82        def test_remove_table(self):
83            """Test Session.RemoveTable()"""
84            session = self.session = Session("Test Session")
85          memtable = MemoryTable([("type", FIELDTYPE_STRING),          memtable = MemoryTable([("type", FIELDTYPE_STRING),
86                                  ("value", FIELDTYPE_DOUBLE),                                  ("value", FIELDTYPE_DOUBLE),
87                                  ("code", FIELDTYPE_INT)],                                  ("code", FIELDTYPE_INT)],
# Line 60  class TestSessionSimple(unittest.TestCas Line 93  class TestSessionSimple(unittest.TestCas
93                                  ("LIGHTHOUSE", -0.01, 5)])                                  ("LIGHTHOUSE", -0.01, 5)])
94          table = session.AddTable(memtable)          table = session.AddTable(memtable)
95          self.assertEquals(session.Tables(), [table])          self.assertEquals(session.Tables(), [table])
96            session.RemoveTable(table)
97            self.assertEquals(session.Tables(), [])
98            self.assertRaises(ValueError, session.RemoveTable, table)
99    
100        def test_open_shapefile(self):
101            """Test Session.OpenShapefile()"""
102            session = self.session = Session("Test Session")
103            filename = os.path.join("..", "Data", "iceland",
104                                    "roads-line.shp")
105            store = session.OpenShapefile(filename)
106            self.assertEquals(store.FileName(), os.path.abspath(filename))
107            # The filetype of a shapefile is "shapefile"
108            self.assertEquals(store.FileType(), "shapefile")
109            # The shapestore itself depends on nothing else
110            self.assertEquals(store.Dependencies(), ())
111            # The shapestore's table depends on the shapestore
112            self.assertEquals(store.Table().Dependencies(), (store,))
113    
114            self.assertEquals(session.Tables(), [store.Table()])
115    
116        def test_add_shapestore(self):
117            """Test Session.AddShapeStore()"""
118            session = self.session = Session("Test Session")
119            filename = os.path.join("..", "Data", "iceland",
120                                    "roads-line.shp")
121            try:
122                store = session.OpenShapefile(filename)
123                derived = DerivedShapeStore(store, store.Table())
124                session.AddShapeStore(derived)
125                self.assertEquals(session.ShapeStores(), [store, derived])
126            finally:
127                store = derived = None
128    
129    
130  class TestSessionBase(unittest.TestCase, support.SubscriberMixin):  class TestSessionBase(unittest.TestCase, support.SubscriberMixin):

Legend:
Removed from v.982  
changed lines
  Added in v.1039

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26