]> git.openstreetmap.org Git - rails.git/commitdiff
Limit system test asserts/interactions to sidebar
authorAnton Khorev <tony29@yandex.ru>
Wed, 10 Jan 2024 11:52:37 +0000 (14:52 +0300)
committerAnton Khorev <tony29@yandex.ru>
Tue, 16 Jan 2024 22:46:50 +0000 (01:46 +0300)
test/application_system_test_case.rb
test/system/note_comments_test.rb

index c2de02781e63c384fe2c7943df3abb7fad3be8d6..b170e74b1aa75e1273aa02c20e418beac20e31fd 100644 (file)
@@ -21,4 +21,10 @@ class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
     Settings.reload!
     super
   end
+
+  private
+
+  def within_sidebar(&block)
+    within "#sidebar_content", &block
+  end
 end
index 70cfc417c16b5de15235faf7f2415300d790fc1e..ea19dcd9497fc3f6d17bb206693580114db685d2 100644 (file)
@@ -5,17 +5,21 @@ class NoteCommentsTest < ApplicationSystemTestCase
     note = create(:note_with_comments)
     visit note_path(note)
 
-    assert_no_button "Resolve"
-    assert_no_button "Comment"
-    assert_link "Log in to comment on this note", :href => login_path(:referer => note_path(note))
+    within_sidebar do
+      assert_no_button "Resolve"
+      assert_no_button "Comment"
+      assert_link "Log in to comment on this note", :href => login_path(:referer => note_path(note))
+    end
   end
 
   test "closed note has no login notice" do
     note = create(:note_with_comments, :closed)
     visit note_path(note)
 
-    assert_no_button "Reactivate"
-    assert_no_link "Log in to comment on this note"
+    within_sidebar do
+      assert_no_button "Reactivate"
+      assert_no_link "Log in to comment on this note"
+    end
   end
 
   def test_add_comment
@@ -24,19 +28,21 @@ class NoteCommentsTest < ApplicationSystemTestCase
     sign_in_as(user)
     visit note_path(note)
 
-    assert_no_content "Comment from #{user.display_name}"
-    assert_no_content "Some newly added note comment"
-    assert_button "Resolve"
-    assert_button "Comment", :disabled => true
+    within_sidebar do
+      assert_no_content "Comment from #{user.display_name}"
+      assert_no_content "Some newly added note comment"
+      assert_button "Resolve"
+      assert_button "Comment", :disabled => true
 
-    fill_in "text", :with => "Some newly added note comment"
+      fill_in "text", :with => "Some newly added note comment"
 
-    assert_button "Comment & Resolve"
-    assert_button "Comment", :disabled => false
+      assert_button "Comment & Resolve"
+      assert_button "Comment", :disabled => false
 
-    click_on "Comment"
+      click_on "Comment"
 
-    assert_content "Comment from #{user.display_name}"
-    assert_content "Some newly added note comment"
+      assert_content "Comment from #{user.display_name}"
+      assert_content "Some newly added note comment"
+    end
   end
 end