Class: FindSubscriptions::Output::StdoutReporter

Inherits:
Object
  • Object
show all
Defined in:
lib/output/stdout_reporter.rb

Overview

Prints subscription candidates to an IO (default stdout) in a human-readable format.

Instance Method Summary collapse

Constructor Details

#initialize(io: $stdout) ⇒ StdoutReporter

Returns a new instance of StdoutReporter.



8
9
10
# File 'lib/output/stdout_reporter.rb', line 8

def initialize(io: $stdout)
  @io = io
end

Instance Method Details

subscriptions: array of hashes like: { name: “Netflix”, amount: “14.99”, since: Date }



14
15
16
17
18
19
20
21
22
# File 'lib/output/stdout_reporter.rb', line 14

def print(subscriptions)
  @io.puts 'Subscriptions:'
  if subscriptions.empty?
    @io.puts '  - (none found)'
    return
  end

  subscriptions.each { |s| @io.puts format_subscription(s) }
end