X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/1da4cecaf6f8bdae527553e61165cc41fc07533b..2c67c079ac39cefd3b096524fc0b7364b0eb21d7:/test/functional/node_controller_test.rb diff --git a/test/functional/node_controller_test.rb b/test/functional/node_controller_test.rb index 3fc2d83f6..6903dd60b 100644 --- a/test/functional/node_controller_test.rb +++ b/test/functional/node_controller_test.rb @@ -3,6 +3,31 @@ require File.dirname(__FILE__) + '/../test_helper' class NodeControllerTest < ActionController::TestCase api_fixtures + ## + # test all routes which lead to this controller + def test_routes + assert_routing( + { :path => "/api/0.6/node/create", :method => :put }, + { :controller => "node", :action => "create" } + ) + assert_routing( + { :path => "/api/0.6/node/1", :method => :get }, + { :controller => "node", :action => "read", :id => "1" } + ) + assert_routing( + { :path => "/api/0.6/node/1", :method => :put }, + { :controller => "node", :action => "update", :id => "1" } + ) + assert_routing( + { :path => "/api/0.6/node/1", :method => :delete }, + { :controller => "node", :action => "delete", :id => "1" } + ) + assert_routing( + { :path => "/api/0.6/nodes", :method => :get }, + { :controller => "node", :action => "nodes" } + ) + end + def test_create # cannot read password from fixture as it is stored as MD5 digest ## First try with no auth @@ -101,7 +126,7 @@ class NodeControllerTest < ActionController::TestCase content("") put :create assert_response :bad_request, "node upload did not return bad_request status" - assert_equal ["NodeTag ", " v: is too long (maximum is 255 characters) (\"#{'x'*256}\")"], @response.body.split(/[0-9]+:/) + assert_equal ["NodeTag ", " v: is too long (maximum is 255 characters) (\"#{'x'*256}\")"], @response.body.split(/[0-9]+,foo:/) end @@ -206,9 +231,9 @@ class NodeControllerTest < ActionController::TestCase assert @response.body.to_i > current_nodes(:public_visible_node).version, "delete request should return a new version number for node" - # this won't work since the node is already deleted - content(nodes(:invisible_node).to_xml) - delete :delete, :id => current_nodes(:invisible_node).id + # deleting the same node twice doesn't work + content(nodes(:public_visible_node).to_xml) + delete :delete, :id => current_nodes(:public_visible_node).id assert_response :gone # this won't work since the node never existed