Test XHR rendering of pages which can load in the sidebar
This commit is contained in:
parent
04ad0f6251
commit
3a6dc176f8
3 changed files with 211 additions and 207 deletions
|
@ -131,11 +131,19 @@ private
|
|||
assert_raise ActionController::UrlGenerationError do
|
||||
get type
|
||||
end
|
||||
|
||||
assert_raise ActionController::UrlGenerationError do
|
||||
get type, {:id => -10} # we won't have an id that's negative
|
||||
end
|
||||
|
||||
get type, {:id => id}
|
||||
assert_response :success
|
||||
assert_template template
|
||||
assert_template :layout => "map"
|
||||
|
||||
xhr :get, type, {:id => id}
|
||||
assert_response :success
|
||||
assert_template template
|
||||
assert_template :layout => "xhr"
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1725,7 +1725,34 @@ EOF
|
|||
def test_list
|
||||
get :list, {:format => "html"}
|
||||
assert_response :success
|
||||
assert_template "changeset/history"
|
||||
assert_template "history"
|
||||
assert_template :layout => "map"
|
||||
assert_select "h2", :text => "Changesets", :count => 1
|
||||
|
||||
get :list, {:format => "html", :list => '1', :bbox => '-180,-90,90,180'}
|
||||
assert_response :success
|
||||
assert_template "list"
|
||||
|
||||
changesets = Changeset.
|
||||
where("num_changes > 0 and min_lon is not null").
|
||||
order(:created_at => :desc).
|
||||
limit(20)
|
||||
assert changesets.size <= 20
|
||||
|
||||
# Now check that all 20 (or however many were returned) changesets are in the html
|
||||
assert_select "li", :count => changesets.size
|
||||
changesets.each do |changeset|
|
||||
# FIXME this test needs rewriting - test for table contents
|
||||
end
|
||||
end
|
||||
|
||||
##
|
||||
# This should display the last 20 changesets closed.
|
||||
def test_list_xhr
|
||||
xhr :get, :list, {:format => "html"}
|
||||
assert_response :success
|
||||
assert_template "history"
|
||||
assert_template :layout => "xhr"
|
||||
assert_select "h2", :text => "Changesets", :count => 1
|
||||
|
||||
get :list, {:format => "html", :list => '1', :bbox => '-180,-90,90,180'}
|
||||
|
@ -1751,7 +1778,7 @@ EOF
|
|||
user = users(:public_user)
|
||||
get :list, {:format => "html", :display_name => user.display_name}
|
||||
assert_response :success
|
||||
assert_template "changeset/history"
|
||||
assert_template "history"
|
||||
## FIXME need to add more checks to see which if edits are actually shown if your data is public
|
||||
end
|
||||
|
||||
|
@ -1785,7 +1812,7 @@ EOF
|
|||
user = users(:public_user)
|
||||
get :feed, {:format => "atom", :display_name => user.display_name}
|
||||
assert_response :success
|
||||
assert_template "changeset/list"
|
||||
assert_template "list"
|
||||
assert_equal "application/atom+xml", response.content_type
|
||||
## FIXME need to add more checks to see which if edits are actually shown if your data is public
|
||||
end
|
||||
|
|
|
@ -54,12 +54,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'+50.06773 +14.37742',
|
||||
'+50.06773, +14.37742'
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta 50.06773, @controller.params[:lat]
|
||||
assert_in_delta 14.37742, @controller.params[:lon]
|
||||
latlon_check code, 50.06773, 14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -72,12 +67,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'50.06773N 14.37742E',
|
||||
'50.06773N, 14.37742E'
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta 50.06773, @controller.params[:lat]
|
||||
assert_in_delta 14.37742, @controller.params[:lon]
|
||||
latlon_check code, 50.06773, 14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -90,12 +80,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'50.06773N 14.37742W',
|
||||
'50.06773N, 14.37742W'
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta 50.06773, @controller.params[:lat]
|
||||
assert_in_delta -14.37742, @controller.params[:lon]
|
||||
latlon_check code, 50.06773, -14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -108,12 +93,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'50.06773S 14.37742E',
|
||||
'50.06773S, 14.37742E'
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta -50.06773, @controller.params[:lat]
|
||||
assert_in_delta 14.37742, @controller.params[:lon]
|
||||
latlon_check code, -50.06773, 14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -126,12 +106,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'50.06773S 14.37742W',
|
||||
'50.06773S, 14.37742W'
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta -50.06773, @controller.params[:lat]
|
||||
assert_in_delta -14.37742, @controller.params[:lon]
|
||||
latlon_check code, -50.06773, -14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -147,12 +122,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'N50 4.064 E14 22.645',
|
||||
"50° 04.064' N, 014° 22.645' E"
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta 50.06773, @controller.params[:lat]
|
||||
assert_in_delta 14.37742, @controller.params[:lon]
|
||||
latlon_check code, 50.06773, 14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -168,12 +138,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'N50 4.064 W14 22.645',
|
||||
"50° 04.064' N, 014° 22.645' W"
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta 50.06773, @controller.params[:lat]
|
||||
assert_in_delta -14.37742, @controller.params[:lon]
|
||||
latlon_check code, 50.06773, -14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -189,12 +154,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'S50 4.064 E14 22.645',
|
||||
"50° 04.064' S, 014° 22.645' E"
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta -50.06773, @controller.params[:lat]
|
||||
assert_in_delta 14.37742, @controller.params[:lon]
|
||||
latlon_check code, -50.06773, 14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -230,12 +190,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'N50 4 03.828, E14 22 38.712',
|
||||
"50°4'3.828\"N 14°22'38.712\"E"
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta 50.06773, @controller.params[:lat]
|
||||
assert_in_delta 14.37742, @controller.params[:lon]
|
||||
latlon_check code, 50.06773, 14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -250,12 +205,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'N50 4 03.828, W14 22 38.712',
|
||||
"50°4'3.828\"N 14°22'38.712\"W"
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta 50.06773, @controller.params[:lat]
|
||||
assert_in_delta -14.37742, @controller.params[:lon]
|
||||
latlon_check code, 50.06773, -14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -270,12 +220,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'S50 4 03.828, E14 22 38.712',
|
||||
"50°4'3.828\"S 14°22'38.712\"E"
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta -50.06773, @controller.params[:lat]
|
||||
assert_in_delta 14.37742, @controller.params[:lon]
|
||||
latlon_check code, -50.06773, 14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -290,12 +235,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'S50 4 03.828, W14 22 38.712',
|
||||
"50°4'3.828\"S 14°22'38.712\"W"
|
||||
].each do |code|
|
||||
post :search, :query => code
|
||||
assert_response :success
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta -50.06773, @controller.params[:lat]
|
||||
assert_in_delta -14.37742, @controller.params[:lon]
|
||||
latlon_check code, -50.06773, -14.37742
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -324,25 +264,54 @@ class GeocoderControllerTest < ActionController::TestCase
|
|||
'CR2 6XH',
|
||||
'DN55 1PT'
|
||||
].each do |code|
|
||||
post :search, query: code
|
||||
assert_response :success
|
||||
assert_equal ['uk_postcode', 'osm_nominatim'], assigns(:sources)
|
||||
search_check code, ['uk_postcode', 'osm_nominatim']
|
||||
end
|
||||
end
|
||||
|
||||
##
|
||||
# Test identification of Canadian postcodes
|
||||
def test_identify_ca_postcode
|
||||
post :search, query: 'A1B 2C3'
|
||||
assert_response :success
|
||||
assert_equal ['ca_postcode', 'osm_nominatim'], assigns(:sources)
|
||||
search_check 'A1B 2C3', ['ca_postcode', 'osm_nominatim']
|
||||
end
|
||||
|
||||
##
|
||||
# Test identification fall through to the default case
|
||||
def test_identify_default
|
||||
post :search, query: 'foo bar baz'
|
||||
search_check 'foo bar baz', ['osm_nominatim']
|
||||
end
|
||||
|
||||
private
|
||||
def latlon_check(query, lat, lon)
|
||||
post :search, :query => query
|
||||
assert_response :success
|
||||
assert_equal ['osm_nominatim'], assigns(:sources)
|
||||
assert_template "search"
|
||||
assert_template :layout => "map"
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta lat, @controller.params[:lat]
|
||||
assert_in_delta lon, @controller.params[:lon]
|
||||
|
||||
xhr :post, :search, :query => query
|
||||
assert_response :success
|
||||
assert_template "search"
|
||||
assert_template :layout => "xhr"
|
||||
assert_equal ['latlon' ,'osm_nominatim_reverse', 'geonames_reverse'], assigns(:sources)
|
||||
assert_nil @controller.params[:query]
|
||||
assert_in_delta lat, @controller.params[:lat]
|
||||
assert_in_delta lon, @controller.params[:lon]
|
||||
end
|
||||
|
||||
def search_check(query, sources)
|
||||
post :search, :query => query
|
||||
assert_response :success
|
||||
assert_template "search"
|
||||
assert_template :layout => "map"
|
||||
assert_equal sources, assigns(:sources)
|
||||
|
||||
xhr :post, :search, :query => query
|
||||
assert_response :success
|
||||
assert_template "search"
|
||||
assert_template :layout => "xhr"
|
||||
assert_equal sources, assigns(:sources)
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue