Sha256: 917aae608539dae7a66e0137cda694bb5a17d70257c0e2bde4b49d8e41e57771

Contents?: true

Size: 829 Bytes

Versions: 90

Compression:

Stored size: 829 Bytes

Contents

require 'rack/pact_broker/invalid_uri_protection'

module Rack
  module PactBroker
    describe InvalidUriProtection do

      let(:app) { InvalidUriProtection.new(->(env){ [200,{},[]] }) }

      subject { get "/badpath"; last_response }

      context "with a URI that the Ruby default URI library cannot parse" do

        before do
          # Can't use or stub URI.parse because rack test uses it to execute the actual test
          allow_any_instance_of(InvalidUriProtection).to receive(:parse).and_raise(URI::InvalidURIError)
        end

        it "returns a 404" do
          expect(subject.status).to eq 404
        end
      end

      context "when the URI can be parsed" do
        it "passes the request to the underlying app" do
          expect(subject.status).to eq 200
        end
      end
    end
  end
end

Version data entries

90 entries across 90 versions & 1 rubygems

Version Path
pact_broker-2.56.1 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.56.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.55.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.54.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.53.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.52.2 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.52.1 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.52.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.51.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.50.1 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.50.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.49.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.48.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.47.1 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.47.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.46.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.45.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.44.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.43.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb
pact_broker-2.42.0 spec/lib/rack/pact_broker/invalid_uri_protection_spec.rb