test/erb_test.rb in bmizerany-sinatra-0.9.0.5 vs test/erb_test.rb in bmizerany-sinatra-0.9.1
- old
+ new
@@ -45,6 +45,37 @@
erb 'Hello World', :layout => :layout2
}
assert ok?
assert_equal "ERB Layout!\nHello World\n", body
end
+
+ it "renders erb with blocks" do
+ mock_app {
+ def container
+ @_out_buf << "THIS."
+ yield
+ @_out_buf << "SPARTA!"
+ end
+ def is; "IS." end
+ get '/' do
+ erb '<% container do %> <%= is %> <% end %>'
+ end
+ }
+ get '/'
+ assert ok?
+ assert_equal 'THIS. IS. SPARTA!', body
+ end
+
+ it "can be used in a nested fashion for partials and whatnot" do
+ mock_app {
+ template(:inner) { "<inner><%= 'hi' %></inner>" }
+ template(:outer) { "<outer><%= erb :inner %></outer>" }
+ get '/' do
+ erb :outer
+ end
+ }
+
+ get '/'
+ assert ok?
+ assert_equal '<outer><inner>hi</inner></outer>', body
+ end
end