Sha256: b9671372a43ea043cb59b13fe43ff73f6bdf48818d82e5b342e11be98db0d9a8

Contents?: true

Size: 936 Bytes

Versions: 8

Compression:

Stored size: 936 Bytes

Contents

# frozen_string_literal: true

require "spec_helper"

describe ProxyFetcher::Document::Adapters do
  describe "#lookup" do
    it "returns predefined adapters if symbol or string passed" do
      expect(described_class.lookup("nokogiri")).to eq(ProxyFetcher::Document::NokogiriAdapter)

      expect(described_class.lookup(:oga)).to eq(ProxyFetcher::Document::OgaAdapter)
    end

    it "returns self if class passed" do
      expect(described_class.lookup(Struct)).to eq(Struct)
    end

    it "raises an exception if passed value is blank" do
      expect { described_class.lookup(nil) }.to raise_error(ProxyFetcher::Exceptions::BlankAdapter)
      expect { described_class.lookup("") }.to raise_error(ProxyFetcher::Exceptions::BlankAdapter)
    end

    it "raises an exception if adapter doesn't exist" do
      expect { described_class.lookup("wrong") }.to raise_error(ProxyFetcher::Exceptions::UnknownAdapter)
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
proxy_fetcher-0.17.0 spec/proxy_fetcher/document/adapters_spec.rb
proxy_fetcher-0.16.0 spec/proxy_fetcher/document/adapters_spec.rb
proxy_fetcher-0.15.1 spec/proxy_fetcher/document/adapters_spec.rb
proxy_fetcher-0.15.0 spec/proxy_fetcher/document/adapters_spec.rb
proxy_fetcher-0.14.0 spec/proxy_fetcher/document/adapters_spec.rb
proxy_fetcher-0.13.0 spec/proxy_fetcher/document/adapters_spec.rb
proxy_fetcher-0.12.0 spec/proxy_fetcher/document/adapters_spec.rb
proxy_fetcher-0.11.0 spec/proxy_fetcher/document/adapters_spec.rb