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

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

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

revision 1867 by bh, Mon Oct 27 13:02:13 2003 UTC revision 1928 by bh, Mon Nov 10 16:57:43 2003 UTC
# Line 22  support.initthuban() Line 22  support.initthuban()
22  from Thuban.Model.color import Transparent, Color  from Thuban.Model.color import Transparent, Color
23  from Thuban.Model.data import SHAPETYPE_ARC, SHAPETYPE_POLYGON, SHAPETYPE_POINT  from Thuban.Model.data import SHAPETYPE_ARC, SHAPETYPE_POLYGON, SHAPETYPE_POINT
24  from Thuban.Model.map import Map  from Thuban.Model.map import Map
25  from Thuban.Model.layer import Layer, RasterLayer  from Thuban.Model.layer import BaseLayer, Layer, RasterLayer
26  from Thuban.Model.table import MemoryTable, \  from Thuban.Model.table import MemoryTable, \
27       FIELDTYPE_DOUBLE, FIELDTYPE_INT, FIELDTYPE_STRING       FIELDTYPE_DOUBLE, FIELDTYPE_INT, FIELDTYPE_STRING
28  from Thuban.Model.classification import ClassGroupSingleton  from Thuban.Model.classification import ClassGroupSingleton
29  import Thuban.Model.resource  import Thuban.Model.resource
30    
31    
32  from Thuban.UI.baserenderer import BaseRenderer  from Thuban.UI.baserenderer import BaseRenderer, \
33         add_renderer_extension, init_renderer_extensions
34    
35    
36  class MockDC:  class MockDC:
# Line 88  class SimpleRenderer(BaseRenderer): Line 89  class SimpleRenderer(BaseRenderer):
89      def label_font(self):      def label_font(self):
90          return "label font"          return "label font"
91    
92      def draw_raster_data(self, data):      def draw_raster_data(self, data, format='BMP'):
93          self.raster_data = data          self.raster_data = data
94            self.raster_format = format
95    
96    
97  class MockProjection:  class MockProjection:
# Line 324  class TestBaseRenderer(unittest.TestCase Line 326  class TestBaseRenderer(unittest.TestCase
326              'yItGQwJCQo9RxozIgkyCQoPFxAtDBkgIgkJCQkJCQkJMRoQECJQNi9EIAAgCQkJCQ'              'yItGQwJCQo9RxozIgkyCQoPFxAtDBkgIgkJCQkJCQkJMRoQECJQNi9EIAAgCQkJCQ'
327              'kSUA88UAYeBjELICA8HiI=\n')              'kSUA88UAYeBjELICA8HiI=\n')
328          self.assertEquals(renderer.raster_data, raw_data)          self.assertEquals(renderer.raster_data, raw_data)
329            self.assertEquals(renderer.raster_format, "BMP")
330    
331          self.assertEquals(dc.calls,          self.assertEquals(dc.calls,
332                            [('BeginDrawing',),                            [('BeginDrawing',),
# Line 453  class TestBaseRenderer(unittest.TestCase Line 456  class TestBaseRenderer(unittest.TestCase
456                             ('EndDrawing',)])                             ('EndDrawing',)])
457    
458    
459        def test_renderer_extension(self):
460            """Test renderer with a renderer extension"""
461            class MyLayer(BaseLayer):
462                pass
463    
464            calls = []
465            def my_renderer(renderer, layer):
466                calls.append((renderer, layer))
467                return ()
468    
469            add_renderer_extension(MyLayer, my_renderer)
470    
471            try:
472                map = Map("test_renderer_extension")
473                layer = MyLayer("my layer")
474                map.AddLayer(layer)
475                self.to_destroy.append(map)
476    
477                dc = MockDC()
478                renderer = SimpleRenderer(dc, map, 2, (10, 10))
479                renderer.render_map()
480            finally:
481                init_renderer_extensions()
482    
483            self.assertEquals(calls, [(renderer, layer)])
484    
485    
486  if __name__ == "__main__":  if __name__ == "__main__":
487      support.run_tests()      support.run_tests()

Legend:
Removed from v.1867  
changed lines
  Added in v.1928

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26