Reduce extra round trips in `AP::FetchRemoteStatusService` spec (#31045)

This commit is contained in:
Matt Jankowski 2024-07-17 03:24:14 -04:00 committed by GitHub
parent 00c110ac7b
commit 81877e7950
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 11 additions and 15 deletions

View File

@ -227,7 +227,7 @@ RSpec.describe ActivityPub::FetchRemoteStatusService do
context 'with statuses referencing other statuses', :inline_jobs do context 'with statuses referencing other statuses', :inline_jobs do
before do before do
stub_const 'ActivityPub::FetchRemoteStatusService::DISCOVERIES_PER_REQUEST', 5 stub_const 'ActivityPub::FetchRemoteStatusService::DISCOVERIES_PER_REQUEST', 3
end end
context 'when using inReplyTo' do context 'when using inReplyTo' do
@ -243,7 +243,7 @@ RSpec.describe ActivityPub::FetchRemoteStatusService do
end end
before do before do
8.times do |i| 5.times do |i|
status_json = { status_json = {
'@context': 'https://www.w3.org/ns/activitystreams', '@context': 'https://www.w3.org/ns/activitystreams',
id: "https://foo.bar/@foo/#{i}", id: "https://foo.bar/@foo/#{i}",
@ -257,12 +257,10 @@ RSpec.describe ActivityPub::FetchRemoteStatusService do
end end
end end
it 'creates at least some statuses' do it 'creates statuses but not more than limit allows' do
expect { subject.call(object[:id], prefetched_body: Oj.dump(object)) }.to change { sender.statuses.count }.by_at_least(2) expect { subject.call(object[:id], prefetched_body: Oj.dump(object)) }
end .to change { sender.statuses.count }.by_at_least(2)
.and change { sender.statuses.count }.by_at_most(3)
it 'creates no more account than the limit allows' do
expect { subject.call(object[:id], prefetched_body: Oj.dump(object)) }.to change { sender.statuses.count }.by_at_most(5)
end end
end end
@ -287,7 +285,7 @@ RSpec.describe ActivityPub::FetchRemoteStatusService do
end end
before do before do
8.times do |i| 5.times do |i|
status_json = { status_json = {
'@context': 'https://www.w3.org/ns/activitystreams', '@context': 'https://www.w3.org/ns/activitystreams',
id: "https://foo.bar/@foo/#{i}", id: "https://foo.bar/@foo/#{i}",
@ -309,12 +307,10 @@ RSpec.describe ActivityPub::FetchRemoteStatusService do
end end
end end
it 'creates at least some statuses' do it 'creates statuses but not more than limit allows' do
expect { subject.call(object[:id], prefetched_body: Oj.dump(object)) }.to change { sender.statuses.count }.by_at_least(2) expect { subject.call(object[:id], prefetched_body: Oj.dump(object)) }
end .to change { sender.statuses.count }.by_at_least(2)
.and change { sender.statuses.count }.by_at_most(3)
it 'creates no more account than the limit allows' do
expect { subject.call(object[:id], prefetched_body: Oj.dump(object)) }.to change { sender.statuses.count }.by_at_most(5)
end end
end end
end end