Class: StrongVersions::Terminal

Inherits:
Object
  • Object
show all
Defined in:
lib/strong_versions/terminal.rb

Instance Method Summary collapse

Constructor Details

#initialize(file = STDERR) ⇒ Terminal

Returns a new instance of Terminal.



5
6
7
# File 'lib/strong_versions/terminal.rb', line 5

def initialize(file = STDERR)
  @file = file
end

Instance Method Details

#gem_update(path, gem) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
# File 'lib/strong_versions/terminal.rb', line 13

def gem_update(path, gem)
  relpath = path.relative_path_from(Pathname.new(Dir.pwd))
  output = [
    color("[#{relpath}] ", :cyan),
    color(gem.suggested_definition, :green),
    color(' (was: ', :default),
    color(gem.definition, :red),
    color(')', :default)
  ].join
  puts(output)
end

#output_errors(gem) ⇒ Object



39
40
41
42
43
44
45
# File 'lib/strong_versions/terminal.rb', line 39

def output_errors(gem)
  puts(name_and_definition(gem))

  puts(format_errors(gem.errors))
  suggestion(gem)
  puts
end

#puts(string = '') ⇒ Object



47
48
49
# File 'lib/strong_versions/terminal.rb', line 47

def puts(string = '')
  @file.puts(string)
end

#summary(count, failed) ⇒ Object



33
34
35
36
37
# File 'lib/strong_versions/terminal.rb', line 33

def summary(count, failed)
  return puts(success(count)) if failed.zero?

  puts(failure(count, failed))
end

#update_summary(updated) ⇒ Object



25
26
27
28
29
30
31
# File 'lib/strong_versions/terminal.rb', line 25

def update_summary(updated)
  output = [
    "#{updated} gem definitions ",
    color('updated', :green)
  ].join
  puts("\n#{output}")
end

#warn(string) ⇒ Object



9
10
11
# File 'lib/strong_versions/terminal.rb', line 9

def warn(string)
  puts(color(string, :bright, :red))
end