mirror of
https://github.com/mastodon/mastodon.git
synced 2024-11-17 20:16:14 +00:00
54 lines
1.5 KiB
Ruby
54 lines
1.5 KiB
Ruby
|
# frozen_string_literal: true
|
||
|
|
||
|
require 'rails_helper'
|
||
|
|
||
|
feature 'Profile' do
|
||
|
include ProfileStories
|
||
|
|
||
|
given(:local_domain) { ENV['LOCAL_DOMAIN'] }
|
||
|
|
||
|
background do
|
||
|
as_a_logged_in_user
|
||
|
with_alice_as_local_user
|
||
|
end
|
||
|
|
||
|
subject { page }
|
||
|
|
||
|
scenario 'I can view Annes public account' do
|
||
|
visit account_path('alice')
|
||
|
|
||
|
is_expected.to have_title("alice (@alice@#{local_domain})")
|
||
|
|
||
|
within('.public-account-header h1') do
|
||
|
is_expected.to have_content("alice @alice@#{local_domain}")
|
||
|
end
|
||
|
|
||
|
bio_elem = first('.public-account-bio')
|
||
|
expect(bio_elem).to have_content(alice_bio)
|
||
|
# The bio has hashtags made clickable
|
||
|
expect(bio_elem).to have_link('cryptology')
|
||
|
expect(bio_elem).to have_link('science')
|
||
|
# Nicknames are make clickable
|
||
|
expect(bio_elem).to have_link('@alice')
|
||
|
expect(bio_elem).to have_link('@bob')
|
||
|
# Nicknames not on server are not clickable
|
||
|
expect(bio_elem).not_to have_link('@pepe')
|
||
|
end
|
||
|
|
||
|
scenario 'I can change my account' do
|
||
|
visit settings_profile_path
|
||
|
fill_in 'Display name', with: 'Bob'
|
||
|
fill_in 'Bio', with: 'Bob is silent'
|
||
|
click_on 'Save changes'
|
||
|
is_expected.to have_content 'Changes successfully saved!'
|
||
|
|
||
|
# View my own public profile and see the changes
|
||
|
click_link "Bob @bob@#{local_domain}"
|
||
|
|
||
|
within('.public-account-header h1') do
|
||
|
is_expected.to have_content("Bob @bob@#{local_domain}")
|
||
|
end
|
||
|
expect(first('.public-account-bio')).to have_content('Bob is silent')
|
||
|
end
|
||
|
end
|