]> git.openstreetmap.org Git - rails.git/commitdiff
Merge remote-tracking branch 'upstream/pull/1704'
authorTom Hughes <tom@compton.nu>
Sun, 4 Feb 2018 15:09:40 +0000 (15:09 +0000)
committerTom Hughes <tom@compton.nu>
Sun, 4 Feb 2018 15:09:40 +0000 (15:09 +0000)
.rubocop_todo.yml
app/controllers/changeset_controller.rb
test/controllers/changeset_controller_test.rb

index 3ebd4d35f686bb0f4252f2689524b342ea3406ba..2c8d29eb887fac048d55a61cfcdb3d34e5138fa3 100644 (file)
@@ -77,7 +77,7 @@ Metrics/BlockNesting:
 # Offense count: 63
 # Configuration parameters: CountComments.
 Metrics/ClassLength:
-  Max: 1796
+  Max: 1797
 
 # Offense count: 71
 Metrics/CyclomaticComplexity:
index f294d23d59026c31b931c04c9f9b97d8bdfb849f..0a63d525373aa33892c08a243895aa90e3b57598 100644 (file)
@@ -353,7 +353,6 @@ class ChangesetController < ApplicationController
 
     # Find the changeset and check it is valid
     changeset = Changeset.find(id)
-    raise OSM::APIChangesetNotYetClosedError, changeset if changeset.is_open?
     raise OSM::APIChangesetAlreadySubscribedError, changeset if changeset.subscribers.exists?(current_user.id)
 
     # Add the subscriber
@@ -374,7 +373,6 @@ class ChangesetController < ApplicationController
 
     # Find the changeset and check it is valid
     changeset = Changeset.find(id)
-    raise OSM::APIChangesetNotYetClosedError, changeset if changeset.is_open?
     raise OSM::APIChangesetNotSubscribedError, changeset unless changeset.subscribers.exists?(current_user.id)
 
     # Remove the subscriber
index 5205714df9171ca72232ce460438b4fe72a0c3db..cb584759ae4ebf478a73129cafc33afed8843f2b 100644 (file)
@@ -2246,6 +2246,13 @@ CHANGESET
       post :subscribe, :params => { :id => changeset.id }
     end
     assert_response :success
+
+    # not closed changeset
+    changeset = create(:changeset)
+    assert_difference "changeset.subscribers.count", 1 do
+      post :subscribe, :params => { :id => changeset.id }
+    end
+    assert_response :success
   end
 
   ##
@@ -2268,13 +2275,6 @@ CHANGESET
     end
     assert_response :not_found
 
-    # not closed changeset
-    changeset = create(:changeset)
-    assert_no_difference "changeset.subscribers.count" do
-      post :subscribe, :params => { :id => changeset.id }
-    end
-    assert_response :conflict
-
     # trying to subscribe when already subscribed
     changeset = create(:changeset, :closed)
     changeset.subscribers.push(user)
@@ -2296,6 +2296,15 @@ CHANGESET
       post :unsubscribe, :params => { :id => changeset.id }
     end
     assert_response :success
+
+    # not closed changeset
+    changeset = create(:changeset)
+    changeset.subscribers.push(user)
+
+    assert_difference "changeset.subscribers.count", -1 do
+      post :unsubscribe, :params => { :id => changeset.id }
+    end
+    assert_response :success
   end
 
   ##
@@ -2316,13 +2325,6 @@ CHANGESET
     end
     assert_response :not_found
 
-    # not closed changeset
-    changeset = create(:changeset)
-    assert_no_difference "changeset.subscribers.count" do
-      post :unsubscribe, :params => { :id => changeset.id }
-    end
-    assert_response :conflict
-
     # trying to unsubscribe when not subscribed
     changeset = create(:changeset, :closed)
     assert_no_difference "changeset.subscribers.count" do