Disable notes search until it can be made scalable
This commit is contained in:
parent
0c3c2e01bf
commit
1e2b99a75b
2 changed files with 59 additions and 46 deletions
|
@ -260,6 +260,11 @@ class NotesController < ApplicationController
|
|||
# Find the notes we want to return
|
||||
@notes = @notes.order("updated_at DESC").limit(result_limit).preload(:comments)
|
||||
|
||||
# Disable notes search until we can make it scalable
|
||||
response.headers['Error'] = "Searching of notes is currently unavailable"
|
||||
render :text => "", :status => :service_unavailable
|
||||
return false
|
||||
|
||||
# Render the result
|
||||
respond_to do |format|
|
||||
format.rss { render :action => :index }
|
||||
|
|
|
@ -638,68 +638,76 @@ class NotesControllerTest < ActionController::TestCase
|
|||
|
||||
def test_search_success
|
||||
get :search, {:q => 'note 1', :format => 'xml'}
|
||||
assert_response :success
|
||||
assert_equal "application/xml", @response.content_type
|
||||
assert_select "osm", :count => 1 do
|
||||
assert_select "note", :count => 1
|
||||
end
|
||||
assert_response :service_unavailable
|
||||
# assert_response :success
|
||||
# assert_equal "application/xml", @response.content_type
|
||||
# assert_select "osm", :count => 1 do
|
||||
# assert_select "note", :count => 1
|
||||
# end
|
||||
|
||||
get :search, {:q => 'note 1', :format => 'json'}
|
||||
assert_response :success
|
||||
assert_equal "application/json", @response.content_type
|
||||
js = ActiveSupport::JSON.decode(@response.body)
|
||||
assert_not_nil js
|
||||
assert_equal "FeatureCollection", js["type"]
|
||||
assert_equal 1, js["features"].count
|
||||
assert_response :service_unavailable
|
||||
# assert_response :success
|
||||
# assert_equal "application/json", @response.content_type
|
||||
# js = ActiveSupport::JSON.decode(@response.body)
|
||||
# assert_not_nil js
|
||||
# assert_equal "FeatureCollection", js["type"]
|
||||
# assert_equal 1, js["features"].count
|
||||
|
||||
get :search, {:q => 'note 1', :format => 'rss'}
|
||||
assert_response :success
|
||||
assert_equal "application/rss+xml", @response.content_type
|
||||
assert_select "rss", :count => 1 do
|
||||
assert_select "channel", :count => 1 do
|
||||
assert_select "item", :count => 1
|
||||
end
|
||||
end
|
||||
assert_response :service_unavailable
|
||||
# assert_response :success
|
||||
# assert_equal "application/rss+xml", @response.content_type
|
||||
# assert_select "rss", :count => 1 do
|
||||
# assert_select "channel", :count => 1 do
|
||||
# assert_select "item", :count => 1
|
||||
# end
|
||||
# end
|
||||
|
||||
get :search, {:q => 'note 1', :format => 'gpx'}
|
||||
assert_response :success
|
||||
assert_equal "application/gpx+xml", @response.content_type
|
||||
assert_select "gpx", :count => 1 do
|
||||
assert_select "wpt", :count => 1
|
||||
end
|
||||
assert_response :service_unavailable
|
||||
# assert_response :success
|
||||
# assert_equal "application/gpx+xml", @response.content_type
|
||||
# assert_select "gpx", :count => 1 do
|
||||
# assert_select "wpt", :count => 1
|
||||
# end
|
||||
end
|
||||
|
||||
def test_search_no_match
|
||||
get :search, {:q => 'no match', :format => 'xml'}
|
||||
assert_response :success
|
||||
assert_equal "application/xml", @response.content_type
|
||||
assert_select "osm", :count => 1 do
|
||||
assert_select "note", :count => 0
|
||||
end
|
||||
assert_response :service_unavailable
|
||||
# assert_response :success
|
||||
# assert_equal "application/xml", @response.content_type
|
||||
# assert_select "osm", :count => 1 do
|
||||
# assert_select "note", :count => 0
|
||||
# end
|
||||
|
||||
get :search, {:q => 'no match', :format => 'json'}
|
||||
assert_response :success
|
||||
assert_equal "application/json", @response.content_type
|
||||
js = ActiveSupport::JSON.decode(@response.body)
|
||||
assert_not_nil js
|
||||
assert_equal "FeatureCollection", js["type"]
|
||||
assert_equal 0, js["features"].count
|
||||
assert_response :service_unavailable
|
||||
# assert_response :success
|
||||
# assert_equal "application/json", @response.content_type
|
||||
# js = ActiveSupport::JSON.decode(@response.body)
|
||||
# assert_not_nil js
|
||||
# assert_equal "FeatureCollection", js["type"]
|
||||
# assert_equal 0, js["features"].count
|
||||
|
||||
get :search, {:q => 'no match', :format => 'rss'}
|
||||
assert_response :success
|
||||
assert_equal "application/rss+xml", @response.content_type
|
||||
assert_select "rss", :count => 1 do
|
||||
assert_select "channel", :count => 1 do
|
||||
assert_select "item", :count => 0
|
||||
end
|
||||
end
|
||||
assert_response :service_unavailable
|
||||
# assert_response :success
|
||||
# assert_equal "application/rss+xml", @response.content_type
|
||||
# assert_select "rss", :count => 1 do
|
||||
# assert_select "channel", :count => 1 do
|
||||
# assert_select "item", :count => 0
|
||||
# end
|
||||
# end
|
||||
|
||||
get :search, {:q => 'no match', :format => 'gpx'}
|
||||
assert_response :success
|
||||
assert_equal "application/gpx+xml", @response.content_type
|
||||
assert_select "gpx", :count => 1 do
|
||||
assert_select "wpt", :count => 0
|
||||
end
|
||||
assert_response :service_unavailable
|
||||
# assert_response :success
|
||||
# assert_equal "application/gpx+xml", @response.content_type
|
||||
# assert_select "gpx", :count => 1 do
|
||||
# assert_select "wpt", :count => 0
|
||||
# end
|
||||
end
|
||||
|
||||
def test_search_bad_params
|
||||
|
|
Loading…
Add table
Reference in a new issue