diff --git a/tests/python_tests/map_query_test.py b/tests/python_tests/map_query_test.py index 63a7249da..447da9df9 100644 --- a/tests/python_tests/map_query_test.py +++ b/tests/python_tests/map_query_test.py @@ -29,77 +29,78 @@ def test_map_query_throw3(): m = mapnik.Map(256,256) m.query_point(0,0,0) -# map has never been zoomed (even with data) -@raises(RuntimeError) -def test_map_query_throw4(): - m = mapnik.Map(256,256) - mapnik.load_map(m,'../data/good_maps/agg_poly_gamma_map.xml') - m.query_point(0,0,0) - -# invalid coords in general (do not intersect) -@raises(RuntimeError) -def test_map_query_throw5(): - m = mapnik.Map(256,256) - mapnik.load_map(m,'../data/good_maps/agg_poly_gamma_map.xml') - m.zoom_all() - m.query_point(0,9999999999999999,9999999999999999) - -# invalid coords for back projecting -@raises(RuntimeError) -def test_map_query_throw6(): - m = mapnik.Map(256,256) - mapnik.load_map(m,'../data/good_maps/merc2wgs84_reprojection.xml') - wgs84_bounds = mapnik.Box2d(-180,-90,180,90) - m.maximum_extent = wgs84_bounds - m.zoom_all() - m.query_point(0,-180,-90) - -def test_map_query_works1(): - m = mapnik.Map(256,256) - mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') - merc_bounds = mapnik.Box2d(-20037508.34,-20037508.34,20037508.34,20037508.34) - m.maximum_extent = merc_bounds - m.zoom_all() - fs = m.query_point(0,-11012435.5376, 4599674.6134) # somewhere in kansas - feat = fs.next() - eq_(feat.attributes['NAME_FORMA'],u'United States of America') - -def test_map_query_works2(): - m = mapnik.Map(256,256) - mapnik.load_map(m,'../data/good_maps/merc2wgs84_reprojection.xml') - wgs84_bounds = mapnik.Box2d(-179.999999975,-85.0511287776,179.999999975,85.0511287776) - m.maximum_extent = wgs84_bounds - # caution - will go square due to evil aspect_fix_mode backhandedness - m.zoom_all() - #mapnik.render_to_file(m,'works2.png') - # valid that aspec_fix_mode modified the bbox - eq_(m.envelope(),mapnik.Box2d(-179.999999975,-179.999999975,179.999999975,179.999999975)) - fs = m.query_point(0,-98.9264, 38.1432) # somewhere in kansas - feat = fs.next() - eq_(feat.attributes['NAME'],u'United States') - -def test_map_query_in_pixels_works1(): - m = mapnik.Map(256,256) - mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') - merc_bounds = mapnik.Box2d(-20037508.34,-20037508.34,20037508.34,20037508.34) - m.maximum_extent = merc_bounds - m.zoom_all() - fs = m.query_map_point(0,55,100) # somewhere in middle of us - feat = fs.next() - eq_(feat.attributes['NAME_FORMA'],u'United States of America') - -def test_map_query_in_pixels_works2(): - m = mapnik.Map(256,256) - mapnik.load_map(m,'../data/good_maps/merc2wgs84_reprojection.xml') - wgs84_bounds = mapnik.Box2d(-179.999999975,-85.0511287776,179.999999975,85.0511287776) - m.maximum_extent = wgs84_bounds - # caution - will go square due to evil aspect_fix_mode backhandedness - m.zoom_all() - # valid that aspec_fix_mode modified the bbox - eq_(m.envelope(),mapnik.Box2d(-179.999999975,-179.999999975,179.999999975,179.999999975)) - fs = m.query_map_point(0,55,100) # somewhere in middle of us - feat = fs.next() - eq_(feat.attributes['NAME'],u'United States') +if 'shape' in mapnik.DatasourceCache.instance().plugin_names(): + # map has never been zoomed (even with data) + @raises(RuntimeError) + def test_map_query_throw4(): + m = mapnik.Map(256,256) + mapnik.load_map(m,'../data/good_maps/agg_poly_gamma_map.xml') + m.query_point(0,0,0) + + # invalid coords in general (do not intersect) + @raises(RuntimeError) + def test_map_query_throw5(): + m = mapnik.Map(256,256) + mapnik.load_map(m,'../data/good_maps/agg_poly_gamma_map.xml') + m.zoom_all() + m.query_point(0,9999999999999999,9999999999999999) + + # invalid coords for back projecting + @raises(RuntimeError) + def test_map_query_throw6(): + m = mapnik.Map(256,256) + mapnik.load_map(m,'../data/good_maps/merc2wgs84_reprojection.xml') + wgs84_bounds = mapnik.Box2d(-180,-90,180,90) + m.maximum_extent = wgs84_bounds + m.zoom_all() + m.query_point(0,-180,-90) + + def test_map_query_works1(): + m = mapnik.Map(256,256) + mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') + merc_bounds = mapnik.Box2d(-20037508.34,-20037508.34,20037508.34,20037508.34) + m.maximum_extent = merc_bounds + m.zoom_all() + fs = m.query_point(0,-11012435.5376, 4599674.6134) # somewhere in kansas + feat = fs.next() + eq_(feat.attributes['NAME_FORMA'],u'United States of America') + + def test_map_query_works2(): + m = mapnik.Map(256,256) + mapnik.load_map(m,'../data/good_maps/merc2wgs84_reprojection.xml') + wgs84_bounds = mapnik.Box2d(-179.999999975,-85.0511287776,179.999999975,85.0511287776) + m.maximum_extent = wgs84_bounds + # caution - will go square due to evil aspect_fix_mode backhandedness + m.zoom_all() + #mapnik.render_to_file(m,'works2.png') + # valid that aspec_fix_mode modified the bbox + eq_(m.envelope(),mapnik.Box2d(-179.999999975,-179.999999975,179.999999975,179.999999975)) + fs = m.query_point(0,-98.9264, 38.1432) # somewhere in kansas + feat = fs.next() + eq_(feat.attributes['NAME'],u'United States') + + def test_map_query_in_pixels_works1(): + m = mapnik.Map(256,256) + mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') + merc_bounds = mapnik.Box2d(-20037508.34,-20037508.34,20037508.34,20037508.34) + m.maximum_extent = merc_bounds + m.zoom_all() + fs = m.query_map_point(0,55,100) # somewhere in middle of us + feat = fs.next() + eq_(feat.attributes['NAME_FORMA'],u'United States of America') + + def test_map_query_in_pixels_works2(): + m = mapnik.Map(256,256) + mapnik.load_map(m,'../data/good_maps/merc2wgs84_reprojection.xml') + wgs84_bounds = mapnik.Box2d(-179.999999975,-85.0511287776,179.999999975,85.0511287776) + m.maximum_extent = wgs84_bounds + # caution - will go square due to evil aspect_fix_mode backhandedness + m.zoom_all() + # valid that aspec_fix_mode modified the bbox + eq_(m.envelope(),mapnik.Box2d(-179.999999975,-179.999999975,179.999999975,179.999999975)) + fs = m.query_map_point(0,55,100) # somewhere in middle of us + feat = fs.next() + eq_(feat.attributes['NAME'],u'United States') if __name__ == "__main__": setup() diff --git a/tests/python_tests/reprojection_test.py b/tests/python_tests/reprojection_test.py index 505eeba6b..c2ed10b25 100644 --- a/tests/python_tests/reprojection_test.py +++ b/tests/python_tests/reprojection_test.py @@ -9,79 +9,80 @@ def setup(): # from another directory we need to chdir() os.chdir(execution_path('.')) -@raises(RuntimeError) -def test_zoom_all_will_fail(): - m = mapnik.Map(512,512) - mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') - m.zoom_all() - -def test_zoom_all_will_work_with_max_extent(): - m = mapnik.Map(512,512) - mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') - merc_bounds = mapnik.Box2d(-20037508.34,-20037508.34,20037508.34,20037508.34) - m.maximum_extent = merc_bounds - m.zoom_all() - eq_(m.envelope(),merc_bounds) - - m = mapnik.Map(512,512) - mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') - merc_bounds = mapnik.Box2d(-20037508.34,-20037508.34,20037508.34,20037508.34) - m.zoom_to_box(merc_bounds) - eq_(m.envelope(),merc_bounds) +if 'shape' in mapnik.DatasourceCache.instance().plugin_names(): + @raises(RuntimeError) + def test_zoom_all_will_fail(): + m = mapnik.Map(512,512) + mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') + m.zoom_all() + def test_zoom_all_will_work_with_max_extent(): + m = mapnik.Map(512,512) + mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') + merc_bounds = mapnik.Box2d(-20037508.34,-20037508.34,20037508.34,20037508.34) + m.maximum_extent = merc_bounds + m.zoom_all() + eq_(m.envelope(),merc_bounds) -def test_visual_zoom_all_rendering1(): - m = mapnik.Map(512,512) - mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') - merc_bounds = mapnik.Box2d(-20037508.34,-20037508.34,20037508.34,20037508.34) - m.maximum_extent = merc_bounds - m.zoom_all() - im = mapnik.Image(512,512) - mapnik.render(m,im) - actual = '/tmp/mapnik-wgs842merc-reprojection-render.png' - expected = 'images/support/mapnik-wgs842merc-reprojection-render.png' - im.save(actual) - expected_im = mapnik.Image.open(expected) - eq_(im.tostring(),expected_im.tostring(), 'failed comparing actual (%s) and expected (%s)' % (actual,'tests/python_tests/'+ expected)) - -def test_visual_zoom_all_rendering2(): - m = mapnik.Map(512,512) - mapnik.load_map(m,'../data/good_maps/merc2wgs84_reprojection.xml') - m.zoom_all() - im = mapnik.Image(512,512) - mapnik.render(m,im) - actual = '/tmp/mapnik-merc2wgs84-reprojection-render.png' - expected = 'images/support/mapnik-merc2wgs84-reprojection-render.png' - im.save(actual) - expected_im = mapnik.Image.open(expected) - eq_(im.tostring(),expected_im.tostring(), 'failed comparing actual (%s) and expected (%s)' % (actual,'tests/python_tests/'+ expected)) - -# maximum-extent read from map.xml -def test_visual_zoom_all_rendering3(): - m = mapnik.Map(512,512) - mapnik.load_map(m,'../data/good_maps/bounds_clipping.xml') - m.zoom_all() - im = mapnik.Image(512,512) - mapnik.render(m,im) - actual = '/tmp/mapnik-merc2merc-reprojection-render1.png' - expected = 'images/support/mapnik-merc2merc-reprojection-render1.png' - im.save(actual) - expected_im = mapnik.Image.open(expected) - eq_(im.tostring(),expected_im.tostring(), 'failed comparing actual (%s) and expected (%s)' % (actual,'tests/python_tests/'+ expected)) - -# no maximum-extent -def test_visual_zoom_all_rendering4(): - m = mapnik.Map(512,512) - mapnik.load_map(m,'../data/good_maps/bounds_clipping.xml') - m.maximum_extent = None - m.zoom_all() - im = mapnik.Image(512,512) - mapnik.render(m,im) - actual = '/tmp/mapnik-merc2merc-reprojection-render2.png' - expected = 'images/support/mapnik-merc2merc-reprojection-render2.png' - im.save(actual) - expected_im = mapnik.Image.open(expected) - eq_(im.tostring(),expected_im.tostring(), 'failed comparing actual (%s) and expected (%s)' % (actual,'tests/python_tests/'+ expected)) + m = mapnik.Map(512,512) + mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') + merc_bounds = mapnik.Box2d(-20037508.34,-20037508.34,20037508.34,20037508.34) + m.zoom_to_box(merc_bounds) + eq_(m.envelope(),merc_bounds) + + + def test_visual_zoom_all_rendering1(): + m = mapnik.Map(512,512) + mapnik.load_map(m,'../data/good_maps/wgs842merc_reprojection.xml') + merc_bounds = mapnik.Box2d(-20037508.34,-20037508.34,20037508.34,20037508.34) + m.maximum_extent = merc_bounds + m.zoom_all() + im = mapnik.Image(512,512) + mapnik.render(m,im) + actual = '/tmp/mapnik-wgs842merc-reprojection-render.png' + expected = 'images/support/mapnik-wgs842merc-reprojection-render.png' + im.save(actual) + expected_im = mapnik.Image.open(expected) + eq_(im.tostring(),expected_im.tostring(), 'failed comparing actual (%s) and expected (%s)' % (actual,'tests/python_tests/'+ expected)) + + def test_visual_zoom_all_rendering2(): + m = mapnik.Map(512,512) + mapnik.load_map(m,'../data/good_maps/merc2wgs84_reprojection.xml') + m.zoom_all() + im = mapnik.Image(512,512) + mapnik.render(m,im) + actual = '/tmp/mapnik-merc2wgs84-reprojection-render.png' + expected = 'images/support/mapnik-merc2wgs84-reprojection-render.png' + im.save(actual) + expected_im = mapnik.Image.open(expected) + eq_(im.tostring(),expected_im.tostring(), 'failed comparing actual (%s) and expected (%s)' % (actual,'tests/python_tests/'+ expected)) + + # maximum-extent read from map.xml + def test_visual_zoom_all_rendering3(): + m = mapnik.Map(512,512) + mapnik.load_map(m,'../data/good_maps/bounds_clipping.xml') + m.zoom_all() + im = mapnik.Image(512,512) + mapnik.render(m,im) + actual = '/tmp/mapnik-merc2merc-reprojection-render1.png' + expected = 'images/support/mapnik-merc2merc-reprojection-render1.png' + im.save(actual) + expected_im = mapnik.Image.open(expected) + eq_(im.tostring(),expected_im.tostring(), 'failed comparing actual (%s) and expected (%s)' % (actual,'tests/python_tests/'+ expected)) + + # no maximum-extent + def test_visual_zoom_all_rendering4(): + m = mapnik.Map(512,512) + mapnik.load_map(m,'../data/good_maps/bounds_clipping.xml') + m.maximum_extent = None + m.zoom_all() + im = mapnik.Image(512,512) + mapnik.render(m,im) + actual = '/tmp/mapnik-merc2merc-reprojection-render2.png' + expected = 'images/support/mapnik-merc2merc-reprojection-render2.png' + im.save(actual) + expected_im = mapnik.Image.open(expected) + eq_(im.tostring(),expected_im.tostring(), 'failed comparing actual (%s) and expected (%s)' % (actual,'tests/python_tests/'+ expected)) if __name__ == "__main__": setup()