aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test/template/erb
diff options
context:
space:
mode:
authorCarlhuda <carlhuda@engineyard.com>2010-03-09 18:00:28 -0800
committerwycats <wycats@gmail.com>2010-03-09 23:44:12 -0800
commit4464b8e87bedd69816d4658c9386cc360affb62e (patch)
tree72598e47159bbdf36cdb4fcfd31682dce4877b9e /actionpack/test/template/erb
parentf30b7a0903ac1859a139bce96856d228c59a80b7 (diff)
downloadrails-4464b8e87bedd69816d4658c9386cc360affb62e.tar.gz
rails-4464b8e87bedd69816d4658c9386cc360affb62e.tar.bz2
rails-4464b8e87bedd69816d4658c9386cc360affb62e.zip
Deprecate block_called_from_erb? pending a solution for getting it into apps
Diffstat (limited to 'actionpack/test/template/erb')
-rw-r--r--actionpack/test/template/erb/tag_helper_test.rb60
1 files changed, 60 insertions, 0 deletions
diff --git a/actionpack/test/template/erb/tag_helper_test.rb b/actionpack/test/template/erb/tag_helper_test.rb
new file mode 100644
index 0000000000..d9ca828b43
--- /dev/null
+++ b/actionpack/test/template/erb/tag_helper_test.rb
@@ -0,0 +1,60 @@
+require "abstract_unit"
+
+module ERBTest
+ module SharedTagHelpers
+ extend ActiveSupport::Testing::Declarative
+
+ def render_content(start, inside)
+ template = block_helper(start, inside)
+ ActionView::Template::Handlers::Erubis.new(template).evaluate(context.new)
+ end
+
+ test "percent equals works for content_tag" do
+ assert_equal "<div>Hello world</div>", render_content("content_tag(:div)", "Hello world")
+ end
+
+ test "percent equals works for javascript_tag" do
+ expected_output = "<script type=\"text/javascript\">\n//<![CDATA[\nalert('Hello')\n//]]>\n</script>"
+ assert_equal expected_output, render_content("javascript_tag", "alert('Hello')")
+ end
+
+ test "percent equals works for javascript_tag with options" do
+ expected_output = "<script id=\"the_js_tag\" type=\"text/javascript\">\n//<![CDATA[\nalert('Hello')\n//]]>\n</script>"
+ assert_equal expected_output, render_content("javascript_tag(:id => 'the_js_tag')", "alert('Hello')")
+ end
+ end
+
+ class TagHelperTest < ActiveSupport::TestCase
+ def context
+ Class.new do
+ include ActionView::Helpers::TagHelper
+ include ActionView::Helpers::JavaScriptHelper
+
+ attr_accessor :output_buffer
+ end
+ end
+
+ def block_helper(str, rest)
+ "<%= #{str} do %>#{rest}<% end %>"
+ end
+
+ include SharedTagHelpers
+ end
+
+ class DeprecatedTagHelperTest < ActiveSupport::TestCase
+ def context
+ Class.new do
+ include ActionView::Helpers::TagHelper
+ include ActionView::Helpers::JavaScriptHelper
+ include ActionView::Helpers::DeprecatedBlockHelpers
+ attr_accessor :output_buffer
+ end
+ end
+
+ def block_helper(str, rest)
+ "<% __in_erb_template=true %><% #{str} do %>#{rest}<% end %>"
+ end
+
+ include SharedTagHelpers
+ end
+end \ No newline at end of file