From be6a5f4f1d578771e4f787e5debd10976784a4c7 Mon Sep 17 00:00:00 2001 From: kikito Date: Mon, 24 Aug 2015 18:45:47 +0200 Subject: [PATCH] Adds test for not showing moderator actions in own debate --- app/views/debates/_actions.html.erb | 8 +++++--- spec/features/moderation/debates_spec.rb | 13 +++++++++++++ 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/app/views/debates/_actions.html.erb b/app/views/debates/_actions.html.erb index 5a51749dc..db9821ad0 100644 --- a/app/views/debates/_actions.html.erb +++ b/app/views/debates/_actions.html.erb @@ -1,7 +1,9 @@ -<%= link_to t("admin.actions.hide").capitalize, hide_moderation_debate_path(debate), - method: :put, remote: true, data: { confirm: t('admin.actions.confirm') } %> +<% if can? :hide, debate %> + <%= link_to t("admin.actions.hide").capitalize, hide_moderation_debate_path(debate), + method: :put, remote: true, data: { confirm: t('admin.actions.confirm') } %> +<% end %> -<% unless debate.author.hidden? %> +<% if can? :hide, debate.author %>  |  <%= link_to t("admin.actions.hide_author").capitalize, hide_moderation_user_path(debate.author_id), method: :put, data: { confirm: t('admin.actions.confirm') } %> diff --git a/spec/features/moderation/debates_spec.rb b/spec/features/moderation/debates_spec.rb index bb2b58c24..1ea3101e0 100644 --- a/spec/features/moderation/debates_spec.rb +++ b/spec/features/moderation/debates_spec.rb @@ -23,6 +23,19 @@ feature 'Moderate debates' do expect(page).to have_css('.debate', count: 0) end + scenario 'Can not hide own debate' do + moderator = create(:moderator) + debate = create(:debate, author: moderator.user) + + login_as(moderator.user) + visit debate_path(debate) + + within("#debate_#{debate.id}") do + expect(page).to_not have_link('Hide') + expect(page).to_not have_link('Block author') + end + end + feature '/moderation/ menu' do background do