nice_assert_select
Tired of ugly assert_select calls?
assert_select "form[action=?][method=post]", sources_path do
assert_select "input[type=text][name=?]", 'source[name]'
assert_select "input[type=hidden][name=_method][value=put]"
assert_select "input[type=submit]"
end
How about some nice assert_selects?
assert_select form(:action => :post, :action => sources_path) do
assert_select text_field(:name => 'source[name]')
assert_select form_method_field(:put)
assert_select
end
nice_assert_select provides helpers for making the calls more rubyish and more readable. Currently, they are mostly limited to form related selectors that do attribute matching.
form
text_field
hidden_field
password_field
form_method_field (this is the hidden field Rails uses for determing what HTTP method to use, since browsers are generally limited to GET and POST)
It is by no means comprehensive, as it was extracted from a project which only needed these assert_selects.
Installing
For Rails 2.1 and on, add this to your config/environment.rb:
config.gem 'technicalpickles-nice_assert_select', :lib => 'nice_assert_select', :source => 'http://gems.github.com'
COPYRIGHT
Copyright © 2009 Josh Nichols. See LICENSE for details.