about summary refs log tree commit diff
path: root/spec/lib
diff options
context:
space:
mode:
Diffstat (limited to 'spec/lib')
-rw-r--r--spec/lib/formatter_spec.rb23
1 files changed, 23 insertions, 0 deletions
diff --git a/spec/lib/formatter_spec.rb b/spec/lib/formatter_spec.rb
index d60d24bf6..0c2248cae 100644
--- a/spec/lib/formatter_spec.rb
+++ b/spec/lib/formatter_spec.rb
@@ -170,6 +170,29 @@ RSpec.describe Formatter do
     end
   end
 
+
+  describe '#format_spoiler' do
+    subject { Formatter.instance.format_spoiler(status) }
+
+    context 'given a post containing plain text' do
+      let(:status)  { Fabricate(:status, text: 'text', spoiler_text: 'Secret!', uri: nil) }
+
+      it 'Returns the spoiler text' do
+        is_expected.to eq 'Secret!'
+      end
+    end
+
+    context 'given a post with an emoji shortcode at the start' do
+      let!(:emoji) { Fabricate(:custom_emoji) }
+      let(:status)  { Fabricate(:status, text: 'text', spoiler_text: ':coolcat: Secret!', uri: nil) }
+      let(:text) { ':coolcat: Beep boop' }
+
+      it 'converts the shortcode to an image tag' do
+        is_expected.to match(/<img draggable="false" class="emojione" alt=":coolcat:"/)
+      end
+    end
+  end
+
   describe '#format' do
     subject { Formatter.instance.format(status) }