Sha256: 3b55060cf6c37b6d867a46f315eabbf8feb079da1c8b77f2474ae259b3d35145

Contents?: true

Size: 1.33 KB

Versions: 6

Compression:

Stored size: 1.33 KB

Contents

require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
require 'webmock_shared'

unless RUBY_PLATFORM =~ /java/
  require 'typhoeus_hydra_spec_helper'

  describe "Webmock with Typhoeus::Hydra" do
    include TyphoeusHydraSpecHelper

    it_should_behave_like "WebMock"

    describe "Typhoeus::Hydra features" do
      before(:each) do
        WebMock.disable_net_connect!
        WebMock.reset!
      end

      describe "callbacks" do
        before(:each) do
          @hydra = Typhoeus::Hydra.new
          @request = Typhoeus::Request.new("http://example.com")
        end

        it "should call on_complete with 2xx response" do
          body = "on_success fired"
          stub_request(:any, "example.com").to_return(:body => body)

          test = nil
          @hydra.on_complete do |c|
            test = c.body
          end
          @hydra.queue @request
          @hydra.run
          test.should == body
        end

        it "should call on_complete with 5xx response" do
          response_code = 599
          stub_request(:any, "example.com").to_return(:status => [response_code, "Server On Fire"])

          test = nil
          @hydra.on_complete do |c|
            test = c.code
          end
          @hydra.queue @request
          @hydra.run
          test.should == response_code
        end

      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
webmock-1.7.5 spec/typhoeus_hydra_spec.rb
webmock-1.7.4 spec/typhoeus_hydra_spec.rb
webmock-1.7.3 spec/typhoeus_hydra_spec.rb
webmock-1.7.2 spec/typhoeus_hydra_spec.rb
webmock-1.7.1 spec/typhoeus_hydra_spec.rb
webmock-1.7.0 spec/typhoeus_hydra_spec.rb