Class: Crspec::Formatters::ProgressFormatter

Inherits:
Object
  • Object
show all
Defined in:
lib/crspec/formatters/progress_formatter.rb

Instance Method Summary collapse

Constructor Details

#initialize(output = $stdout, color: output.respond_to?(:tty?) && output.tty?) ⇒ ProgressFormatter

Returns a new instance of ProgressFormatter.



6
7
8
9
10
# File 'lib/crspec/formatters/progress_formatter.rb', line 6

def initialize(output = $stdout, color: output.respond_to?(:tty?) && output.tty?)
  @output = output
  @color = color
  @mutex = Mutex.new
end

Instance Method Details

#example_failed(_example) ⇒ Object



19
20
21
22
23
24
# File 'lib/crspec/formatters/progress_formatter.rb', line 19

def example_failed(_example)
  @mutex.synchronize do
    @output.print @color ? "\e[31mF\e[0m" : "F"
    @output.flush
  end
end

#example_passed(_example) ⇒ Object



12
13
14
15
16
17
# File 'lib/crspec/formatters/progress_formatter.rb', line 12

def example_passed(_example)
  @mutex.synchronize do
    @output.print @color ? "\e[32m.\e[0m" : "."
    @output.flush
  end
end

#example_pending(_example) ⇒ Object



26
27
28
29
30
31
# File 'lib/crspec/formatters/progress_formatter.rb', line 26

def example_pending(_example)
  @mutex.synchronize do
    @output.print @color ? "\e[33m*\e[0m" : "*"
    @output.flush
  end
end

#finishObject



35
36
37
38
39
# File 'lib/crspec/formatters/progress_formatter.rb', line 35

def finish
  @mutex.synchronize do
    @output.puts
  end
end

#startObject



33
# File 'lib/crspec/formatters/progress_formatter.rb', line 33

def start; end