Sha256: f92b6b133ff1567c7fabb42aede96ab38c11ca4f9c643385c15e92024655951d

Contents?: true

Size: 865 Bytes

Versions: 45

Compression:

Stored size: 865 Bytes

Contents

# Need Versions class to extend BaseClient until we can remove the old Versions code
require 'pact_broker/client/base_client'
require 'table_print'

module PactBroker
  module Client
    class Versions < BaseClient
      class TextFormatter

        Line = Struct.new(:number, :tags)

        OPTIONS = [
          { number: {:width => 40} },
          { tags: {} }
        ]

        def self.call(version_hash)
          tags = (lookup(version_hash, [], :_embedded, :tags) || []).collect{ | t| t[:name] }.join(" ")
          data = Line.new(version_hash[:number], tags)

          printer = TablePrint::Printer.new([data], OPTIONS)
          printer.table_print
        end

        def self.lookup line, default, *keys
          keys.reduce(line) { | line, key | line[key] }
        rescue NoMethodError
          default
        end
      end
    end
  end
end

Version data entries

45 entries across 45 versions & 1 rubygems

Version Path
pact_broker-client-1.77.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.76.2 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.76.1 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.76.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.75.4 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.75.3 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.75.1 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.75.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.74.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.73.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.72.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.71.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.70.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.69.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.68.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.67.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.66.1 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.66.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.65.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.64.0 lib/pact_broker/client/versions/text_formatter.rb