Update rubocop-rspec to version 2.22.0, fix RSpec/IndexedLet cop (#24698)

This commit is contained in:
Matt Jankowski
2023-06-14 10:44:37 -04:00
committed by GitHub
parent 24015ef0cc
commit 4c5aa0e470
25 changed files with 334 additions and 322 deletions

View File

@ -11,12 +11,12 @@ RSpec.describe Trends::Statuses do
let!(:query) { subject.query }
let!(:today) { at_time }
let!(:status1) { Fabricate(:status, text: 'Foo', language: 'en', trendable: true, created_at: today) }
let!(:status2) { Fabricate(:status, text: 'Bar', language: 'en', trendable: true, created_at: today) }
let!(:status_foo) { Fabricate(:status, text: 'Foo', language: 'en', trendable: true, created_at: today) }
let!(:status_bar) { Fabricate(:status, text: 'Bar', language: 'en', trendable: true, created_at: today) }
before do
default_threshold_value.times { reblog(status1, today) }
default_threshold_value.times { reblog(status2, today) }
default_threshold_value.times { reblog(status_foo, today) }
default_threshold_value.times { reblog(status_bar, today) }
subject.refresh(today)
end
@ -29,18 +29,18 @@ RSpec.describe Trends::Statuses do
end
it 'filters out blocked accounts' do
account.block!(status1.account)
expect(query.filtered_for(account).to_a).to eq [status2]
account.block!(status_foo.account)
expect(query.filtered_for(account).to_a).to eq [status_bar]
end
it 'filters out muted accounts' do
account.mute!(status2.account)
expect(query.filtered_for(account).to_a).to eq [status1]
account.mute!(status_bar.account)
expect(query.filtered_for(account).to_a).to eq [status_foo]
end
it 'filters out blocked-by accounts' do
status1.account.block!(account)
expect(query.filtered_for(account).to_a).to eq [status2]
status_foo.account.block!(account)
expect(query.filtered_for(account).to_a).to eq [status_bar]
end
end
end
@ -71,14 +71,14 @@ RSpec.describe Trends::Statuses do
let!(:today) { at_time }
let!(:yesterday) { today - 1.day }
let!(:status1) { Fabricate(:status, text: 'Foo', language: 'en', trendable: true, created_at: yesterday) }
let!(:status2) { Fabricate(:status, text: 'Bar', language: 'en', trendable: true, created_at: today) }
let!(:status3) { Fabricate(:status, text: 'Baz', language: 'en', trendable: true, created_at: today) }
let!(:status_foo) { Fabricate(:status, text: 'Foo', language: 'en', trendable: true, created_at: yesterday) }
let!(:status_bar) { Fabricate(:status, text: 'Bar', language: 'en', trendable: true, created_at: today) }
let!(:status_baz) { Fabricate(:status, text: 'Baz', language: 'en', trendable: true, created_at: today) }
before do
default_threshold_value.times { reblog(status1, today) }
default_threshold_value.times { reblog(status2, today) }
(default_threshold_value - 1).times { reblog(status3, today) }
default_threshold_value.times { reblog(status_foo, today) }
default_threshold_value.times { reblog(status_bar, today) }
(default_threshold_value - 1).times { reblog(status_baz, today) }
end
context 'when status trends are refreshed' do
@ -89,17 +89,17 @@ RSpec.describe Trends::Statuses do
it 'returns correct statuses from query' do
results = subject.query.limit(10).to_a
expect(results).to eq [status2, status1]
expect(results).to_not include(status3)
expect(results).to eq [status_bar, status_foo]
expect(results).to_not include(status_baz)
end
end
it 'decays scores' do
subject.refresh(today)
original_score = status2.trend.score
original_score = status_bar.trend.score
expect(original_score).to be_a Float
subject.refresh(today + subject.options[:score_halflife])
decayed_score = status2.trend.reload.score
decayed_score = status_bar.trend.reload.score
expect(decayed_score).to be <= original_score / 2
end
end

View File

@ -33,15 +33,15 @@ RSpec.describe Trends::Tags do
let!(:today) { at_time }
let!(:yesterday) { today - 1.day }
let!(:tag1) { Fabricate(:tag, name: 'Catstodon', trendable: true) }
let!(:tag2) { Fabricate(:tag, name: 'DogsOfMastodon', trendable: true) }
let!(:tag3) { Fabricate(:tag, name: 'OCs', trendable: true) }
let!(:tag_cats) { Fabricate(:tag, name: 'Catstodon', trendable: true) }
let!(:tag_dogs) { Fabricate(:tag, name: 'DogsOfMastodon', trendable: true) }
let!(:tag_ocs) { Fabricate(:tag, name: 'OCs', trendable: true) }
before do
2.times { |i| subject.add(tag1, i, yesterday) }
13.times { |i| subject.add(tag3, i, yesterday) }
16.times { |i| subject.add(tag1, i, today) }
4.times { |i| subject.add(tag2, i, today) }
2.times { |i| subject.add(tag_cats, i, yesterday) }
13.times { |i| subject.add(tag_ocs, i, yesterday) }
16.times { |i| subject.add(tag_cats, i, today) }
4.times { |i| subject.add(tag_dogs, i, today) }
end
context 'when tag trends are refreshed' do
@ -51,20 +51,20 @@ RSpec.describe Trends::Tags do
end
it 'calculates and re-calculates scores' do
expect(subject.query.limit(10).to_a).to eq [tag1, tag3]
expect(subject.query.limit(10).to_a).to eq [tag_cats, tag_ocs]
end
it 'omits hashtags below threshold' do
expect(subject.query.limit(10).to_a).to_not include(tag2)
expect(subject.query.limit(10).to_a).to_not include(tag_dogs)
end
end
it 'decays scores' do
subject.refresh(yesterday + 12.hours)
original_score = subject.score(tag3.id)
original_score = subject.score(tag_ocs.id)
expect(original_score).to eq 144.0
subject.refresh(yesterday + 12.hours + subject.options[:max_score_halflife])
decayed_score = subject.score(tag3.id)
decayed_score = subject.score(tag_ocs.id)
expect(decayed_score).to be <= original_score / 2
end
end