Sha256: 5378236cbc5bcc23e29b7a0d506ba33d9e6215c9f89210f17734504a8658870e

Contents?: true

Size: 1.33 KB

Versions: 1

Compression:

Stored size: 1.33 KB

Contents

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

describe VCR::HttpStubbingAdapters::FakeWeb do
  it_should_behave_like 'an http stubbing adapter', ['net/http'], [:method, :uri, :host, :path]

  describe '#check_version!' do
    disable_warnings
    before(:each) { @orig_version = FakeWeb::VERSION }
    after(:each)  { FakeWeb::VERSION = @orig_version }

    %w( 1.2.8 1.1.30 0.30.30 ).each do |version|
      it "raises an error when FakeWeb's version is #{version}" do
        FakeWeb::VERSION = version
        described_class.should_not_receive(:warn)
        expect { described_class.check_version! }.to raise_error(/You are using FakeWeb #{version}.  VCR requires version .* or greater/)
      end
    end

    %w( 1.3.0 1.3.1 1.3.99 ).each do |version|
      it "does nothing when FakeWeb's version is #{version}" do
        FakeWeb::VERSION = version
        described_class.should_not_receive(:warn)
        expect { described_class.check_version! }.to_not raise_error
      end
    end

    %w( 1.4.0 1.10.0 2.0.0 ).each do |version|
      it "prints a warning when FakeWeb's version is #{version}" do
        FakeWeb::VERSION = version
        described_class.should_receive(:warn).with(/VCR is known to work with FakeWeb ~> .*\./)
        expect { described_class.check_version! }.to_not raise_error
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
vcr-1.1.1 spec/http_stubbing_adapters/fakeweb_spec.rb