diff --git a/app/controllers/admin/trends/tags_controller.rb b/app/controllers/admin/trends/tags_controller.rb index 1ccd74068..cff25a254 100644 --- a/app/controllers/admin/trends/tags_controller.rb +++ b/app/controllers/admin/trends/tags_controller.rb @@ -4,7 +4,7 @@ class Admin::Trends::TagsController < Admin::BaseController def index authorize :tag, :review? - @pending_tags_count = Tag.pending_review.async_count + @pending_tags_count = pending_tags.async_count @tags = filtered_tags.page(params[:page]) @form = Trends::TagBatch.new end @@ -22,6 +22,10 @@ class Admin::Trends::TagsController < Admin::BaseController private + def pending_tags + Trends::TagFilter.new(status: :pending_review).results + end + def filtered_tags Trends::TagFilter.new(filter_params).results end diff --git a/spec/system/admin/trends/tags_spec.rb b/spec/system/admin/trends/tags_spec.rb index a7f00c023..631288d4f 100644 --- a/spec/system/admin/trends/tags_spec.rb +++ b/spec/system/admin/trends/tags_spec.rb @@ -7,6 +7,21 @@ RSpec.describe 'Admin::Trends::Tags' do before { sign_in current_user } + describe 'Viewing tags lists' do + context 'with a tag that needs review but is not trending' do + before { Fabricate :tag, requested_review_at: 5.minutes.ago } + + it 'includes a correct pending tag count in navigation' do + visit admin_trends_tags_path + + within('.filter-subset') do + expect(page) + .to have_content("#{I18n.t('admin.accounts.moderation.pending')} (0)") + end + end + end + end + describe 'Performing batch updates' do context 'without selecting any records' do it 'displays a notice about selection' do