Sha256: bccff6324f02a1729867859422f790b0cba4f23ac76430ab29cd72aec2034fcc

Contents?: true

Size: 1.36 KB

Versions: 73

Compression:

Stored size: 1.36 KB

Contents

require_relative 'base_decorator'
require_relative 'pact_version_decorator'

module PactBroker
  module Api
    module Decorators
      class TaggedPactVersionsDecorator < BaseDecorator

        collection :entries, as: :pacts, embedded: true, :extend => PactBroker::Api::Decorators::PactVersionDecorator

        link :self do | context |
          {
            href: context[:resource_url],
            title: "All versions of the pact between #{context[:consumer_name]} and #{context[:provider_name]} with tag #{context[:tag]}"
          }
        end

        link :'pb:consumer' do | context |
          {
            href: pacticipant_url(context[:base_url], OpenStruct.new(name: context[:consumer_name])),
            title: "Consumer",
            name: context[:consumer_name]
          }
        end

        link :'pb:provider' do | context |
          {
            href: pacticipant_url(context[:base_url], OpenStruct.new(name: context[:provider_name])),
            title: "Provider",
            name: context[:provider_name]
          }
        end

        links :'pb:pact-versions' do | context |
          represented.collect do | pact |
            {
              :href => pact_url(context[:base_url], pact),
              :title => "Pact version",
              :name => pact.version_and_updated_date
            }
          end
        end
      end
    end
  end
end

Version data entries

73 entries across 73 versions & 1 rubygems

Version Path
pact_broker-2.79.1 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.79.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.78.1 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.78.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.77.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.76.2 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.76.1 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.76.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.75.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.74.1 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.74.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.73.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.72.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.71.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.70.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.69.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.68.1 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.68.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.67.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
pact_broker-2.66.0 lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb