Sha256: f01a6845f4efda369b5a55e63c1b39a458e5d0220748e78640d92c7743a507a8

Contents?: true

Size: 906 Bytes

Versions: 2

Compression:

Stored size: 906 Bytes

Contents

require 'spec_helper'

describe ProxyFetcher::Manager do
  it 'loads proxy list on initialization by default' do
    manager = described_class.new
    expect(manager.proxies).not_to be_empty
  end

  it "doesn't load proxy list on initialization if `refresh` argument was set to false" do
    manager = described_class.new(refresh: false)
    expect(manager.proxies).to be_empty
  end

  it 'can returns Proxy objects' do
    manager = described_class.new
    expect(manager.proxies).to all(be_a(ProxyFetcher::Proxy))
  end

  it 'can returns raw proxies' do
    manager = described_class.new
    expect(manager.raw_proxies).to all(be_a(String))
  end

  it 'cleanup proxy list from dead servers' do
    allow_any_instance_of(ProxyFetcher::Proxy).to receive(:connectable?).and_return(false)

    manager = described_class.new

    expect { manager.cleanup! }.to change { manager.proxies }.to([])
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
proxy_fetcher-0.1.1 spec/proxy_fetcher/manager_spec.rb
proxy_fetcher-0.1.0 spec/proxy_fetcher/manager_spec.rb