class PunkyBrewster::CLI

Public Instance Methods

list() click to toggle source
# File lib/punky_brewster/cli.rb, line 17
def list
  show_abv_per_dollar = options[:holla_for_dollar] || options[:cheapskate]

  beers = BeerRepository.list

  if options[:holla_for_dollar]
    sorted = beers.sort { |a, b| b.abv_per_dollar <=> a.abv_per_dollar }
  else
    sorted = beers.sort_by { |beer| beer.send(options[:sort]) }
  end

  rows = sorted.map do |beer|
    row = [beer.name, "$%0.2f/L" % beer.price, "%0.1f%%" % beer.abv]
    row << ("%0.2f%%/$" % beer.abv_per_dollar) if show_abv_per_dollar
    row
  end

  print_table rows
end
version() click to toggle source
# File lib/punky_brewster/cli.rb, line 9
def version
  say "Punky Brewster version #{VERSION}"
end