Class: ElectricMonk::Reporter

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/electric_monk.rb

Instance Method Summary collapse

Instance Method Details

#fail(msg) ⇒ Object



147
148
149
150
# File 'lib/electric_monk.rb', line 147

def fail(msg)
  @final_message = "#{msg}"
  @spinner.join
end

#start(task_name) ⇒ Object



122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
# File 'lib/electric_monk.rb', line 122

def start(task_name)
  @task_name = task_name
  @final_message = nil

  @spinner = Thread.new do
    chars = %w[         ].cycle
    until @final_message do
      current_task_name = @task_name
      print "#{chars.next} #{current_task_name}"
      sleep 0.1
      print "\b \b" * (current_task_name.length + 2)
    end
    puts @final_message
  end
end

#succeed(msg) ⇒ Object



142
143
144
145
# File 'lib/electric_monk.rb', line 142

def succeed(msg)
  @final_message = "#{msg}"
  @spinner.join
end

#update_progress(task_name) ⇒ Object



138
139
140
# File 'lib/electric_monk.rb', line 138

def update_progress(task_name)
  @task_name = task_name
end