/[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 395 by jonathan, Mon Feb 10 15:28:02 2003 UTC revision 723 by bh, Thu Apr 24 15:31:53 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 20  import support Line 20  import support
20  support.initthuban()  support.initthuban()
21    
22  from Thuban.Model.messages import CHANGED, MAPS_CHANGED, FILENAME_CHANGED, \  from Thuban.Model.messages import CHANGED, MAPS_CHANGED, FILENAME_CHANGED, \
23       MAP_PROJECTION_CHANGED, LAYERS_CHANGED, \       MAP_PROJECTION_CHANGED, MAP_LAYERS_CHANGED, \
24       LAYER_VISIBILITY_CHANGED, LAYER_LEGEND_CHANGED       LAYER_VISIBILITY_CHANGED, LAYER_CHANGED
25  from Thuban.Model.session import Session  from Thuban.Model.session import Session
26  from Thuban.Model.map import Map  from Thuban.Model.map import Map
27  from Thuban.Model.layer import Layer  from Thuban.Model.layer import Layer
# Line 58  class TestSessionBase(unittest.TestCase, Line 58  class TestSessionBase(unittest.TestCase,
58    
59          # Create a Session and subscribe to all interesting channels.          # Create a Session and subscribe to all interesting channels.
60          self.session = Session("Test Session")          self.session = Session("Test Session")
61          for channel in (CHANGED, MAPS_CHANGED, FILENAME_CHANGED,          for channel in (CHANGED,
62                          MAP_PROJECTION_CHANGED, LAYERS_CHANGED,                          MAPS_CHANGED,  
63                          LAYER_VISIBILITY_CHANGED, LAYER_LEGEND_CHANGED):                          FILENAME_CHANGED,
64                            MAP_PROJECTION_CHANGED,
65                            MAP_LAYERS_CHANGED,
66                            LAYER_VISIBILITY_CHANGED,
67                            LAYER_CHANGED):
68              self.session.Subscribe(channel,              self.session.Subscribe(channel,
69                                     self.subscribe_with_params, channel)                                     self.subscribe_with_params, channel)
70    
71      def tearDown(self):      def tearDown(self):
72          """Destroy self.session and clear the message list"""          """Destroy self.session and clear the message list"""
73          self.session.Destroy()          self.session.Destroy()
74            self.session = None
75          self.clear_messages()          self.clear_messages()
76    
77    
# Line 101  class TestSessionWithContent(TestSession Line 106  class TestSessionWithContent(TestSession
106          """Extend the inherited method to add a non-empty map to self.session          """Extend the inherited method to add a non-empty map to self.session
107          """          """
108          TestSessionBase.setUp(self)          TestSessionBase.setUp(self)
109            open_shp = self.session.OpenShapefile
110          self.arc_layer = Layer("Roads",          self.arc_layer = Layer("Roads",
111                                 os.path.join("..", "Data", "iceland",                                 open_shp(os.path.join("..", "Data", "iceland",
112                                              "roads-line.shp"))                                                       "roads-line.shp")))
113          self.poly_layer = Layer("Political",          self.poly_layer = Layer("Political",
114                                  os.path.join("..", "Data", "iceland",                                  open_shp(os.path.join("..", "Data", "iceland",
115                                               "political.shp"))                                                        "political.shp")))
116          self.map = Map("A Map")          self.map = Map("A Map")
117          self.map.AddLayer(self.arc_layer)          self.map.AddLayer(self.arc_layer)
118          self.map.AddLayer(self.poly_layer)          self.map.AddLayer(self.poly_layer)
# Line 114  class TestSessionWithContent(TestSession Line 120  class TestSessionWithContent(TestSession
120          self.session.UnsetModified()          self.session.UnsetModified()
121          self.clear_messages()          self.clear_messages()
122    
123        def tearDown(self):
124            TestSessionBase.tearDown(self)
125            self.arc_layer = self.poly_layer = None
126    
127      def test_remove_map(self):      def test_remove_map(self):
128          """Test Session.RemoveMap"""          """Test Session.RemoveMap"""
129          self.session.RemoveMap(self.map)          self.session.RemoveMap(self.map)
# Line 148  class TestSessionWithContent(TestSession Line 158  class TestSessionWithContent(TestSession
158    
159      def test_forwarding_fill(self):      def test_forwarding_fill(self):
160          """Test Session's forwarding of Layer.SetFill messages"""          """Test Session's forwarding of Layer.SetFill messages"""
161          self.poly_layer.classification.SetDefaultFill(Color(0.0, 0.5, 1.0))          self.poly_layer.GetClassification().SetDefaultFill(Color(0.0, 0.5, 1.0))
162          self.assert_(self.session.WasModified())          self.assert_(self.session.WasModified())
163          self.check_messages([(self.poly_layer, LAYER_LEGEND_CHANGED),          self.check_messages([(self.poly_layer, LAYER_CHANGED),
164                               (self.session, CHANGED)])                               (self.session, CHANGED)])
165    
166      def test_forwarding_stroke(self):      def test_forwarding_stroke(self):
167          """Test Session's forwarding of Layer.SetStroke messages"""          """Test Session's forwarding of Layer.SetStroke messages"""
168          self.poly_layer.classification.SetDefaultStroke(Color(0.0, 0.5, 1.0))          self.poly_layer.GetClassification().\
169                SetDefaultLineColor(Color(0.0, 0.5, 1.0))
170          self.assert_(self.session.WasModified())          self.assert_(self.session.WasModified())
171          self.check_messages([(self.poly_layer, LAYER_LEGEND_CHANGED),          self.check_messages([(self.poly_layer, LAYER_CHANGED),
172                               (self.session, CHANGED)])                               (self.session, CHANGED)])
173    
174      def test_forwarding_stroke_width(self):      def test_forwarding_stroke_width(self):
175          """Test Session's forwarding of Layer.SetStrokeWidth messages"""          """Test Session's forwarding of Layer.SetStrokeWidth messages"""
176          self.poly_layer.classification.SetDefaultStrokeWidth(3)          self.poly_layer.GetClassification().SetDefaultLineWidth(3)
177          self.assert_(self.session.WasModified())          self.assert_(self.session.WasModified())
178          self.check_messages([(self.poly_layer, LAYER_LEGEND_CHANGED),          self.check_messages([(self.poly_layer, LAYER_CHANGED),
179                               (self.session, CHANGED)])                               (self.session, CHANGED)])
180    
181      def test_forwarding_visibility(self):      def test_forwarding_visibility(self):
# Line 188  class TestSessionWithContent(TestSession Line 199  class TestSessionWithContent(TestSession
199      def test_unset_modified_layer(self):      def test_unset_modified_layer(self):
200          """Test Session.UnsetModified with layer level changes"""          """Test Session.UnsetModified with layer level changes"""
201          self.failIf(self.session.WasModified())          self.failIf(self.session.WasModified())
202          self.poly_layer.classification.SetDefaultStrokeWidth(3)          self.poly_layer.GetClassification().SetDefaultLineWidth(3)
203          self.assert_(self.session.WasModified())          self.assert_(self.session.WasModified())
204          self.session.UnsetModified()          self.session.UnsetModified()
205          self.failIf(self.session.WasModified())          self.failIf(self.session.WasModified())
206          self.check_messages([(self.poly_layer, LAYER_LEGEND_CHANGED),          self.check_messages([(self.poly_layer, LAYER_CHANGED),
207                               (self.session, CHANGED),                               (self.session, CHANGED),
208                               (CHANGED,)])                               (CHANGED,)])
209    

Legend:
Removed from v.395  
changed lines
  Added in v.723

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26