0
0
Fork 0

Fix additional issues with status cache hydration (#19747)

* Spare one SQL query when hydrating polls

* Improve tests

* Fix more discrepancies

* Fix possible crash when the status has no application set
This commit is contained in:
Claire 2022-11-04 20:01:33 +01:00 committed by GitHub
parent 03b991de6c
commit bb89f83cc0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 28 additions and 11 deletions

View file

@ -11,8 +11,20 @@ describe StatusCacheHydrator do
shared_examples 'shared behavior' do
context 'when handling a new status' do
let(:poll) { Fabricate(:poll) }
let(:status) { Fabricate(:status, poll: poll) }
it 'renders the same attributes as a full render' do
expect(subject).to include(compare_to_hash)
expect(subject).to eql(compare_to_hash)
end
end
context 'when handling a new status with own poll' do
let(:poll) { Fabricate(:poll, account: account) }
let(:status) { Fabricate(:status, poll: poll, account: account) }
it 'renders the same attributes as a full render' do
expect(subject).to eql(compare_to_hash)
end
end
@ -26,7 +38,7 @@ describe StatusCacheHydrator do
end
it 'renders the same attributes as a full render' do
expect(subject).to include(compare_to_hash)
expect(subject).to eql(compare_to_hash)
end
end
@ -36,7 +48,7 @@ describe StatusCacheHydrator do
end
it 'renders the same attributes as a full render' do
expect(subject).to include(compare_to_hash)
expect(subject).to eql(compare_to_hash)
end
end
@ -48,7 +60,7 @@ describe StatusCacheHydrator do
end
it 'renders the same attributes as a full render' do
expect(subject).to include(compare_to_hash)
expect(subject).to eql(compare_to_hash)
end
end
@ -62,7 +74,7 @@ describe StatusCacheHydrator do
end
it 'renders the same attributes as a full render' do
expect(subject).to include(compare_to_hash)
expect(subject).to eql(compare_to_hash)
end
end
@ -71,7 +83,7 @@ describe StatusCacheHydrator do
let(:reblog) { Fabricate(:status, poll: poll, account: account) }
it 'renders the same attributes as a full render' do
expect(subject).to include(compare_to_hash)
expect(subject).to eql(compare_to_hash)
end
end
@ -84,7 +96,7 @@ describe StatusCacheHydrator do
end
it 'renders the same attributes as a full render' do
expect(subject).to include(compare_to_hash)
expect(subject).to eql(compare_to_hash)
end
end
end