]> git.openstreetmap.org Git - rails.git/blob - test/controllers/export_controller_test.rb
Merge remote-tracking branch 'upstream/pull/4992'
[rails.git] / test / controllers / export_controller_test.rb
1 require "test_helper"
2
3 class ExportControllerTest < ActionDispatch::IntegrationTest
4   ##
5   # test all routes which lead to this controller
6   def test_routes
7     assert_routing(
8       { :path => "/export/finish", :method => :post },
9       { :controller => "export", :action => "finish" }
10     )
11     assert_routing(
12       { :path => "/export/embed", :method => :get },
13       { :controller => "export", :action => "embed" }
14     )
15   end
16
17   ###
18   # test the finish action for raw OSM data
19   def test_finish_osm
20     post export_finish_path(:minlon => 0, :minlat => 50, :maxlon => 1, :maxlat => 51, :format => "osm")
21     assert_redirected_to "controller" => "api/map", "action" => "index", "bbox" => "0.0,50.0,1.0,51.0"
22   end
23
24   ###
25   # test the finish action for mapnik images
26   def test_finish_mapnik
27     post export_finish_path(:minlon => 0, :minlat => 50, :maxlon => 1, :maxlat => 51, :format => "mapnik", :mapnik_format => "test", :mapnik_scale => "12")
28     assert_redirected_to "https://render.openstreetmap.org/cgi-bin/export?bbox=0.0,50.0,1.0,51.0&scale=12&format=test"
29   end
30
31   ###
32   # test the finish action for cyclemap images
33   def test_finish_cyclemap
34     post export_finish_path(:minlon => 0, :minlat => 50, :maxlon => 1, :maxlat => 51, :format => "cyclemap", :mapnik_scale => 12, :mapnik_format => "png", :zoom => 17, :lat => 1, :lon => 2, :width => 400, :height => 300)
35     assert_redirected_to "https://tile.thunderforest.com/static/cycle/2,1,17/400x300.png?apikey=#{Settings.thunderforest_key}"
36   end
37
38   ###
39   # test the finish action for transport images
40   def test_finish_transport
41     post export_finish_path(:minlon => 0, :minlat => 50, :maxlon => 1, :maxlat => 51, :format => "transportmap", :mapnik_scale => 12, :mapnik_format => "png", :zoom => 17, :lat => 1, :lon => 2, :width => 400, :height => 300)
42     assert_redirected_to "https://tile.thunderforest.com/static/transport/2,1,17/400x300.png?apikey=#{Settings.thunderforest_key}"
43   end
44
45   ##
46   # test the embed action
47   def test_embed
48     get export_embed_path
49     assert_response :success
50     assert_template "export/embed"
51   end
52 end