Merge remote-tracking branch 'upstream/pull/5516'

This commit is contained in:
Tom Hughes 2025-01-19 14:58:26 +00:00
commit fdb3a7a102
2 changed files with 13 additions and 13 deletions

View file

@ -64,11 +64,11 @@ OpenStreetMap::Application.routes.draw do
get "relations" => "relations#index" get "relations" => "relations#index"
get "map" => "map#index" get "map" => "map#index"
get "trackpoints" => "tracepoints#index"
end end
namespace :api, :path => "api/0.6" do namespace :api, :path => "api/0.6" do
resources :tracepoints, :path => "trackpoints", :only => :index
resources :users, :only => :index resources :users, :only => :index
resources :users, :path => "user", :id => /\d+/, :only => :show resources :users, :path => "user", :id => /\d+/, :only => :show
resources :user_traces, :path => "user/gpx_files", :module => :users, :controller => :traces, :only => :index resources :user_traces, :path => "user/gpx_files", :module => :users, :controller => :traces, :only => :index

View file

@ -34,7 +34,7 @@ module Api
maxlon = point.longitude + 0.001 maxlon = point.longitude + 0.001
maxlat = point.latitude + 0.001 maxlat = point.latitude + 0.001
bbox = "#{minlon},#{minlat},#{maxlon},#{maxlat}" bbox = "#{minlon},#{minlat},#{maxlon},#{maxlat}"
get trackpoints_path(:bbox => bbox) get api_tracepoints_path(:bbox => bbox)
assert_response :success assert_response :success
assert_select "gpx[version='1.0'][creator='OpenStreetMap.org']", :count => 1 do assert_select "gpx[version='1.0'][creator='OpenStreetMap.org']", :count => 1 do
assert_select "trk" do assert_select "trk" do
@ -56,7 +56,7 @@ module Api
maxlon = point.longitude + 0.002 maxlon = point.longitude + 0.002
maxlat = point.latitude + 0.002 maxlat = point.latitude + 0.002
bbox = "#{minlon},#{minlat},#{maxlon},#{maxlat}" bbox = "#{minlon},#{minlat},#{maxlon},#{maxlat}"
get trackpoints_path(:bbox => bbox) get api_tracepoints_path(:bbox => bbox)
assert_response :success assert_response :success
assert_select "gpx[version='1.0'][creator='OpenStreetMap.org']", :count => 1 do assert_select "gpx[version='1.0'][creator='OpenStreetMap.org']", :count => 1 do
assert_select "trk", :count => 1 do assert_select "trk", :count => 1 do
@ -83,7 +83,7 @@ module Api
maxlon = point.longitude + 0.002 maxlon = point.longitude + 0.002
maxlat = point.latitude + 0.002 maxlat = point.latitude + 0.002
bbox = "#{minlon},#{minlat},#{maxlon},#{maxlat}" bbox = "#{minlon},#{minlat},#{maxlon},#{maxlat}"
get trackpoints_path(:bbox => bbox) get api_tracepoints_path(:bbox => bbox)
assert_response :success assert_response :success
assert_select "gpx[version='1.0'][creator='OpenStreetMap.org']", :count => 1 do assert_select "gpx[version='1.0'][creator='OpenStreetMap.org']", :count => 1 do
assert_select "trk", :count => 1 do assert_select "trk", :count => 1 do
@ -100,26 +100,26 @@ module Api
end end
def test_index_without_bbox def test_index_without_bbox
get trackpoints_path get api_tracepoints_path
assert_response :bad_request assert_response :bad_request
assert_equal "The parameter bbox is required", @response.body, "A bbox param was expected" assert_equal "The parameter bbox is required", @response.body, "A bbox param was expected"
end end
def test_traces_page_less_than_zero def test_traces_page_less_than_zero
-10.upto(-1) do |i| -10.upto(-1) do |i|
get trackpoints_path(:page => i, :bbox => "-0.1,-0.1,0.1,0.1") get api_tracepoints_path(:page => i, :bbox => "-0.1,-0.1,0.1,0.1")
assert_response :bad_request assert_response :bad_request
assert_equal "Page number must be greater than or equal to 0", @response.body, "The page number was #{i}" assert_equal "Page number must be greater than or equal to 0", @response.body, "The page number was #{i}"
end end
0.upto(10) do |i| 0.upto(10) do |i|
get trackpoints_path(:page => i, :bbox => "-0.1,-0.1,0.1,0.1") get api_tracepoints_path(:page => i, :bbox => "-0.1,-0.1,0.1,0.1")
assert_response :success, "The page number was #{i} and should have been accepted" assert_response :success, "The page number was #{i} and should have been accepted"
end end
end end
def test_bbox_too_big def test_bbox_too_big
@badbigbbox.each do |bbox| @badbigbbox.each do |bbox|
get trackpoints_path(:bbox => bbox) get api_tracepoints_path(:bbox => bbox)
assert_response :bad_request, "The bbox:#{bbox} was expected to be too big" assert_response :bad_request, "The bbox:#{bbox} was expected to be too big"
assert_equal "The maximum bbox size is #{Settings.max_request_area}, and your request was too large. Either request a smaller area, or use planet.osm", @response.body, "bbox: #{bbox}" assert_equal "The maximum bbox size is #{Settings.max_request_area}, and your request was too large. Either request a smaller area, or use planet.osm", @response.body, "bbox: #{bbox}"
end end
@ -127,7 +127,7 @@ module Api
def test_bbox_malformed def test_bbox_malformed
@badmalformedbbox.each do |bbox| @badmalformedbbox.each do |bbox|
get trackpoints_path(:bbox => bbox) get api_tracepoints_path(:bbox => bbox)
assert_response :bad_request, "The bbox:#{bbox} was expected to be malformed" assert_response :bad_request, "The bbox:#{bbox} was expected to be malformed"
assert_equal "The parameter bbox must be of the form min_lon,min_lat,max_lon,max_lat", @response.body, "bbox: #{bbox}" assert_equal "The parameter bbox must be of the form min_lon,min_lat,max_lon,max_lat", @response.body, "bbox: #{bbox}"
end end
@ -135,7 +135,7 @@ module Api
def test_bbox_lon_mixedup def test_bbox_lon_mixedup
@badlonmixedbbox.each do |bbox| @badlonmixedbbox.each do |bbox|
get trackpoints_path(:bbox => bbox) get api_tracepoints_path(:bbox => bbox)
assert_response :bad_request, "The bbox:#{bbox} was expected to have the longitude mixed up" assert_response :bad_request, "The bbox:#{bbox} was expected to have the longitude mixed up"
assert_equal "The minimum longitude must be less than the maximum longitude, but it wasn't", @response.body, "bbox: #{bbox}" assert_equal "The minimum longitude must be less than the maximum longitude, but it wasn't", @response.body, "bbox: #{bbox}"
end end
@ -143,7 +143,7 @@ module Api
def test_bbox_lat_mixedup def test_bbox_lat_mixedup
@badlatmixedbbox.each do |bbox| @badlatmixedbbox.each do |bbox|
get trackpoints_path(:bbox => bbox) get api_tracepoints_path(:bbox => bbox)
assert_response :bad_request, "The bbox:#{bbox} was expected to have the latitude mixed up" assert_response :bad_request, "The bbox:#{bbox} was expected to have the latitude mixed up"
assert_equal "The minimum latitude must be less than the maximum latitude, but it wasn't", @response.body, "bbox: #{bbox}" assert_equal "The minimum latitude must be less than the maximum latitude, but it wasn't", @response.body, "bbox: #{bbox}"
end end
@ -153,7 +153,7 @@ module Api
def test_lat_lon_xml_format def test_lat_lon_xml_format
create(:tracepoint, :latitude => (0.00004 * GeoRecord::SCALE).to_i, :longitude => (0.00008 * GeoRecord::SCALE).to_i) create(:tracepoint, :latitude => (0.00004 * GeoRecord::SCALE).to_i, :longitude => (0.00008 * GeoRecord::SCALE).to_i)
get trackpoints_path(:bbox => "0,0,0.1,0.1") get api_tracepoints_path(:bbox => "0,0,0.1,0.1")
assert_match(/lat="0.0000400"/, response.body) assert_match(/lat="0.0000400"/, response.body)
assert_match(/lon="0.0000800"/, response.body) assert_match(/lon="0.0000800"/, response.body)
end end