Pull out https/hostname setup for request specs to shared config (#31622)
parent
dc2f67f69b
commit
ef4920c6c9
|
@ -142,6 +142,12 @@ RSpec.configure do |config|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
config.before :each, type: :request do
|
||||||
|
# Use https and configured hostname in request spec requests
|
||||||
|
integration_session.https!
|
||||||
|
host! Rails.configuration.x.local_domain
|
||||||
|
end
|
||||||
|
|
||||||
config.after do
|
config.after do
|
||||||
Rails.cache.clear
|
Rails.cache.clear
|
||||||
redis.del(redis.keys)
|
redis.del(redis.keys)
|
||||||
|
|
|
@ -14,7 +14,7 @@ describe 'The account show page' do
|
||||||
expect(head_meta_content('og:title')).to match alice.display_name
|
expect(head_meta_content('og:title')).to match alice.display_name
|
||||||
expect(head_meta_content('og:type')).to eq 'profile'
|
expect(head_meta_content('og:type')).to eq 'profile'
|
||||||
expect(head_meta_content('og:image')).to match '.+'
|
expect(head_meta_content('og:image')).to match '.+'
|
||||||
expect(head_meta_content('og:url')).to match 'http://.+'
|
expect(head_meta_content('og:url')).to eq short_account_url(username: alice.username)
|
||||||
end
|
end
|
||||||
|
|
||||||
def head_link_icons
|
def head_link_icons
|
||||||
|
|
|
@ -10,12 +10,11 @@ describe 'API V1 Streaming' do
|
||||||
Rails.configuration.x.streaming_api_base_url = before
|
Rails.configuration.x.streaming_api_base_url = before
|
||||||
end
|
end
|
||||||
|
|
||||||
let(:headers) { { 'Host' => Rails.configuration.x.web_domain } }
|
|
||||||
|
|
||||||
context 'with streaming api on same host' do
|
context 'with streaming api on same host' do
|
||||||
describe 'GET /api/v1/streaming' do
|
describe 'GET /api/v1/streaming' do
|
||||||
it 'raises ActiveRecord::RecordNotFound' do
|
it 'raises ActiveRecord::RecordNotFound' do
|
||||||
get '/api/v1/streaming', headers: headers
|
integration_session.https!(false)
|
||||||
|
get '/api/v1/streaming'
|
||||||
|
|
||||||
expect(response).to have_http_status(404)
|
expect(response).to have_http_status(404)
|
||||||
end
|
end
|
||||||
|
|
|
@ -13,7 +13,7 @@ describe 'Link headers' do
|
||||||
it 'contains webfinger url in link header' do
|
it 'contains webfinger url in link header' do
|
||||||
link_header = link_header_with_type('application/jrd+json')
|
link_header = link_header_with_type('application/jrd+json')
|
||||||
|
|
||||||
expect(link_header.href).to eq 'http://www.example.com/.well-known/webfinger?resource=acct%3Atest%40cb6e6126.ngrok.io'
|
expect(link_header.href).to eq 'https://cb6e6126.ngrok.io/.well-known/webfinger?resource=acct%3Atest%40cb6e6126.ngrok.io'
|
||||||
expect(link_header.attr_pairs.first).to eq %w(rel lrdd)
|
expect(link_header.attr_pairs.first).to eq %w(rel lrdd)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -4,12 +4,7 @@ require 'rails_helper'
|
||||||
|
|
||||||
describe 'Media Proxy' do
|
describe 'Media Proxy' do
|
||||||
describe 'GET /media_proxy/:id' do
|
describe 'GET /media_proxy/:id' do
|
||||||
before do
|
before { stub_attachment_request }
|
||||||
integration_session.https! # TODO: Move to global rails_helper for all request specs?
|
|
||||||
host! Rails.configuration.x.local_domain # TODO: Move to global rails_helper for all request specs?
|
|
||||||
|
|
||||||
stub_request(:get, 'http://example.com/attachment.png').to_return(request_fixture('avatar.txt'))
|
|
||||||
end
|
|
||||||
|
|
||||||
context 'when attached to a status' do
|
context 'when attached to a status' do
|
||||||
let(:status) { Fabricate(:status) }
|
let(:status) { Fabricate(:status) }
|
||||||
|
@ -63,5 +58,15 @@ describe 'Media Proxy' do
|
||||||
.to have_http_status(404)
|
.to have_http_status(404)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def stub_attachment_request
|
||||||
|
stub_request(
|
||||||
|
:get,
|
||||||
|
'http://example.com/attachment.png'
|
||||||
|
)
|
||||||
|
.to_return(
|
||||||
|
request_fixture('avatar.txt')
|
||||||
|
)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue