Class: Homophone::Application

Inherits:
Object
  • Object
show all
Defined in:
lib/homophone/application.rb

Instance Method Summary collapse

Instance Method Details

#ohai(msg) ⇒ Object



28
29
30
31
# File 'lib/homophone/application.rb', line 28

def ohai(msg)
  puts msg
  exit 0
end

#onoe(exit_code, msg) ⇒ Object



33
34
35
36
# File 'lib/homophone/application.rb', line 33

def onoe(exit_code, msg)
  STDERR.puts "homophone: #{msg}"
  exit exit_code
end

#run(argv) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/homophone/application.rb', line 11

def run(argv)
  onoe 127, 'no musician name provided' if argv.count < 1
  ohai "homophone v#{Homophone::VERSION}" if argv[0] == '--version'

  musician_name = argv.shift
  musician = spotify_service.musician(musician_name)
  onoe 126, %Q{no musician with name "#{musician_name}" found} if musician.nil?
  artists = musician.related_artists.map(&:name).sort
  artists.each do |artist|
    puts artist
  end
end

#spotify_serviceObject



24
25
26
# File 'lib/homophone/application.rb', line 24

def spotify_service
  @service ||= (cucumber? ? Homophone::Service::DummySpotify : Homophone::Service::Spotify).new
end