diff options
author | Claire <claire.github-309c@sitedethib.com> | 2023-03-02 17:32:38 +0100 |
---|---|---|
committer | Claire <claire.github-309c@sitedethib.com> | 2023-03-02 17:32:38 +0100 |
commit | 276c1d32d6fc857a768244c3f5d835c9c5da1747 (patch) | |
tree | 4619ffd871db93c3932cfb79f9852368096dc5b5 /spec/helpers/admin | |
parent | 6a4be4e96677eb3e1303ddcab8f8b4bea7298453 (diff) | |
parent | af578e8ce0aabdbe9c0cd3d72d6fa2cc30b7fc66 (diff) |
Merge branch 'main' into glitch-soc/merge-upstream
Diffstat (limited to 'spec/helpers/admin')
-rw-r--r-- | spec/helpers/admin/trends/statuses_helper_spec.rb | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/spec/helpers/admin/trends/statuses_helper_spec.rb b/spec/helpers/admin/trends/statuses_helper_spec.rb new file mode 100644 index 000000000..92caae690 --- /dev/null +++ b/spec/helpers/admin/trends/statuses_helper_spec.rb @@ -0,0 +1,54 @@ +# frozen_string_literal: true + +require 'rails_helper' + +describe Admin::Trends::StatusesHelper do + describe '.one_line_preview' do + before do + allow(helper).to receive(:current_user).and_return(Fabricate.build(:user)) + end + + context 'with a local status' do + let(:status) { Fabricate.build(:status, text: 'Test local status') } + + it 'renders a correct preview text' do + result = helper.one_line_preview(status) + + expect(result).to eq 'Test local status' + end + end + + context 'with a remote status' do + let(:status) { Fabricate.build(:status, uri: 'https://sfd.sdf', text: '<html><body><p>Test remote status</p><p>text</p></body></html>') } + + it 'renders a correct preview text' do + result = helper.one_line_preview(status) + + expect(result).to eq 'Test remote status' + end + end + + context 'with a status that has empty text' do + let(:status) { Fabricate.build(:status, text: '') } + + it 'renders a correct preview text' do + result = helper.one_line_preview(status) + + expect(result).to eq '' + end + end + + context 'with a status that has emoji' do + before { Fabricate(:custom_emoji, shortcode: 'florpy') } + + let(:status) { Fabricate(:status, text: 'hello there :florpy:') } + + it 'renders a correct preview text' do + result = helper.one_line_preview(status) + + expect(result).to match 'hello there' + expect(result).to match '<img rel="emoji"' + end + end + end +end |