Sha256: 44bfac367aae9c1de714e7f90cc45ee0b32a765b6ed2ca765207a27b19b96d8d
Contents?: true
Size: 1.28 KB
Versions: 1
Compression:
Stored size: 1.28 KB
Contents
require 'test_helper' # Pull the EmojiHelper example from the docs readme = File.expand_path('../../README.md', __FILE__) docs = File.open(readme, 'r:UTF-8') { |f| f.read } eval docs.match(/^module.+?^end/m)[0] String.class_eval do def html_safe() self end def present?() !empty? end end class DocumentationTest < TestCase module Helper extend EmojiHelper def self.h(str) str.gsub('<', '<').gsub('>', '>') end def self.image_path(img) "/images/#{img}?123" end end test "replaces emoji syntax with images" do assert_equal "It's raining " \ '<img alt="cat" src="/images/emoji/1f431.svg?123" style="vertical-align:middle" width="20" height="20" />s and ' \ '<img alt="dog" src="/images/emoji/1f436.svg?123" style="vertical-align:middle" width="20" height="20" />s!', Helper.emojify("It's raining :cat:s and :dog:s!") end test "doesn't replace unknown emoji" do content = ":jupiter: is in :space:" assert_equal content, Helper.emojify(content) end test "escapes other HTML" do assert_equal "You have been <script>alert('pwned!')</script>", Helper.emojify("You have been <script>alert('pwned!')</script>") end test "returns nil for blank content" do assert_nil Helper.emojify('') end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
negarmoji-0.1.1 | test/documentation_test.rb |