Sha256: cfc48ecc879e2c318c8a48674a902f6ebc8f95ff25f174b0e0fca9ba0d697796

Contents?: true

Size: 1.61 KB

Versions: 1

Compression:

Stored size: 1.61 KB

Contents

# frozen_string_literal: true

require "spec_helpers"

describe Wayfarer::Config::Networking do
  let(:env) { {} }
  subject(:network) { Wayfarer::Config::Networking.new(env) }

  describe "#agent" do
    context "by default" do
      it "is :http" do
        expect(network.agent).to be(:http)
      end
    end

    context "with env var set" do
      before { env["WAYFARER_NETWORK_AGENT"] = "ferrum" }

      it "parses the env var" do
        expect(network.agent).to be(:ferrum)
      end
    end
  end

  describe "#pool_size" do
    context "by default" do
      it "is 3" do
        expect(network.pool_size).to be(3)
      end
    end

    context "with env var set" do
      before { env["WAYFARER_NETWORK_POOL_SIZE"] = "42" }

      it "parses the env var" do
        expect(network.pool_size).to be(42)
      end
    end
  end

  describe "#pool_timeout" do
    context "by default" do
      it "is 10" do
        expect(network.pool_timeout).to be(10)
      end
    end

    context "with env var set" do
      before { env["WAYFARER_NETWORK_POOL_SIZE"] = "1337" }

      it "parses the env var" do
        expect(network.pool_size).to be(1337)
      end
    end
  end

  describe "#http_headers" do
    context "by default" do
      it "is {}" do
        expect(network.http_headers).to eq({})
      end
    end

    context "with env var set" do
      before { env["WAYFARER_NETWORK_HTTP_HEADERS"] = "user-agent:foo,authorization:bar" }

      it "parses the env var" do
        expect(network.http_headers).to eq("user-agent": "foo",
                                           authorization: "bar")
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
wayfarer-0.4.1 spec/config/networking_spec.rb