)
assert_routing(
{ :path => "/api/0.6/changesets", :method => :get },
- { :controller => "api/changesets", :action => "query" }
+ { :controller => "api/changesets", :action => "index" }
)
assert_routing(
{ :path => "/api/0.6/changesets.json", :method => :get },
- { :controller => "api/changesets", :action => "query", :format => "json" }
+ { :controller => "api/changesets", :action => "index", :format => "json" }
)
end
assert_single_changeset_json changeset, js
assert_equal 3, js["changeset"]["comments"].count
assert_equal comment0.id, js["changeset"]["comments"][0]["id"]
- assert_operator true, :==, js["changeset"]["comments"][0]["visible"]
+ assert js["changeset"]["comments"][0]["visible"]
assert_equal comment1.id, js["changeset"]["comments"][1]["id"]
- assert_operator true, :==, js["changeset"]["comments"][1]["visible"]
+ assert js["changeset"]["comments"][1]["visible"]
assert_equal comment2.id, js["changeset"]["comments"][2]["id"]
- assert_operator true, :==, js["changeset"]["comments"][2]["visible"]
+ assert js["changeset"]["comments"][2]["visible"]
# one hidden comment not included because not asked for
comment1.update(:visible => false)
assert_single_changeset_json changeset, js
assert_equal 2, js["changeset"]["comments"].count
assert_equal comment0.id, js["changeset"]["comments"][0]["id"]
- assert_operator true, :==, js["changeset"]["comments"][0]["visible"]
+ assert js["changeset"]["comments"][0]["visible"]
assert_equal comment2.id, js["changeset"]["comments"][1]["id"]
- assert_operator true, :==, js["changeset"]["comments"][1]["visible"]
+ assert js["changeset"]["comments"][1]["visible"]
# one hidden comment not included because no permissions
get changeset_show_path(changeset), :params => { :format => "json", :include_discussion => true, :show_hidden_comments => true }
assert_single_changeset_json changeset, js
assert_equal 2, js["changeset"]["comments"].count
assert_equal comment0.id, js["changeset"]["comments"][0]["id"]
- assert_operator true, :==, js["changeset"]["comments"][0]["visible"]
+ assert js["changeset"]["comments"][0]["visible"]
# maybe will show an empty comment element with visible=false in the future
assert_equal comment2.id, js["changeset"]["comments"][1]["id"]
- assert_operator true, :==, js["changeset"]["comments"][1]["visible"]
+ assert js["changeset"]["comments"][1]["visible"]
# one hidden comment shown to moderators
moderator_user = create(:moderator_user)
assert_single_changeset_json changeset, js
assert_equal 3, js["changeset"]["comments"].count
assert_equal comment0.id, js["changeset"]["comments"][0]["id"]
- assert_operator true, :==, js["changeset"]["comments"][0]["visible"]
+ assert js["changeset"]["comments"][0]["visible"]
assert_equal comment1.id, js["changeset"]["comments"][1]["id"]
- assert_operator false, :==, js["changeset"]["comments"][1]["visible"]
+ assert_not js["changeset"]["comments"][1]["visible"]
assert_equal comment2.id, js["changeset"]["comments"][2]["id"]
- assert_operator true, :==, js["changeset"]["comments"][2]["visible"]
+ assert js["changeset"]["comments"][2]["visible"]
end
def test_show_tag_and_discussion_json
end
end
+ test "sorts downloaded elements by timestamp" do
+ changeset = create(:changeset)
+ node1 = create(:old_node, :version => 2, :timestamp => "2020-02-01", :changeset => changeset)
+ node0 = create(:old_node, :version => 2, :timestamp => "2020-01-01", :changeset => changeset)
+
+ get changeset_download_path(changeset)
+ assert_response :success
+ assert_dom "modify", :count => 2 do |modify|
+ assert_dom modify[0], ">node", :count => 1 do |node|
+ assert_dom node, ">@id", node0.node_id.to_s
+ end
+ assert_dom modify[1], ">node", :count => 1 do |node|
+ assert_dom node, ">@id", node1.node_id.to_s
+ end
+ end
+ end
+
+ test "sorts downloaded elements by version" do
+ changeset = create(:changeset)
+ node1 = create(:old_node, :version => 3, :timestamp => "2020-01-01", :changeset => changeset)
+ node0 = create(:old_node, :version => 2, :timestamp => "2020-01-01", :changeset => changeset)
+
+ get changeset_download_path(changeset)
+ assert_response :success
+ assert_dom "modify", :count => 2 do |modify|
+ assert_dom modify[0], ">node", :count => 1 do |node|
+ assert_dom node, ">@id", node0.node_id.to_s
+ end
+ assert_dom modify[1], ">node", :count => 1 do |node|
+ assert_dom node, ">@id", node1.node_id.to_s
+ end
+ end
+ end
+
##
# check that the bounding box of a changeset gets updated correctly
# FIXME: This should really be moded to a integration test due to the with_controller
assert_response :success, "can't create a new node"
node_id = @response.body.to_i
- get api_node_path(:id => node_id)
+ get api_node_path(node_id)
assert_response :success, "can't read back new node"
node_doc = XML::Parser.string(@response.body).parse
node_xml = node_doc.find("//osm/node").first
node_xml["lon"] = rand.to_s
node_xml["version"] = (i + 1).to_s
- put api_node_path(:id => node_id), :params => node_doc.to_s, :headers => auth_header
+ put api_node_path(node_id), :params => node_doc.to_s, :headers => auth_header
assert_response :success, "attempt #{i} should have succeeded"
end
node_xml["lon"] = rand.to_s
node_xml["version"] = offset.to_s
- put api_node_path(:id => node_id), :params => node_doc.to_s, :headers => auth_header
+ put api_node_path(node_id), :params => node_doc.to_s, :headers => auth_header
assert_response :conflict, "final attempt should have failed"
end
assert_equal changeset.id, js["changeset"]["id"]
assert_equal changeset.created_at.xmlschema, js["changeset"]["created_at"]
if changeset.open?
- assert_operator true, :==, js["changeset"]["open"]
+ assert js["changeset"]["open"]
assert_nil js["changeset"]["closed_at"]
else
- assert_operator false, :==, js["changeset"]["open"]
+ assert_not js["changeset"]["open"]
assert_equal changeset.closed_at.xmlschema, js["changeset"]["closed_at"]
end
end