How do you test an AJAX request with RSpec/RoR?

user480826 picture user480826 · Oct 19, 2010 · Viewed 21.3k times · Source

I'm fairly new to RoR and recently started learning BDD/Rspec for testing my application. I've been looking for a way to spec an AJAX request, but so far I haven't found much documentation on this at all.

Anyone know how to do this? I'm using rails 2.3.8, rspec 1.3.0 and mocha 0.9.8 for my stubs (which I'm also in the process of learning...)

Answer

Robert Speicher picture Robert Speicher · Oct 19, 2010

If you're talking about testing it inside your controller specs, where you normally call

get :index

to make an HTTP request to the index action, you would instead call

xhr :get, :index

to make an XmlHttpRequest (AJAX) request to the index action using GET.