Merge remote-tracking branch 'parent/main' into upstream-20241107
This commit is contained in:
commit
a003c2db89
98 changed files with 2002 additions and 590 deletions
|
@ -57,36 +57,24 @@ RSpec.describe AccountStatusesFilter do
|
|||
end
|
||||
|
||||
shared_examples 'filter params' do
|
||||
context 'with only_media param' do
|
||||
let(:params) { { only_media: true } }
|
||||
it 'respects param options in results' do
|
||||
expect(results_for(only_media: true))
|
||||
.to all(satisfy(&:with_media?))
|
||||
|
||||
it 'returns only statuses with media' do
|
||||
expect(subject.all?(&:with_media?)).to be true
|
||||
end
|
||||
expect(results_for(tagged: tag.name))
|
||||
.to all(satisfy { |status| status.tags.include?(tag) })
|
||||
|
||||
expect(results_for(exclude_replies: true))
|
||||
.to all(satisfy { |status| !status.reply? })
|
||||
|
||||
expect(results_for(exclude_reblogs: true))
|
||||
.to all(satisfy { |status| !status.reblog? })
|
||||
end
|
||||
|
||||
context 'with tagged param' do
|
||||
let(:params) { { tagged: tag.name } }
|
||||
|
||||
it 'returns only statuses with tag' do
|
||||
expect(subject.all? { |s| s.tags.include?(tag) }).to be true
|
||||
end
|
||||
end
|
||||
|
||||
context 'with exclude_replies param' do
|
||||
let(:params) { { exclude_replies: true } }
|
||||
|
||||
it 'returns only statuses that are not replies' do
|
||||
expect(subject.none?(&:reply?)).to be true
|
||||
end
|
||||
end
|
||||
|
||||
context 'with exclude_reblogs param' do
|
||||
let(:params) { { exclude_reblogs: true } }
|
||||
|
||||
it 'returns only statuses that are not reblogs' do
|
||||
expect(subject.none?(&:reblog?)).to be true
|
||||
end
|
||||
def results_for(params)
|
||||
described_class
|
||||
.new(account, current_account, params)
|
||||
.results
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -4,17 +4,20 @@ require 'rails_helper'
|
|||
|
||||
RSpec.describe AnnualReport::Percentiles do
|
||||
describe '#generate' do
|
||||
subject { described_class.new(account, Time.zone.now.year) }
|
||||
subject { described_class.new(account, year) }
|
||||
|
||||
let(:year) { Time.zone.now.year }
|
||||
|
||||
context 'with an inactive account' do
|
||||
let(:account) { Fabricate :account }
|
||||
|
||||
it 'builds a report for an account' do
|
||||
described_class.prepare(year)
|
||||
|
||||
expect(subject.generate)
|
||||
.to include(
|
||||
percentiles: include(
|
||||
followers: 0,
|
||||
statuses: 0
|
||||
statuses: 100
|
||||
)
|
||||
)
|
||||
end
|
||||
|
@ -25,16 +28,15 @@ RSpec.describe AnnualReport::Percentiles do
|
|||
|
||||
before do
|
||||
Fabricate.times 2, :status # Others as `account`
|
||||
Fabricate.times 2, :follow # Others as `target_account`
|
||||
Fabricate.times 2, :status, account: account
|
||||
Fabricate.times 2, :follow, target_account: account
|
||||
end
|
||||
|
||||
it 'builds a report for an account' do
|
||||
described_class.prepare(year)
|
||||
|
||||
expect(subject.generate)
|
||||
.to include(
|
||||
percentiles: include(
|
||||
followers: 50,
|
||||
statuses: 50
|
||||
)
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue