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
|
assert_raise ActionController::UrlGenerationError do
|
||||||
get type
|
get type
|
||||||
end
|
end
|
||||||
|
|
||||||
assert_raise ActionController::UrlGenerationError do
|
assert_raise ActionController::UrlGenerationError do
|
||||||
get type, {:id => -10} # we won't have an id that's negative
|
get type, {:id => -10} # we won't have an id that's negative
|
||||||
end
|
end
|
||||||
|
|
||||||
get type, {:id => id}
|
get type, {:id => id}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
assert_template template
|
assert_template template
|
||||||
|
assert_template :layout => "map"
|
||||||
|
|
||||||
|
xhr :get, type, {:id => id}
|
||||||
|
assert_response :success
|
||||||
|
assert_template template
|
||||||
|
assert_template :layout => "xhr"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1725,7 +1725,34 @@ EOF
|
||||||
def test_list
|
def test_list
|
||||||
get :list, {:format => "html"}
|
get :list, {:format => "html"}
|
||||||
assert_response :success
|
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
|
assert_select "h2", :text => "Changesets", :count => 1
|
||||||
|
|
||||||
get :list, {:format => "html", :list => '1', :bbox => '-180,-90,90,180'}
|
get :list, {:format => "html", :list => '1', :bbox => '-180,-90,90,180'}
|
||||||
|
@ -1751,7 +1778,7 @@ EOF
|
||||||
user = users(:public_user)
|
user = users(:public_user)
|
||||||
get :list, {:format => "html", :display_name => user.display_name}
|
get :list, {:format => "html", :display_name => user.display_name}
|
||||||
assert_response :success
|
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
|
## FIXME need to add more checks to see which if edits are actually shown if your data is public
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -1785,7 +1812,7 @@ EOF
|
||||||
user = users(:public_user)
|
user = users(:public_user)
|
||||||
get :feed, {:format => "atom", :display_name => user.display_name}
|
get :feed, {:format => "atom", :display_name => user.display_name}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
assert_template "changeset/list"
|
assert_template "list"
|
||||||
assert_equal "application/atom+xml", response.content_type
|
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
|
## FIXME need to add more checks to see which if edits are actually shown if your data is public
|
||||||
end
|
end
|
||||||
|
|
|
@ -54,12 +54,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'+50.06773 +14.37742',
|
'+50.06773 +14.37742',
|
||||||
'+50.06773, +14.37742'
|
'+50.06773, +14.37742'
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, 50.06773, 14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -72,12 +67,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'50.06773N 14.37742E',
|
'50.06773N 14.37742E',
|
||||||
'50.06773N, 14.37742E'
|
'50.06773N, 14.37742E'
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, 50.06773, 14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -90,12 +80,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'50.06773N 14.37742W',
|
'50.06773N 14.37742W',
|
||||||
'50.06773N, 14.37742W'
|
'50.06773N, 14.37742W'
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, 50.06773, -14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -108,12 +93,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'50.06773S 14.37742E',
|
'50.06773S 14.37742E',
|
||||||
'50.06773S, 14.37742E'
|
'50.06773S, 14.37742E'
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, -50.06773, 14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -126,12 +106,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'50.06773S 14.37742W',
|
'50.06773S 14.37742W',
|
||||||
'50.06773S, 14.37742W'
|
'50.06773S, 14.37742W'
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, -50.06773, -14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -147,12 +122,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'N50 4.064 E14 22.645',
|
'N50 4.064 E14 22.645',
|
||||||
"50° 04.064' N, 014° 22.645' E"
|
"50° 04.064' N, 014° 22.645' E"
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, 50.06773, 14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -168,12 +138,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'N50 4.064 W14 22.645',
|
'N50 4.064 W14 22.645',
|
||||||
"50° 04.064' N, 014° 22.645' W"
|
"50° 04.064' N, 014° 22.645' W"
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, 50.06773, -14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -189,12 +154,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'S50 4.064 E14 22.645',
|
'S50 4.064 E14 22.645',
|
||||||
"50° 04.064' S, 014° 22.645' E"
|
"50° 04.064' S, 014° 22.645' E"
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, -50.06773, 14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -230,12 +190,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'N50 4 03.828, E14 22 38.712',
|
'N50 4 03.828, E14 22 38.712',
|
||||||
"50°4'3.828\"N 14°22'38.712\"E"
|
"50°4'3.828\"N 14°22'38.712\"E"
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, 50.06773, 14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -250,12 +205,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'N50 4 03.828, W14 22 38.712',
|
'N50 4 03.828, W14 22 38.712',
|
||||||
"50°4'3.828\"N 14°22'38.712\"W"
|
"50°4'3.828\"N 14°22'38.712\"W"
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, 50.06773, -14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -270,12 +220,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'S50 4 03.828, E14 22 38.712',
|
'S50 4 03.828, E14 22 38.712',
|
||||||
"50°4'3.828\"S 14°22'38.712\"E"
|
"50°4'3.828\"S 14°22'38.712\"E"
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, -50.06773, 14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -290,12 +235,7 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'S50 4 03.828, W14 22 38.712',
|
'S50 4 03.828, W14 22 38.712',
|
||||||
"50°4'3.828\"S 14°22'38.712\"W"
|
"50°4'3.828\"S 14°22'38.712\"W"
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, :query => code
|
latlon_check code, -50.06773, -14.37742
|
||||||
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]
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -324,25 +264,54 @@ class GeocoderControllerTest < ActionController::TestCase
|
||||||
'CR2 6XH',
|
'CR2 6XH',
|
||||||
'DN55 1PT'
|
'DN55 1PT'
|
||||||
].each do |code|
|
].each do |code|
|
||||||
post :search, query: code
|
search_check code, ['uk_postcode', 'osm_nominatim']
|
||||||
assert_response :success
|
|
||||||
assert_equal ['uk_postcode', 'osm_nominatim'], assigns(:sources)
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
# Test identification of Canadian postcodes
|
# Test identification of Canadian postcodes
|
||||||
def test_identify_ca_postcode
|
def test_identify_ca_postcode
|
||||||
post :search, query: 'A1B 2C3'
|
search_check 'A1B 2C3', ['ca_postcode', 'osm_nominatim']
|
||||||
assert_response :success
|
|
||||||
assert_equal ['ca_postcode', 'osm_nominatim'], assigns(:sources)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
# Test identification fall through to the default case
|
# Test identification fall through to the default case
|
||||||
def test_identify_default
|
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_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
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue