Speed-up on `StatusesController` spec (#25549)

main
Matt Jankowski 2023-06-22 08:51:53 -04:00 committed by GitHub
parent 8d2c26834f
commit 63d15d5330
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 21 additions and 216 deletions

View File

@ -75,23 +75,11 @@ describe StatusesController do
context 'with HTML' do context 'with HTML' do
let(:format) { 'html' } let(:format) { 'html' }
it 'returns http success' do it 'renders status successfully', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns public Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'public' expect(response.headers['Cache-Control']).to include 'public'
end
it 'renders status' do
expect(response).to render_template(:show) expect(response).to render_template(:show)
expect(response.body).to include status.text expect(response.body).to include status.text
end end
@ -100,25 +88,13 @@ describe StatusesController do
context 'with JSON' do context 'with JSON' do
let(:format) { 'json' } let(:format) { 'json' }
it 'returns http success' do
expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it_behaves_like 'cacheable response' it_behaves_like 'cacheable response'
it 'returns Content-Type header' do it 'renders ActivityPub Note object successfully', :aggregate_failures do
expect(response).to have_http_status(200)
expect(response.headers['Link'].to_s).to include 'activity+json'
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
expect(response.headers['Content-Type']).to include 'application/activity+json' expect(response.headers['Content-Type']).to include 'application/activity+json'
end
it 'renders ActivityPub Note object' do
json = body_as_json json = body_as_json
expect(json[:content]).to include status.text expect(json[:content]).to include status.text
end end
@ -199,23 +175,11 @@ describe StatusesController do
context 'with HTML' do context 'with HTML' do
let(:format) { 'html' } let(:format) { 'html' }
it 'returns http success' do it 'renders status successfully', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'renders status' do
expect(response).to render_template(:show) expect(response).to render_template(:show)
expect(response.body).to include status.text expect(response.body).to include status.text
end end
@ -224,27 +188,12 @@ describe StatusesController do
context 'with JSON' do context 'with JSON' do
let(:format) { 'json' } let(:format) { 'json' }
it 'returns http success' do it 'renders ActivityPub Note object successfully', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'returns Content-Type header' do
expect(response.headers['Content-Type']).to include 'application/activity+json' expect(response.headers['Content-Type']).to include 'application/activity+json'
end
it 'renders ActivityPub Note object' do
json = body_as_json json = body_as_json
expect(json[:content]).to include status.text expect(json[:content]).to include status.text
end end
@ -263,23 +212,11 @@ describe StatusesController do
context 'with HTML' do context 'with HTML' do
let(:format) { 'html' } let(:format) { 'html' }
it 'returns http success' do it 'renders status successfully', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'renders status' do
expect(response).to render_template(:show) expect(response).to render_template(:show)
expect(response.body).to include status.text expect(response.body).to include status.text
end end
@ -288,27 +225,12 @@ describe StatusesController do
context 'with JSON' do context 'with JSON' do
let(:format) { 'json' } let(:format) { 'json' }
it 'returns http success' do it 'renders ActivityPub Note object successfully', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'returns Content-Type header' do
expect(response.headers['Content-Type']).to include 'application/activity+json' expect(response.headers['Content-Type']).to include 'application/activity+json'
end
it 'renders ActivityPub Note object' do
json = body_as_json json = body_as_json
expect(json[:content]).to include status.text expect(json[:content]).to include status.text
end end
@ -350,23 +272,11 @@ describe StatusesController do
context 'with HTML' do context 'with HTML' do
let(:format) { 'html' } let(:format) { 'html' }
it 'returns http success' do it 'renders status successfully', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'renders status' do
expect(response).to render_template(:show) expect(response).to render_template(:show)
expect(response.body).to include status.text expect(response.body).to include status.text
end end
@ -375,27 +285,12 @@ describe StatusesController do
context 'with JSON' do context 'with JSON' do
let(:format) { 'json' } let(:format) { 'json' }
it 'returns http success' do it 'renders ActivityPub Note object successfully' do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'returns Content-Type header' do
expect(response.headers['Content-Type']).to include 'application/activity+json' expect(response.headers['Content-Type']).to include 'application/activity+json'
end
it 'renders ActivityPub Note object' do
json = body_as_json json = body_as_json
expect(json[:content]).to include status.text expect(json[:content]).to include status.text
end end
@ -463,23 +358,11 @@ describe StatusesController do
context 'with HTML' do context 'with HTML' do
let(:format) { 'html' } let(:format) { 'html' }
it 'returns http success' do it 'renders status successfully', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'renders status' do
expect(response).to render_template(:show) expect(response).to render_template(:show)
expect(response.body).to include status.text expect(response.body).to include status.text
end end
@ -488,25 +371,13 @@ describe StatusesController do
context 'with JSON' do context 'with JSON' do
let(:format) { 'json' } let(:format) { 'json' }
it 'returns http success' do
expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it_behaves_like 'cacheable response' it_behaves_like 'cacheable response'
it 'returns Content-Type header' do it 'renders ActivityPub Note object successfully', :aggregate_failures do
expect(response).to have_http_status(200)
expect(response.headers['Link'].to_s).to include 'activity+json'
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
expect(response.headers['Content-Type']).to include 'application/activity+json' expect(response.headers['Content-Type']).to include 'application/activity+json'
end
it 'renders ActivityPub Note object' do
json = body_as_json json = body_as_json
expect(json[:content]).to include status.text expect(json[:content]).to include status.text
end end
@ -525,23 +396,11 @@ describe StatusesController do
context 'with HTML' do context 'with HTML' do
let(:format) { 'html' } let(:format) { 'html' }
it 'returns http success' do it 'renders status successfully', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'renders status' do
expect(response).to render_template(:show) expect(response).to render_template(:show)
expect(response.body).to include status.text expect(response.body).to include status.text
end end
@ -550,27 +409,12 @@ describe StatusesController do
context 'with JSON' do context 'with JSON' do
let(:format) { 'json' } let(:format) { 'json' }
it 'returns http success' do it 'renders ActivityPub Note object successfully' do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'returns Content-Type header' do
expect(response.headers['Content-Type']).to include 'application/activity+json' expect(response.headers['Content-Type']).to include 'application/activity+json'
end
it 'renders ActivityPub Note object' do
json = body_as_json json = body_as_json
expect(json[:content]).to include status.text expect(json[:content]).to include status.text
end end
@ -612,23 +456,11 @@ describe StatusesController do
context 'with HTML' do context 'with HTML' do
let(:format) { 'html' } let(:format) { 'html' }
it 'returns http success' do it 'renders status successfully', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'renders status' do
expect(response).to render_template(:show) expect(response).to render_template(:show)
expect(response.body).to include status.text expect(response.body).to include status.text
end end
@ -637,27 +469,12 @@ describe StatusesController do
context 'with JSON' do context 'with JSON' do
let(:format) { 'json' } let(:format) { 'json' }
it 'returns http success' do it 'renders ActivityPub Note object', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns private Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'private' expect(response.headers['Cache-Control']).to include 'private'
end
it 'returns Content-Type header' do
expect(response.headers['Content-Type']).to include 'application/activity+json' expect(response.headers['Content-Type']).to include 'application/activity+json'
end
it 'renders ActivityPub Note object' do
json = body_as_json json = body_as_json
expect(json[:content]).to include status.text expect(json[:content]).to include status.text
end end
@ -933,23 +750,11 @@ describe StatusesController do
get :embed, params: { account_username: status.account.username, id: status.id } get :embed, params: { account_username: status.account.username, id: status.id }
end end
it 'returns http success' do it 'renders status successfully', :aggregate_failures do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end
it 'returns Link header' do
expect(response.headers['Link'].to_s).to include 'activity+json' expect(response.headers['Link'].to_s).to include 'activity+json'
end
it 'returns Vary header' do
expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie'
end
it 'returns public Cache-Control header' do
expect(response.headers['Cache-Control']).to include 'public' expect(response.headers['Cache-Control']).to include 'public'
end
it 'renders status' do
expect(response).to render_template(:embed) expect(response).to render_template(:embed)
expect(response.body).to include status.text expect(response.body).to include status.text
end end