X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/53817fa9e8d955df0891d156f21b7269b4ed08fc..26d19939b7e03325dd9f7ebab0cdfac996ba0f5a:/test/system/note_comments_test.rb

diff --git a/test/system/note_comments_test.rb b/test/system/note_comments_test.rb
index 7c830cc37..0577992f2 100644
--- a/test/system/note_comments_test.rb
+++ b/test/system/note_comments_test.rb
@@ -22,7 +22,7 @@ class NoteCommentsTest < ApplicationSystemTestCase
     end
   end
 
-  def test_add_comment
+  test "can add comment" do
     note = create(:note_with_comments)
     user = create(:user)
     sign_in_as(user)
@@ -125,4 +125,49 @@ class NoteCommentsTest < ApplicationSystemTestCase
       assert_button "Reactivate", :disabled => false
     end
   end
+
+  test "no subscribe button when not logged in" do
+    note = create(:note_with_comments)
+    visit note_path(note)
+
+    within_sidebar do
+      assert_no_button "Subscribe"
+      assert_no_button "Unsubscribe"
+    end
+  end
+
+  test "can subscribe" do
+    note = create(:note_with_comments)
+    user = create(:user)
+    sign_in_as(user)
+    visit note_path(note)
+
+    within_sidebar do
+      assert_button "Subscribe"
+      assert_no_button "Unsubscribe"
+
+      click_on "Subscribe"
+
+      assert_no_button "Subscribe"
+      assert_button "Unsubscribe"
+    end
+  end
+
+  test "can unsubscribe" do
+    note = create(:note_with_comments)
+    user = create(:user)
+    create(:note_subscription, :note => note, :user => user)
+    sign_in_as(user)
+    visit note_path(note)
+
+    within_sidebar do
+      assert_no_button "Subscribe"
+      assert_button "Unsubscribe"
+
+      click_on "Unsubscribe"
+
+      assert_button "Subscribe"
+      assert_no_button "Unsubscribe"
+    end
+  end
 end