get changeset_show_path(changeset)
assert_response :success, "cannot get first changeset"
- assert_select "osm[version='#{Settings.api_version}'][generator='OpenStreetMap server']", 1
+ assert_select "osm[version='#{Settings.api_version}'][generator='#{Settings.generator}']", 1
assert_select "osm>changeset[id='#{changeset.id}']", 1
assert_select "osm>changeset>@open", "true"
assert_select "osm>changeset>@created_at", changeset.created_at.xmlschema
get changeset_show_path(changeset), :params => { :include_discussion => true }
assert_response :success, "cannot get first changeset with comments"
- assert_select "osm[version='#{Settings.api_version}'][generator='OpenStreetMap server']", 1
+ assert_select "osm[version='#{Settings.api_version}'][generator='#{Settings.generator}']", 1
assert_select "osm>changeset[id='#{changeset.id}']", 1
assert_select "osm>changeset>@open", "true"
assert_select "osm>changeset>@created_at", changeset.created_at.xmlschema
get changeset_show_path(changeset), :params => { :include_discussion => true }
assert_response :success, "cannot get closed changeset with comments"
- assert_select "osm[version='#{Settings.api_version}'][generator='OpenStreetMap server']", 1
+ assert_select "osm[version='#{Settings.api_version}'][generator='#{Settings.generator}']", 1
assert_select "osm>changeset[id='#{changeset.id}']", 1
assert_select "osm>changeset>@open", "false"
assert_select "osm>changeset>@created_at", changeset.created_at.xmlschema
assert_not_nil js
assert_equal Settings.api_version, js["version"]
- assert_equal "OpenStreetMap server", js["generator"]
+ assert_equal Settings.generator, js["generator"]
assert_equal changeset.id, js["changeset"]["id"]
assert js["changeset"]["open"]
assert_equal changeset.created_at.xmlschema, js["changeset"]["created_at"]
js = ActiveSupport::JSON.decode(@response.body)
assert_not_nil js
assert_equal Settings.api_version, js["version"]
- assert_equal "OpenStreetMap server", js["generator"]
+ assert_equal Settings.generator, js["generator"]
assert_equal changeset.id, js["changeset"]["id"]
assert js["changeset"]["open"]
assert_equal changeset.created_at.xmlschema, js["changeset"]["created_at"]
assert_not_nil js
assert_equal Settings.api_version, js["version"]
- assert_equal "OpenStreetMap server", js["generator"]
+ assert_equal Settings.generator, js["generator"]
assert_equal changeset.id, js["changeset"]["id"]
assert_not js["changeset"]["open"]
assert_equal changeset.created_at.xmlschema, js["changeset"]["created_at"]
js = ActiveSupport::JSON.decode(@response.body)
assert_not_nil js
assert_equal(-5, js["changeset"]["min_lat"])
- assert_equal 5, js["changeset"]["min_lon"]
+ assert_equal 5, js["changeset"]["min_lon"]
assert_equal 15, js["changeset"]["max_lat"]
assert_equal 12, js["changeset"]["max_lon"]
end
"can't upload a simple valid creation to changeset: #{@response.body}"
# check the returned payload
- assert_select "diffResult[version='#{Settings.api_version}'][generator='OpenStreetMap server']", 1
+ assert_select "diffResult[version='#{Settings.api_version}'][generator='#{Settings.generator}']", 1
assert_select "diffResult>node", 1
assert_select "diffResult>way", 1
assert_select "diffResult>relation", 1
"can't do a conditional delete of in use objects: #{@response.body}"
# check the returned payload
- assert_select "diffResult[version='#{Settings.api_version}'][generator='OpenStreetMap server']", 1
+ assert_select "diffResult[version='#{Settings.api_version}'][generator='#{Settings.generator}']", 1
assert_select "diffResult>node", 1
assert_select "diffResult>way", 1
assert_select "diffResult>relation", 1
"failed to return error in XML format"
# check the returned payload
- assert_select "osmError[version='#{Settings.api_version}'][generator='OpenStreetMap server']", 1
+ assert_select "osmError[version='#{Settings.api_version}'][generator='#{Settings.generator}']", 1
assert_select "osmError>status", 1
assert_select "osmError>message", 1
end
assert_not_nil js
assert_equal Settings.api_version, js["version"]
- assert_equal "OpenStreetMap server", js["generator"]
+ assert_equal Settings.generator, js["generator"]
assert_equal 2, js["changesets"].count
# check that the correct error is given when we provide both UID and name
assert_response :bad_request, "should be a bad request since changesets is empty"
end
+ ##
+ # test the query functionality of changesets with the limit parameter
+ def test_query_limit
+ user = create(:user)
+ changeset1 = create(:changeset, :closed, :user => user, :created_at => Time.utc(2008, 1, 1, 0, 0, 0), :closed_at => Time.utc(2008, 1, 2, 0, 0, 0))
+ changeset2 = create(:changeset, :closed, :user => user, :created_at => Time.utc(2008, 2, 1, 0, 0, 0), :closed_at => Time.utc(2008, 2, 2, 0, 0, 0))
+ changeset3 = create(:changeset, :closed, :user => user, :created_at => Time.utc(2008, 3, 1, 0, 0, 0), :closed_at => Time.utc(2008, 3, 2, 0, 0, 0))
+ changeset4 = create(:changeset, :closed, :user => user, :created_at => Time.utc(2008, 4, 1, 0, 0, 0), :closed_at => Time.utc(2008, 4, 2, 0, 0, 0))
+ changeset5 = create(:changeset, :closed, :user => user, :created_at => Time.utc(2008, 5, 1, 0, 0, 0), :closed_at => Time.utc(2008, 5, 2, 0, 0, 0))
+
+ get changesets_path
+ assert_response :success
+ assert_changesets [changeset5, changeset4, changeset3, changeset2, changeset1]
+
+ get changesets_path(:limit => "3")
+ assert_response :success
+ assert_changesets [changeset5, changeset4, changeset3]
+
+ get changesets_path(:limit => "0")
+ assert_response :bad_request
+
+ get changesets_path(:limit => Settings.max_changeset_query_limit)
+ assert_response :success
+ assert_changesets [changeset5, changeset4, changeset3, changeset2, changeset1]
+
+ get changesets_path(:limit => Settings.max_changeset_query_limit + 1)
+ assert_response :bad_request
+ end
+
##
# check that errors are returned if garbage is inserted
# into query strings