Sha256: 549d7b737825c699c0c846bdaaa82e70921e8862f243b827150a975d813ecb4c

Contents?: true

Size: 1.69 KB

Versions: 2

Compression:

Stored size: 1.69 KB

Contents

require 'pact_broker/domain/tag'

module PactBroker
  module Domain
    describe Tag do
      before do
        td.create_consumer("foo")
          .create_consumer_version("1")
          .create_consumer_version_tag("dev")
          .create_consumer_version_tag("prod")
          .create_consumer_version("2")
          .create_consumer_version_tag("dev")
          .create_consumer_version_tag("bloop")
          .create_consumer_version("3")
          .create_consumer_version_tag("dev")
          .create_consumer("bar")
          .create_consumer_version("1")
          .create_consumer_version_tag("test")
      end

      it "returns the latest tags for the given pacticipant ids" do
        pacticipant = PactBroker::Domain::Pacticipant.order(:id).first
        tags = Tag.latest_tags_for_pacticipant_ids([pacticipant.id]).all
        expect(tags.collect(&:name).sort).to eq %w{bloop dev prod}
        expect(tags.find{ |t| t.name == "dev" }.version.number).to eq "3"
        expect(tags.find{ |t| t.name == "prod" }.version.number).to eq "1"
        expect(tags.find{ |t| t.name == "bloop" }.version.number).to eq "2"
        expect(tags.collect(&:version_id).compact.size).to eq 3
        expect(tags.collect(&:created_at).compact.size).to eq 3
      end
    end
  end
end

# Table: tags
# Primary Key: (name, version_id)
# Columns:
#  name       | text                        |
#  version_id | integer                     |
#  created_at | timestamp without time zone | NOT NULL
#  updated_at | timestamp without time zone | NOT NULL
# Indexes:
#  tags_pk      | PRIMARY KEY btree (version_id, name)
#  ndx_tag_name | btree (name)
# Foreign key constraints:
#  tags_version_id_fkey | (version_id) REFERENCES versions(id)

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
pact_broker-2.71.0 spec/lib/pact_broker/domain/tag_spec.rb
pact_broker-2.70.0 spec/lib/pact_broker/domain/tag_spec.rb