X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/6e3d183c40a6b5c0d01352531e00d577e314c98c..5c877e0fa40bb0e62a35ad264fceb67aac93befb:/test/controllers/search_controller_test.rb diff --git a/test/controllers/search_controller_test.rb b/test/controllers/search_controller_test.rb index d3300452b..49a70f1b0 100644 --- a/test/controllers/search_controller_test.rb +++ b/test/controllers/search_controller_test.rb @@ -1,8 +1,6 @@ require "test_helper" class SearchControllerTest < ActionController::TestCase - api_fixtures - ## # test all routes which lead to this controller def test_routes @@ -27,15 +25,15 @@ class SearchControllerTest < ActionController::TestCase ## # test searching nodes def test_search_nodes - get :search_nodes, :type => "test" + get :search_nodes, :params => { :type => "test" } assert_response :service_unavailable assert_equal "Searching of nodes is currently unavailable", response.headers["Error"] - get :search_nodes, :type => "test", :value => "yes" + get :search_nodes, :params => { :type => "test", :value => "yes" } assert_response :service_unavailable assert_equal "Searching of nodes is currently unavailable", response.headers["Error"] - get :search_nodes, :name => "Test Node" + get :search_nodes, :params => { :name => "Test Node" } assert_response :service_unavailable assert_equal "Searching of nodes is currently unavailable", response.headers["Error"] end @@ -43,15 +41,24 @@ class SearchControllerTest < ActionController::TestCase ## # test searching ways def test_search_ways - get :search_ways, :type => "test" + first_way = create(:way_with_nodes, :nodes_count => 2) + deleted_way = create(:way_with_nodes, :deleted, :nodes_count => 2) + third_way = create(:way_with_nodes, :nodes_count => 2) + + [first_way, deleted_way, third_way].each do |way| + create(:way_tag, :way => way, :k => "test", :v => "yes") + end + create(:way_tag, :way => third_way, :k => "name", :v => "Test Way") + + get :search_ways, :params => { :type => "test" } assert_response :service_unavailable assert_equal "Searching for a key without value is currently unavailable", response.headers["Error"] - get :search_ways, :type => "test", :value => "yes" + get :search_ways, :params => { :type => "test", :value => "yes" } assert_response :success assert_select "way", 3 - get :search_ways, :name => "Test Way" + get :search_ways, :params => { :name => "Test Way" } assert_response :success assert_select "way", 1 end @@ -59,15 +66,24 @@ class SearchControllerTest < ActionController::TestCase ## # test searching relations def test_search_relations - get :search_relations, :type => "test" + first_relation = create(:relation) + deleted_relation = create(:relation) + third_relation = create(:relation) + + [first_relation, deleted_relation, third_relation].each do |relation| + create(:relation_tag, :relation => relation, :k => "test", :v => "yes") + end + create(:relation_tag, :relation => third_relation, :k => "name", :v => "Test Relation") + + get :search_relations, :params => { :type => "test" } assert_response :service_unavailable assert_equal "Searching for a key without value is currently unavailable", response.headers["Error"] - get :search_relations, :type => "test", :value => "yes" + get :search_relations, :params => { :type => "test", :value => "yes" } assert_response :success assert_select "relation", 3 - get :search_relations, :name => "Test Relation" + get :search_relations, :params => { :name => "Test Relation" } assert_response :success assert_select "relation", 1 end @@ -75,15 +91,15 @@ class SearchControllerTest < ActionController::TestCase ## # test searching nodes, ways and relations def test_search_all - get :search_all, :type => "test" + get :search_all, :params => { :type => "test" } assert_response :service_unavailable assert_equal "Searching of nodes is currently unavailable", response.headers["Error"] - get :search_all, :type => "test", :value => "yes" + get :search_all, :params => { :type => "test", :value => "yes" } assert_response :service_unavailable assert_equal "Searching of nodes is currently unavailable", response.headers["Error"] - get :search_all, :name => "Test" + get :search_all, :params => { :name => "Test" } assert_response :service_unavailable assert_equal "Searching of nodes is currently unavailable", response.headers["Error"] end