0
0
Fork 0

Add coverage for StatusTrend and PreviewCardTrend models, add locales class method to RankedTrend (#32688)

This commit is contained in:
Matt Jankowski 2024-10-29 11:46:32 -04:00 committed by GitHub
parent df3b954720
commit babee06794
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 64 additions and 4 deletions

View file

@ -4,7 +4,7 @@ class Admin::Trends::LinksController < Admin::BaseController
def index
authorize :preview_card, :review?
@locales = PreviewCardTrend.pluck('distinct language')
@locales = PreviewCardTrend.locales
@preview_cards = filtered_preview_cards.page(params[:page])
@form = Trends::PreviewCardBatch.new
end

View file

@ -4,7 +4,7 @@ class Admin::Trends::StatusesController < Admin::BaseController
def index
authorize [:admin, :status], :review?
@locales = StatusTrend.pluck('distinct language')
@locales = StatusTrend.locales
@statuses = filtered_statuses.page(params[:page])
@form = Trends::StatusBatch.new
end

View file

@ -9,6 +9,10 @@ module RankedTrend
end
class_methods do
def locales
distinct.pluck(:language)
end
def recalculate_ordered_rank
connection
.exec_update(<<~SQL.squish)

View file

@ -85,7 +85,7 @@ class Trends::Links < Trends::Base
end
def request_review
PreviewCardTrend.pluck('distinct language').flat_map do |language|
PreviewCardTrend.locales.flat_map do |language|
score_at_threshold = PreviewCardTrend.where(language: language).allowed.by_rank.ranked_below(options[:review_threshold]).first&.score || 0
preview_card_trends = PreviewCardTrend.where(language: language).not_allowed.joins(:preview_card)

View file

@ -78,7 +78,7 @@ class Trends::Statuses < Trends::Base
end
def request_review
StatusTrend.pluck('distinct language').flat_map do |language|
StatusTrend.locales.flat_map do |language|
score_at_threshold = StatusTrend.where(language: language, allowed: true).by_rank.ranked_below(options[:review_threshold]).first&.score || 0
status_trends = StatusTrend.where(language: language, allowed: false).joins(:status).includes(status: :account)