Class: Libyear::Report

Inherits:
Object
  • Object
show all
Defined in:
lib/libyear/report.rb

Overview

Responsible presenting data from the ‘Query`. Should only be concerned with presentation, nothing else.

Instance Method Summary collapse

Constructor Details

#initialize(gems) ⇒ Report

‘gems` - Array of hashes.



6
7
8
# File 'lib/libyear/report.rb', line 6

def initialize(gems)
  @gems = gems
end

Instance Method Details

#to_sObject



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/libyear/report.rb', line 10

def to_s
  sum_years = 0.0
  @gems.each do |gem|
    years = gem[:libyears]
    sum_years += years
    puts(
      format(
        "%30s%15s%15s%15s%15s%10.1f",
        gem[:name],
        gem[:installed][:version],
        gem[:installed][:date],
        gem[:newest][:version],
        gem[:newest][:date],
        years
      )
    )
  end
  puts format("System is %.1f libyears behind", sum_years)
end