ShouldPricot
Test the html in your functional tests using the wicked Hpricot CSS / XPath selectors. Requires Hpricot. Designed for use with ActiveSupport::TestCase (Test/Unit)
Example
-
I want to test something appears on the page:
element('h1').should_be_present
-
I want to test something does not appear:
element('#power_user a[@href="/create/havok"]').should_be_missing
-
I want to check an elements contents:
element('.intro p').should_be 'Welcome'
-
I want to count the number of times something appears:
count('ol#girlfriends li').should_be 6
-
You can also pass a regex
element("div.wicked").should_be /containg this/
-
Even better
element('.date').should_contain "today"
-
You can also pass in html
element("div.wicked", some_html).should_be_present
Please refer to the Hpricot library for more examples of the kind of selectors available.
Mad props to Kid80 for the regex matching patch.
Copyright © 2009 [Brent Greeff], released under the MIT license