test/template/erb_util_test.rb in actionpack-2.0.5 vs test/template/erb_util_test.rb in actionpack-2.1.0

- old
+ new

@@ -1,56 +1,24 @@ -require "#{File.dirname(__FILE__)}/../abstract_unit" +require 'abstract_unit' class ErbUtilTest < Test::Unit::TestCase include ERB::Util - - def test_amp - assert_equal '&amp;', html_escape('&') - end - - def test_quot - assert_equal '&quot;', html_escape('"') - end - def test_lt - assert_equal '&lt;', html_escape('<') - end + ERB::Util::HTML_ESCAPE.each do |given, expected| + define_method "test_html_escape_#{expected.gsub /\W/, ''}" do + assert_equal expected, html_escape(given) + end - def test_gt - assert_equal '&gt;', html_escape('>') - end - - def test_rest_in_ascii - (0..127).to_a.map(&:chr).each do |chr| - next if %w(& " < >).include?(chr) - assert_equal chr, html_escape(chr) + unless given == '"' + define_method "test_json_escape_#{expected.gsub /\W/, ''}" do + assert_equal ERB::Util::JSON_ESCAPE[given], json_escape(given) + end end end -end -require "#{File.dirname(__FILE__)}/../abstract_unit" - -class ErbUtilTest < Test::Unit::TestCase - include ERB::Util - def test_amp - assert_equal '&amp;', html_escape('&') - end - - def test_quot - assert_equal '&quot;', html_escape('"') - end - - def test_lt - assert_equal '&lt;', html_escape('<') - end - - def test_gt - assert_equal '&gt;', html_escape('>') - end - def test_rest_in_ascii (0..127).to_a.map(&:chr).each do |chr| next if %w(& " < >).include?(chr) assert_equal chr, html_escape(chr) end end -end \ No newline at end of file +end