def test_foreach_widget
build_page{|src_output, map_output, xml_output|
src_output.print "class MainPage < WPM::PageContext\n"
src_output.print " attr_accessor :item\n"
src_output.print " attr_accessor :index\n"
src_output.print "end\n"
map_output.print "<?xml version=\"1.0\"?>\n"
map_output.print "<map xmlns=\"http://www.freedom.ne.jp/toki/ruby/PageMaker/Map\">\n"
map_output.print "\n"
map_output.print "<foreach name=\"ForeachWidget\">\n"
map_output.print "<list type=\"eval\">[ 'a', 'b', 'c' ]</list>\n"
map_output.print "<item type=\"accessor\">item</item>\n"
map_output.print "<index type=\"accessor\">index</index>\n"
map_output.print "</foreach>\n"
map_output.print "\n"
map_output.print "<string name=\"Item\">\n"
map_output.print "<value type=\"accessor\">item</value>\n"
map_output.print "</string>\n"
map_output.print "\n"
map_output.print "<string name=\"Index\">\n"
map_output.print "<value type=\"accessor\">index</value>\n"
map_output.print "</string>\n"
map_output.print "\n"
map_output.print "</map>\n"
xml_output.print "<?xml version=\"1.0\"?>\n"
xml_output.print "<html xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:pm=\"http://www.freedom.ne.jp/toki/ruby/PageMaker\">\n"
xml_output.print "<head><title>test of ForeachWidget</title></head>\n"
xml_output.print "<body>\n"
xml_output.print "<ul>\n"
xml_output.print "<pm:widget name=\"ForeachWidget\"\n"
xml_output.print "><li>(<pm:widget name=\"Index\" />) <pm:widget name=\"Item\" /></li>\n"
xml_output.print "</pm:widget\n"
xml_output.print "></ul>\n"
xml_output.print "</body>\n"
xml_output.print "</html>\n"
}
dst = "<html xmlns=\"http://www.w3.org/1999/xhtml\">\n"
dst += "<head><title>test of ForeachWidget</title></head>\n"
dst += "<body>\n"
dst += "<ul>\n"
dst += "<li>(1) a</li>\n"
dst += "<li>(2) b</li>\n"
dst += "<li>(3) c</li>\n"
dst += "</ul>\n"
dst += "</body>\n"
dst += "</html>"
assert_equal(dst, run_page)
assert_equal(0, @params_call)
assert_equal(0, @page_path_call)
end