diff options
Diffstat (limited to 'spec')
-rw-r--r-- | spec/controllers/xrd_controller_spec.rb | 2 | ||||
-rw-r--r-- | spec/models/account_spec.rb | 24 |
2 files changed, 25 insertions, 1 deletions
diff --git a/spec/controllers/xrd_controller_spec.rb b/spec/controllers/xrd_controller_spec.rb index e687cf9e0..b56c68f5c 100644 --- a/spec/controllers/xrd_controller_spec.rb +++ b/spec/controllers/xrd_controller_spec.rb @@ -14,7 +14,7 @@ RSpec.describe XrdController, type: :controller do let(:alice) { Fabricate(:account, username: 'alice') } it 'returns http success when account can be found' do - get :webfinger, params: { resource: "acct:#{alice.username}@#{Rails.configuration.x.local_domain}" } + get :webfinger, params: { resource: alice.to_webfinger_s } expect(response).to have_http_status(:success) end diff --git a/spec/models/account_spec.rb b/spec/models/account_spec.rb index 0c3b2b042..0906bb0ae 100644 --- a/spec/models/account_spec.rb +++ b/spec/models/account_spec.rb @@ -54,6 +54,30 @@ RSpec.describe Account, type: :model do end end + describe 'Local domain user methods' do + around do |example| + before = Rails.configuration.x.local_domain + example.run + Rails.configuration.x.local_domain = before + end + + describe '#to_webfinger_s' do + it 'returns a webfinger string for the account' do + Rails.configuration.x.local_domain = 'example.com' + + expect(subject.to_webfinger_s).to eq 'acct:alice@example.com' + end + end + + describe '#local_username_and_domain' do + it 'returns the username and local domain for the account' do + Rails.configuration.x.local_domain = 'example.com' + + expect(subject.local_username_and_domain).to eq 'alice@example.com' + end + end + end + describe '#acct' do it 'returns username for local users' do expect(subject.acct).to eql 'alice' |