Sha256: 9c99046f8f78313d0d52df949e31c919a84d4f125cb08a569bf75b94bae8df0b

Contents?: true

Size: 1.1 KB

Versions: 6

Compression:

Stored size: 1.1 KB

Contents

require 'spec_helper'

[ :rack_test_json, :httpclient_json ].each do |driver|
  describe "to require 'capybara/json'" do
    it "should register driver #{driver}" do
      Capybara.drivers.should have_key(driver)
    end
  end

  describe Capybara::Json do
    include described_class

    before(:all) do
      Capybara.app = JsonTestApp
      Capybara.current_driver = driver
    end

    after(:all) do
      Capybara.app = nil
      Capybara.current_driver = Capybara.default_driver
    end

    %w[ get get! delete delete! ].each do |method|
      it "register #{method}" do
        __send__(method, '/')
        body.should == { 'Hello world!' => 'Hello world!' }
      end
    end

    %w[ post post! put put! ].each do |method|
      it "register #{method}" do
        __send__(method, '/', {})
        body.should == { 'Hello world!' => 'Hello world!' }
      end

      it "#{method} send json" do
        json = { "some" => "args" }
        __send__(method, '/env', json)

        body['content_type'].should =~ %r"application/json"
        body['rack.input'].should == MultiJson.dump(json)
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
capybara-json-0.3.0.beta2 spec/capybara/json_spec.rb
capybara-json-0.3.0.beta1 spec/capybara/json_spec.rb
capybara-json-0.2.4 spec/capybara/json_spec.rb
capybara-json-0.2.3 spec/capybara/json_spec.rb
capybara-json-0.2.2 spec/capybara/json_spec.rb
capybara-json-0.2.1 spec/capybara/json_spec.rb