Sha256: 8c874066296073b2f868653d31610609e2336857d7aa1cf0ebbc5135ff58bb06

Contents?: true

Size: 1.67 KB

Versions: 11

Compression:

Stored size: 1.67 KB

Contents

require "pact_broker/deployments/deployed_version_service"

module PactBroker
  module Deployments
    describe DeployedVersionService do
      describe ".create" do
        before do
          td.create_environment("test")
            .create_consumer("foo")
            .create_consumer_version("1")
        end

        let(:version) { td.and_return(:consumer_version) }
        let(:environment) { td.and_return(:environment) }

        context "when the version is already currently deployed" do
          it "returns the existing deployed version object" do
            deployed_version_1 = DeployedVersionService.find_or_create("1234", version, environment, nil)
            deployed_version_2 = DeployedVersionService.find_or_create("4321", version, environment, nil)
            expect(deployed_version_1.uuid).to eq deployed_version_2.uuid
          end
        end

        context "when the version was previously deployed, but there was another version deployed in the meantime" do
          before do
            td.create_consumer_version("2")
          end

          let(:version_1) { PactBroker::Domain::Version.order(:id).first }
          let(:version_2) { PactBroker::Domain::Version.order(:id).last }

          it "returns a new deployed version object" do
            deployed_version_1 = DeployedVersionService.find_or_create("1234", version_1, environment, nil)
            DeployedVersionService.find_or_create("4321", version_2, environment, nil)
            deployed_version_3 = DeployedVersionService.find_or_create("4545", version_1, environment, nil)
            expect(deployed_version_1.uuid).to_not eq deployed_version_3.uuid
          end
        end
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
pact_broker-2.89.1 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb
pact_broker-2.89.0 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb
pact_broker-2.88.0 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb
pact_broker-2.87.0 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb
pact_broker-2.86.0 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb
pact_broker-2.85.1 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb
pact_broker-2.85.0 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb
pact_broker-2.84.0 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb
pact_broker-2.83.0 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb
pact_broker-2.82.0 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb
pact_broker-2.81.0 spec/lib/pact_broker/deployments/deployed_version_service_spec.rb