Sha256: 4f34553fd89795939315970dcbcec03577d55c84c81410e7226585531a1ff003

Contents?: true

Size: 726 Bytes

Versions: 60

Compression:

Stored size: 726 Bytes

Contents

require 'table_print'

module PactBroker
  module Client
    class Versions
      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

60 entries across 60 versions & 1 rubygems

Version Path
pact_broker-client-1.27.9 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.27.8 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.27.4 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.27.2 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.27.1 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.27.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.26.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.25.1 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.25.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.24.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.23.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.22.3 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.22.2 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.22.1 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.21.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.20.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.19.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.18.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.17.0 lib/pact_broker/client/versions/text_formatter.rb
pact_broker-client-1.16.2 lib/pact_broker/client/versions/text_formatter.rb