]> git.openstreetmap.org Git - rails.git/blobdiff - test/controllers/changesets_controller_test.rb
Merge remote-tracking branch 'upstream/pull/4889'
[rails.git] / test / controllers / changesets_controller_test.rb
index 1fd9de2e810fb8a9735731055213fecd5148f967..a486e4b5ee87f98f955fe1de82d5647ec93d4cc1 100644 (file)
@@ -92,6 +92,15 @@ class ChangesetsControllerTest < ActionDispatch::IntegrationTest
     check_index_result(changesets.last(20))
   end
 
+  ##
+  # This should report an error
+  def test_index_invalid_xhr
+    %w[-1 0 fred].each do |id|
+      get history_path(:format => "html", :list => "1", :max_id => id)
+      assert_redirected_to :controller => :errors, :action => :bad_request
+    end
+  end
+
   ##
   # This should display the last 20 changesets closed in a specific area
   def test_index_bbox
@@ -321,13 +330,26 @@ class ChangesetsControllerTest < ActionDispatch::IntegrationTest
 
   def test_show_adjacent_changesets
     user = create(:user)
-    changesets = create_list(:changeset, 3, :user => user)
+    changesets = create_list(:changeset, 3, :user => user, :num_changes => 1)
 
     sidebar_browse_check :changeset_path, changesets[1].id, "changesets/show"
     assert_dom "a[href='#{changeset_path changesets[0]}']", :count => 1
     assert_dom "a[href='#{changeset_path changesets[2]}']", :count => 1
   end
 
+  def test_show_adjacent_nonempty_changesets
+    user = create(:user)
+    changeset1 = create(:changeset, :user => user, :num_changes => 1)
+    create(:changeset, :user => user, :num_changes => 0)
+    changeset3 = create(:changeset, :user => user, :num_changes => 1)
+    create(:changeset, :user => user, :num_changes => 0)
+    changeset5 = create(:changeset, :user => user, :num_changes => 1)
+
+    sidebar_browse_check :changeset_path, changeset3.id, "changesets/show"
+    assert_dom "a[href='#{changeset_path changeset1}']", :count => 1
+    assert_dom "a[href='#{changeset_path changeset5}']", :count => 1
+  end
+
   ##
   # This should display the last 20 non-empty changesets
   def test_feed