diff options
author | Immae <immae@users.noreply.github.com> | 2017-05-22 15:40:04 +0200 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2017-05-22 15:40:04 +0200 |
commit | a94c152fd30cb91c1f4bd9c1e000ea68d0385bfa (patch) | |
tree | e97eeb4a3bd504a675fbee0557eb91ab857359ce /spec/controllers/well_known | |
parent | 9d04de1c8d3efb745cfcae3519cee016751b86ec (diff) |
Allow alternate domains for mastodon handlers (#3187)
Diffstat (limited to 'spec/controllers/well_known')
-rw-r--r-- | spec/controllers/well_known/webfinger_controller_spec.rb | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/spec/controllers/well_known/webfinger_controller_spec.rb b/spec/controllers/well_known/webfinger_controller_spec.rb index 6e493b037..4d588bf4e 100644 --- a/spec/controllers/well_known/webfinger_controller_spec.rb +++ b/spec/controllers/well_known/webfinger_controller_spec.rb @@ -6,6 +6,12 @@ describe WellKnown::WebfingerController, type: :controller do describe 'GET #show' do let(:alice) { Fabricate(:account, username: 'alice') } + around(:each) do |example| + before = Rails.configuration.x.alternate_domains + example.run + Rails.configuration.x.alternate_domains = before + end + it 'returns http success when account can be found' do get :show, params: { resource: alice.to_webfinger_s }, format: :json @@ -17,5 +23,23 @@ describe WellKnown::WebfingerController, type: :controller do expect(response).to have_http_status(:not_found) end + + it 'returns http success when account can be found with alternate domains' do + Rails.configuration.x.alternate_domains = ["foo.org"] + username, domain = alice.to_webfinger_s.split("@") + + get :show, params: { resource: "#{username}@foo.org" }, format: :json + + expect(response).to have_http_status(:success) + end + + it 'returns http not found when account can not be found with alternate domains' do + Rails.configuration.x.alternate_domains = ["foo.org"] + username, domain = alice.to_webfinger_s.split("@") + + get :show, params: { resource: "#{username}@bar.org" }, format: :json + + expect(response).to have_http_status(:not_found) + end end end |