Class Apotomo::TestCase
In: lib/apotomo/test_case.rb
Parent: Cell::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.

Methods

Included Modules

Apotomo::WidgetShortcuts TestMethods

Classes and Modules

Module Apotomo::TestCase::TestMethods

Public Instance methods

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/

[Validate]