Sha256: c2e5dd1a3268b416cc8694984e927c0ec86f43707794ddde5adfd2edcffe05dd

Contents?: true

Size: 1.84 KB

Versions: 33

Compression:

Stored size: 1.84 KB

Contents

describe "retrieving a pact" do

  subject { get path; last_response  }

  context "when differing case is used in the consumer and provider names" do

    let(:path) { "/pacts/provider/a%20provider/consumer/a%20consumer/version/1.2.3A" }

    before do
      ProviderStateBuilder.new.create_pact_with_hierarchy "A Consumer", "1.2.3a", "A Provider"
    end

    context "when case sensitivity is turned on" do
      before do
        allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(true)
      end

      it "returns a 404 Not found" do
        expect(subject.status).to be 404
      end
    end

    context "when case sensitivity is turned off" do
      before do
        allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(false)
      end

      it "returns a 200 Success" do
        expect(subject.status).to be 200
      end
    end
  end
  context "when differing case is used in the tag name" do

    let(:path) { "/pacts/provider/a%20provider/consumer/a%20consumer/latest/PROD" }

    before do
      ProviderStateBuilder.new
        .create_consumer("A Consumer")
        .create_consumer_version("1.2.3")
        .create_consumer_version_tag("prod")
        .create_provider("A Provider")
        .create_pact
    end

    context "when case sensitivity is turned on" do
      before do
        allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(true)
      end

      it "returns a 404 Not found" do
        expect(subject.status).to be 404
      end
    end

    context "when case sensitivity is turned off" do
      before do
        allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(false)
      end

      it "returns a 200 Success" do
        expect(subject.status).to be 200
      end
    end
  end
end

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
pact_broker-2.0.5 spec/features/get_pact_spec.rb
pact_broker-2.0.4 spec/features/get_pact_spec.rb
pact_broker-2.0.3 spec/features/get_pact_spec.rb
pact_broker-2.0.2 spec/features/get_pact_spec.rb
pact_broker-2.0.1 spec/features/get_pact_spec.rb
pact_broker-2.0.0 spec/features/get_pact_spec.rb
pact_broker-2.0.0.beta.8 spec/features/get_pact_spec.rb
pact_broker-2.0.0.beta.7 spec/features/get_pact_spec.rb
pact_broker-2.0.0.beta.6 spec/features/get_pact_spec.rb
pact_broker-1.18.0 spec/features/get_pact_spec.rb
pact_broker-2.0.0.beta.5 spec/features/get_pact_spec.rb
pact_broker-1.18.0.beta.1 spec/features/get_pact_spec.rb
pact_broker-1.17.2 spec/features/get_pact_spec.rb
pact_broker-1.17.1 spec/features/get_pact_spec.rb
pact_broker-2.0.0.beta.4 spec/features/get_pact_spec.rb
pact_broker-2.0.0.beta.3 spec/features/get_pact_spec.rb
pact_broker-2.0.0.beta.2 spec/features/get_pact_spec.rb
pact_broker-2.0.0.beta.1 spec/features/get_pact_spec.rb
pact_broker-1.17.0 spec/features/get_pact_spec.rb
pact_broker-1.16.0 spec/features/get_pact_spec.rb