require 'minitest/autorun'
require 'prism'
class ViewHelpersTest < Minitest::Test
def render(source, locals = {}, helpers = nil)
Prism::Template.render(source, locals, nil, helpers)
end
def test_tag_renders_void_element
assert_equal '
', render('<%== tag(:br, class: "hint") %>')
end
def test_tag_omits_false_and_nil_attributes
assert_equal '', render('<%== tag(:input, disabled: false, value: nil) %>')
end
def test_tag_boolean_true_attribute_renders_itself
assert_equal '', render('<%== tag(:input, disabled: true) %>')
end
def test_content_tag_without_block_escapes_content
result = render('<%== content_tag(:p, "hi") %>')
assert_equal '
<b>hi</b>
', result end def test_content_tag_with_block_appends_inline_and_nests template = '<% content_tag(:div, class: "wrap") do %><%= "safe & sound" %><% end %>' assert_equal '