From: Anton Khorev Date: Wed, 10 Jan 2024 11:52:37 +0000 (+0300) Subject: Limit system test asserts/interactions to sidebar X-Git-Tag: live~818^2~2 X-Git-Url: https://git.openstreetmap.org./rails.git/commitdiff_plain/44d9b77f7a2f48c6cea251b5e97a775598dee4fc Limit system test asserts/interactions to sidebar --- diff --git a/test/application_system_test_case.rb b/test/application_system_test_case.rb index c2de02781..b170e74b1 100644 --- a/test/application_system_test_case.rb +++ b/test/application_system_test_case.rb @@ -21,4 +21,10 @@ class ApplicationSystemTestCase < ActionDispatch::SystemTestCase Settings.reload! super end + + private + + def within_sidebar(&block) + within "#sidebar_content", &block + end end diff --git a/test/system/note_comments_test.rb b/test/system/note_comments_test.rb index 70cfc417c..ea19dcd94 100644 --- a/test/system/note_comments_test.rb +++ b/test/system/note_comments_test.rb @@ -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