Define ajax stubs in your request specs.
JavaScript Ruby
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app/assets/javascripts
lib
spec
.gitignore
.travis.yml
Gemfile
LICENSE
README.md
Rakefile
mockjax.gemspec

README.md

Mockjax travis-ci

Mockjax gem for rails and rack applications. Define javascript mocks in your request specs

Installation

Add this line to your application's Gemfile:

gem 'mockjax'

Usage

Assuming you're using capybara...

Rack

# spec/spec_helper.rb

Capybara.app = Rack::Build.new {
    use Rack::Mockjax
    run MyApp
}

Rails 3

# config/initializers/test.rb

config.middleware.use Rack::Mockjax

Then define your stubs like you would with any other stubbing library:

before do
  stub_ajax url: '/test', responseText: { message: 'hello world' }
end

Now we can make requests to /test from javascript and our mock will be used. Awesome!

$.getJSON '/test', (data) -> console.log(data.message) # => 'hello world'