mirror of
https://github.com/glitch-soc/mastodon
synced 2025-04-25 18:15:37 +00:00
49 lines
1.4 KiB
Ruby
49 lines
1.4 KiB
Ruby
|
# frozen_string_literal: true
|
||
|
|
||
|
require 'rails_helper'
|
||
|
|
||
|
RSpec.describe 'Account notes', :inline_jobs, :js, :streaming do
|
||
|
include ProfileStories
|
||
|
|
||
|
let(:email) { 'test@example.com' }
|
||
|
let(:password) { 'password' }
|
||
|
let(:confirmed_at) { Time.zone.now }
|
||
|
let(:finished_onboarding) { true }
|
||
|
|
||
|
let!(:other_account) { Fabricate(:account) }
|
||
|
|
||
|
before { as_a_logged_in_user }
|
||
|
|
||
|
it 'can be written and viewed' do
|
||
|
visit_profile(other_account)
|
||
|
|
||
|
note_text = 'This is a personal note'
|
||
|
fill_in 'Click to add note', with: note_text
|
||
|
|
||
|
# This is a bit awkward since there is no button to save the change
|
||
|
# The easiest way is to send ctrl+enter ourselves
|
||
|
find_field(class: 'account__header__account-note__content').send_keys [:control, :enter]
|
||
|
|
||
|
expect(page)
|
||
|
.to have_css('.account__header__account-note__content', text: note_text)
|
||
|
|
||
|
# Navigate back and forth and ensure the comment is still here
|
||
|
visit root_url
|
||
|
visit_profile(other_account)
|
||
|
|
||
|
expect(AccountNote.find_by(account: bob.account, target_account: other_account).comment)
|
||
|
.to eq note_text
|
||
|
|
||
|
expect(page)
|
||
|
.to have_css('.account__header__account-note__content', text: note_text)
|
||
|
end
|
||
|
|
||
|
def visit_profile(account)
|
||
|
visit short_account_path(account)
|
||
|
|
||
|
expect(page)
|
||
|
.to have_css('div.app-holder')
|
||
|
.and have_css('form.compose-form')
|
||
|
end
|
||
|
end
|