Class: MastermindGenerator::Timer

Inherits:
Object
  • Object
show all
Includes:
TimeHelpers
Defined in:
lib/mastermind_generator/timer.rb

Overview

A simple timer Calculates the time between start and end

Instance Method Summary collapse

Instance Method Details

#durationObject



29
30
31
32
33
34
# File 'lib/mastermind_generator/timer.rb', line 29

def duration
  pause
  elapsed_time = stop_time - start_time
  start
  elapsed_time
end

#duration_as_textObject



36
37
38
# File 'lib/mastermind_generator/timer.rb', line 36

def duration_as_text
  time_in_writing(duration)
end

#startObject



16
17
18
19
# File 'lib/mastermind_generator/timer.rb', line 16

def start
  @stop_time = nil
  @start_time ||= Time.new # rubocop:disable Naming/MemoizedInstanceVariableName
end

#stopObject Also known as: pause



21
22
23
24
25
# File 'lib/mastermind_generator/timer.rb', line 21

def stop
  raise TimerNotStartedError unless start_time

  self.stop_time = Time.new
end