Sha256: cc6d12465f265db74fddaca6a5ba15db02e9800901b4b2ac7466b01cfc74c280

Contents?: true

Size: 1.51 KB

Versions: 10

Compression:

Stored size: 1.51 KB

Contents

require "webmock/rspec"

describe "get latest matrix badge with tags" do

  before do
    PactBroker.configuration.enable_public_badge_access = true
    PactBroker.configuration.badge_provider_mode = :proxy
    TestDataBuilder.new
      .create_consumer("consumer")
      .create_provider("provider")
      .create_consumer_version("1")
      .create_consumer_version_tag("prod")
      .create_pact
      .create_verification(provider_version: "4")
      .use_provider_version("4")
      .create_provider_version_tag("master")
  end

  let!(:http_request) do
    stub_request(:get, /http/).to_return(:status => 200, :body => "<svg/>")
  end

  let(:path) { "/matrix/provider/provider/latest/master/consumer/consumer/latest/prod/badge" }

  # In the full app, the .svg extension is turned into an Accept header
  # by ConvertFileExtensionToAcceptHeader

  subject { get(path, nil, {"HTTP_ACCEPT" => "image/svg+xml"}) }

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

  it "returns an svg/xml response" do
    expect(subject.headers["Content-Type"]).to include("image/svg+xml")
  end

  it "returns an svg body" do
    expect(subject.body).to include "<svg/>"
  end

  context "when one of the pacticipants does not exist" do
    let(:path) { "/matrix/provider/provider/latest/master/consumer/consumer2/latest/prod/badge" }

    it "returns a 200 status as the badge content indicated the pact is not found" do
      expect(subject.status).to eq 200
      expect(subject.body).to include "not found"
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
pact_broker-2.89.1 spec/features/get_matrix_badge_spec.rb
pact_broker-2.89.0 spec/features/get_matrix_badge_spec.rb
pact_broker-2.88.0 spec/features/get_matrix_badge_spec.rb
pact_broker-2.87.0 spec/features/get_matrix_badge_spec.rb
pact_broker-2.86.0 spec/features/get_matrix_badge_spec.rb
pact_broker-2.85.1 spec/features/get_matrix_badge_spec.rb
pact_broker-2.85.0 spec/features/get_matrix_badge_spec.rb
pact_broker-2.84.0 spec/features/get_matrix_badge_spec.rb
pact_broker-2.83.0 spec/features/get_matrix_badge_spec.rb
pact_broker-2.82.0 spec/features/get_matrix_badge_spec.rb