X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/f735b073093bb4611da54530fc8e749554ccda7d..692c0c39b68a77057526781a83dabe56a6931fa0:/test/controllers/changeset_controller_test.rb
diff --git a/test/controllers/changeset_controller_test.rb b/test/controllers/changeset_controller_test.rb
index d90ee0eee..5f156ee1b 100644
--- a/test/controllers/changeset_controller_test.rb
+++ b/test/controllers/changeset_controller_test.rb
@@ -424,6 +424,9 @@ EOF
def test_upload_create_valid
user = create(:user)
changeset = create(:changeset, :user => user)
+ node = create(:node)
+ way = create(:way_with_nodes, :nodes_count => 2)
+ relation = create(:relation)
basic_authorization user.email, "test"
@@ -436,14 +439,14 @@ EOF
-
+
-
-
-
+
+
+
@@ -870,6 +873,7 @@ EOF
##
# upload multiple versions of the same element in the same diff.
def test_upload_multiple_valid
+ node = create(:node)
changeset = create(:changeset)
basic_authorization changeset.user.email, "test"
@@ -879,14 +883,14 @@ EOF
diff = <
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
EOF
@@ -907,6 +911,7 @@ EOF
# upload multiple versions of the same element in the same diff, but
# keep the version numbers the same.
def test_upload_multiple_duplicate
+ node = create(:node)
changeset = create(:changeset)
basic_authorization changeset.user.email, "test"
@@ -914,8 +919,8 @@ EOF
diff = <
-
-
+
+
EOF
@@ -1315,6 +1320,8 @@ EOF
# when we make some simple changes we get the same changes back from the
# diff download.
def test_diff_download_simple
+ node = create(:node)
+
## First try with a non-public user, which should get a forbidden
basic_authorization(create(:user, :data_public => false).email, "test")
@@ -1340,14 +1347,14 @@ EOF
diff = <
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
EOF
@@ -1431,6 +1438,9 @@ OSMFILE
# when we make some complex changes we get the same changes back from the
# diff download.
def test_diff_download_complex
+ node = create(:node)
+ node2 = create(:node)
+ way = create(:way)
basic_authorization(create(:user).email, "test")
# create a temporary changeset
@@ -1445,7 +1455,7 @@ OSMFILE
diff = <
-
+
@@ -1453,9 +1463,9 @@ OSMFILE
-
-
-
+
+
+
@@ -2036,37 +2046,46 @@ EOF
##
# This should display the last 20 changesets closed
def test_feed
+ changeset = create(:changeset, :num_changes => 1)
+ _empty_changeset = create(:changeset, :num_changes => 0)
+
get :feed, :format => :atom
assert_response :success
assert_template "list"
assert_equal "application/atom+xml", response.content_type
- check_feed_result(Changeset.all)
+ check_feed_result([changeset])
end
##
# This should display the last 20 changesets closed in a specific area
def test_feed_bbox
+ changeset = create(:changeset, :num_changes => 1, :min_lat => 5 * GeoRecord::SCALE, :min_lon => 5 * GeoRecord::SCALE, :max_lat => 5 * GeoRecord::SCALE, :max_lon => 5 * GeoRecord::SCALE)
+ closed_changeset = create(:changeset, :closed, :num_changes => 1, :min_lat => 5 * GeoRecord::SCALE, :min_lon => 5 * GeoRecord::SCALE, :max_lat => 5 * GeoRecord::SCALE, :max_lon => 5 * GeoRecord::SCALE)
+ _elsewhere_changeset = create(:changeset, :num_changes => 1, :min_lat => -5 * GeoRecord::SCALE, :min_lon => -5 * GeoRecord::SCALE, :max_lat => -5 * GeoRecord::SCALE, :max_lon => -5 * GeoRecord::SCALE)
+ _empty_changeset = create(:changeset, :num_changes => 0, :min_lat => -5 * GeoRecord::SCALE, :min_lon => -5 * GeoRecord::SCALE, :max_lat => -5 * GeoRecord::SCALE, :max_lon => -5 * GeoRecord::SCALE)
+
get :feed, :format => :atom, :bbox => "4.5,4.5,5.5,5.5"
assert_response :success
assert_template "list"
assert_equal "application/atom+xml", response.content_type
- check_feed_result(Changeset.where("min_lon < 55000000 and max_lon > 45000000 and min_lat < 55000000 and max_lat > 45000000"))
+ check_feed_result([changeset, closed_changeset])
end
##
# Checks the display of the user changesets feed
def test_feed_user
user = create(:user)
- create_list(:changeset, 3, :user => user, :num_changes => 4)
+ changesets = create_list(:changeset, 3, :user => user, :num_changes => 4)
+ _other_changeset = create(:changeset)
get :feed, :format => :atom, :display_name => user.display_name
assert_response :success
assert_template "list"
assert_equal "application/atom+xml", response.content_type
- check_feed_result(user.changesets)
+ check_feed_result(changesets)
end
##
@@ -2480,9 +2499,6 @@ EOF
##
# check the result of a feed
def check_feed_result(changesets)
- changesets = changesets.where("num_changes > 0")
- .order(:created_at => :desc)
- .limit(20)
assert changesets.size <= 20
assert_select "feed", :count => [changesets.size, 1].min do