From: Anton Khorev Date: Mon, 8 Jan 2024 11:46:03 +0000 (+0300) Subject: Test notices of disabled changeset commenting X-Git-Tag: live~766^2~7 X-Git-Url: https://git.openstreetmap.org./rails.git/commitdiff_plain/61c32388a9d9543ce0b3144fdfac22c73c9efe7f Test notices of disabled changeset commenting --- diff --git a/app/views/browse/changeset.html.erb b/app/views/browse/changeset.html.erb index 1b3d245fb..583ac107f 100644 --- a/app/views/browse/changeset.html.erb +++ b/app/views/browse/changeset.html.erb @@ -65,7 +65,7 @@ <% end %> <% unless current_user %> -

+

<%= link_to(t(".join_discussion"), login_path(:referer => request.fullpath)) %>

<% end %> @@ -83,7 +83,7 @@ <% else %> -

+

<%= t(".still_open") %>

<% end %> diff --git a/test/integration/user_changeset_comments_test.rb b/test/integration/user_changeset_comments_test.rb index 2b95094fe..a1f08ae6d 100644 --- a/test/integration/user_changeset_comments_test.rb +++ b/test/integration/user_changeset_comments_test.rb @@ -1,26 +1,6 @@ require "test_helper" class UserChangesetCommentsTest < ActionDispatch::IntegrationTest - # Test 'log in to comment' message for nonlogged in user - def test_log_in_message - changeset = create(:changeset, :closed) - - get "/changeset/#{changeset.id}" - assert_response :success - - assert_select "div#content" do - assert_select "div#sidebar" do - assert_select "div#sidebar_content" do - assert_select "div" do - assert_select "p.notice" do - assert_select "a[href='/login?referer=%2Fchangeset%2F#{changeset.id}']", :text => I18n.t("browse.changeset.join_discussion"), :count => 1 - end - end - end - end - end - end - # Test if the form is shown def test_displaying_form user = create(:user) diff --git a/test/system/changeset_comments_test.rb b/test/system/changeset_comments_test.rb new file mode 100644 index 000000000..beed3238c --- /dev/null +++ b/test/system/changeset_comments_test.rb @@ -0,0 +1,25 @@ +require "application_system_test_case" + +class ChangesetCommentsTest < ApplicationSystemTestCase + test "open changeset has a still open notice" do + changeset = create(:changeset) + sign_in_as(create(:user)) + visit changeset_path(changeset) + + within_sidebar do + assert_no_button "Comment" + assert_text "Changeset still open" + end + end + + test "changeset has a login notice" do + changeset = create(:changeset, :closed) + visit changeset_path(changeset) + + within_sidebar do + assert_no_button "Subscribe" + assert_no_button "Comment" + assert_link "Log in to join the discussion", :href => login_path(:referer => changeset_path(changeset)) + end + end +end