mirror of
https://github.com/mastodon/mastodon.git
synced 2025-01-24 19:11:44 +01:00
50 lines
1.5 KiB
Ruby
50 lines
1.5 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
require 'rails_helper'
|
|
|
|
RSpec.describe 'Settings verification page' do
|
|
let(:user) { Fabricate :user }
|
|
|
|
before { sign_in user }
|
|
|
|
describe 'Viewing the verification page' do
|
|
it 'shows the page and updates attribution' do
|
|
visit settings_verification_path
|
|
|
|
expect(page)
|
|
.to have_content(verification_summary)
|
|
.and have_private_cache_control
|
|
|
|
fill_in attribution_field, with: " example.com\n\n https://example.net"
|
|
|
|
expect { click_on submit_button }
|
|
.to(change { user.account.reload.attribution_domains }.to(['example.com', 'example.net']))
|
|
expect(page)
|
|
.to have_content(success_message)
|
|
expect(find_field(attribution_field).value)
|
|
.to have_content("example.com\nexample.net")
|
|
end
|
|
|
|
it 'rejects invalid attribution domains' do
|
|
visit settings_verification_path
|
|
|
|
fill_in attribution_field, with: "example.com \n invalid_com"
|
|
|
|
expect { click_on submit_button }
|
|
.to_not(change { user.account.reload.attribution_domains })
|
|
expect(page)
|
|
.to have_content(I18n.t('activerecord.errors.messages.invalid_domain_on_line', value: 'invalid_com'))
|
|
expect(find_field(attribution_field).value)
|
|
.to have_content("example.com\ninvalid_com")
|
|
end
|
|
end
|
|
|
|
def verification_summary
|
|
I18n.t('verification.website_verification')
|
|
end
|
|
|
|
def attribution_field
|
|
I18n.t('simple_form.labels.account.attribution_domains')
|
|
end
|
|
end
|