class Apotomo::TestCase
Testing is fun. Test your widgets!
This class helps you testing widgets where it can. It is similar as in a controller. A declarative test would look like
class BlogWidgetTest < Apotomo::TestCase has_widgets do |root| root << widget(:comments_widget, 'post-comments') end it "should be rendered nicely" do render_widget 'post-comments' assert_select "div#post-comments", "Comments for this post" end it "should redraw on :update" do trigger :update assert_response "jQuery(\"post-comments\").update ..." end
For unit testing, you can grab an instance of your tested widget.
it "should be visible" do assert root['post-comments'].visible? end
See also in Cell::TestCase.
Public Instance Methods
assert_response(*content)
click to toggle source
After a trigger
this assertion compares the actually triggered page updates with the passed.
Example:
trigger :submit, :source => "post-comments" assert_response "alert(\":submit clicked!\")", /\jQuery\("post-comments"\).update/
# File lib/apotomo/test_case.rb, line 108 def assert_response(*content) updates = root.page_updates i = 0 content.each do |assertion| if assertion.kind_of? Regexp assert_match assertion, updates[i] else assert_equal assertion, updates[i] end i+=1 end end