Class: TestBalancer::Specs::Formatter

Inherits:
Spec::Runner::Formatter::BaseFormatter
  • Object
show all
Defined in:
lib/test_balancer/specs/formatter.rb

Overview

require ‘ruby-debug’

Instance Method Summary collapse

Constructor Details

#initialize(options, output) ⇒ Formatter

Returns a new instance of Formatter.



6
7
8
9
10
11
12
13
# File 'lib/test_balancer/specs/formatter.rb', line 6

def initialize(options, output)
  if String === output
    FileUtils.mkdir_p(File.dirname(output))
    @output = File.open(output, 'w')
  else
    @output = output
  end
end

Instance Method Details

#closeObject



19
20
21
22
23
# File 'lib/test_balancer/specs/formatter.rb', line 19

def close
  @output.puts({:specs => @specs}.to_json)
  @output.flush
  @output.close  if (IO === @output) & (@output != $stdout)
end

#example_failed(example_proxy, counter, failure) ⇒ Object



49
50
51
# File 'lib/test_balancer/specs/formatter.rb', line 49

def example_failed(example_proxy, counter, failure)
  @current_spec[:status] = :failed
end

#example_group_started(example_group_proxy) ⇒ Object



25
26
27
# File 'lib/test_balancer/specs/formatter.rb', line 25

def example_group_started(example_group_proxy)
  @example_group = example_group_proxy
end

#example_passed(example_proxy) ⇒ Object



45
46
47
# File 'lib/test_balancer/specs/formatter.rb', line 45

def example_passed(example_proxy)
  @current_spec[:status] = :passed
end

#example_pending(example_proxy, message, deprecated_pending_location = nil) ⇒ Object



29
30
31
32
33
34
35
36
# File 'lib/test_balancer/specs/formatter.rb', line 29

def example_pending(example_proxy, message, deprecated_pending_location=nil)
  @pending_examples << {
    :description     => "#{@example_group.description} #{example_proxy.description}",
    :file_colon_line => example_proxy.location,
    :status          => :pending,
    :message         => message,
  }
end

#example_started(example_proxy) ⇒ Object



38
39
40
41
42
43
# File 'lib/test_balancer/specs/formatter.rb', line 38

def example_started(example_proxy)
  @specs << @current_spec = {
    :description     => "#{@example_group.description} #{example_proxy.description}",
    :file_colon_line => example_proxy.location,
  }
end

#start(example_count) ⇒ Object



15
16
17
# File 'lib/test_balancer/specs/formatter.rb', line 15

def start(example_count)
  @specs = []
end