Changeset 91
- Timestamp:
- 11/04/2006 06:15:50 (2 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 2 modified
-
lib/markaby/builder.rb (modified) (4 diffs)
-
test/rails/markaby/index.mab (added)
-
test/rails_test.rb (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/lib/markaby/builder.rb
r88 r91 69 69 end 70 70 71 @builder = ::Builder::XmlMarkup.new(:indent => @indent, :target => @streams.last) 72 class << @builder 73 attr_accessor :target, :level 74 end 71 @builder = XmlMarkup.new(:indent => @indent, :target => @streams.last) 75 72 76 73 text(capture(&block)) if block … … 84 81 # Write a +string+ to the HTML stream without escaping it. 85 82 def text(string) 86 @builder << "#{string}"83 @builder << string.to_s 87 84 nil 88 85 end … … 163 160 elsif @assigns.has_key?(sym) 164 161 @assigns[sym] 162 elsif @assigns.has_key?(stringy_key = sym.to_s) 163 # Rails' ActionView assigns hash has string keys for 164 # instance variables that are defined in the controller. 165 @assigns[stringy_key] 165 166 elsif @helpers.instance_variables.include?("@#{sym}") 166 167 @helpers.instance_variable_get("@#{sym}") … … 267 268 end 268 269 270 class XmlMarkup < ::Builder::XmlMarkup 271 attr_accessor :target, :level 272 end 273 269 274 end -
trunk/test/rails_test.rb
r90 r91 8 8 9 9 def rescue_action(e) raise e end; 10 11 def index 12 @monkey_names = @@locals[:monkeys].map(&:name) 13 end 10 14 11 15 def partial_rendering … … 32 36 @controller = MarkabyController.new 33 37 @controller.template_root = File.join(File.dirname(__FILE__), 'rails') 38 @expected_monkey_names = '<ul><li>Frank</li><li>Benny</li><li>Paul</li></ul>' 39 end 40 41 def test_index 42 process :index 43 assert_response :success 44 assert_template 'markaby/index' 45 assert_equal @expected_monkey_names, @response.body 34 46 end 35 47 … … 51 63 52 64 def test_inline_helper_rendering 53 Markaby::Builder.set :indent, 054 65 process :inline_helper_rendering 55 66 assert_response :success 56 assert_equal '<ul><li>Frank</li><li>Benny</li><li>Paul</li></ul>', @response.body67 assert_equal @expected_monkey_names, @response.body 57 68 end 58 69 59 70 def test_basic_inline_rendering 60 Markaby::Builder.set :indent, 061 71 process :basic_inline_rendering 62 72 assert_response :success 63 assert_equal '<ul><li>Frank</li><li>Benny</li><li>Paul</li></ul>', @response.body73 assert_equal @expected_monkey_names, @response.body 64 74 end 65 75