Lee Longmore wrote:
I am new to RSpec and have just started to drive out my first Rails view
using a spec. I have used the The RSpec Book (beta) to do the basic
stuff like testing for the presence of a field but I am unsure where to
start for driving out some AJAX functionality.
In the view, I will have a text field that a user can enter a name into
and then click on a link to check the availability of this name or
otherwise. I plan to implement the check as an AJAX request, returning
an HTML snippet or 'available' or 'not available'.
gem install nokogiri rkelly assert2
...
require 'assert2/rjs'
specify 'a simple passing assertion works' do
xhr :get, :xhr_availability, :name => 'masone'
js = @response.body
js.should send_js_to(:replace_html, 'label_7', /available/)
js.should send_js_to(:replace_html, 'label_7'){
span /available/
}
end
The first send_js_to just checks for a regexp to match the payload of the
Element.update call. The second one uses {} to generate a Nokogiri Builder
snippet of HTML, and match that. Here it's just span, but it could have been
more complex HTML. Google assert_xhtml for more on that.
I would appreciate some help on what sort of examples one might write
and the various mocks, stubs and helpers etc that can be used. Or
alternatively a pointer to some existing information/tutorials on this
topic.
The RSpec community, in my exalted opinion, mocks too much! If you can't use the
real thing, it's too coupled, so break it up!
--
Phlip
http://flea.sourceforge.net/resume.html
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users