Module: Rake::TeamCity::RunnerCommon

Included in:
Spec::Runner::Formatter::TeamcityFormatter
Defined in:
lib/rspec/teamcity/runner_common.rb

Constant Summary collapse

@@original_stdout =

Let’s keep STDOUT, our users likes to capture it and block our events

STDOUT

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.backtrace_line(line) ⇒ Object

Is from base_text_formatter.rb of rspec 1.1.4



52
53
54
# File 'lib/rspec/teamcity/runner_common.rb', line 52

def self.backtrace_line(line)
  line.sub(/\A([^:]+:\d+)$/, '\\1:')
end

.format_backtrace(backtrace) ⇒ Object



56
57
58
59
# File 'lib/rspec/teamcity/runner_common.rb', line 56

def self.format_backtrace(backtrace)
  return "" if backtrace.nil?
  backtrace.map { |line| backtrace_line(line) }.join("\n")
end

Instance Method Details

#get_current_time_in_msObject

Current time in ms



24
25
26
# File 'lib/rspec/teamcity/runner_common.rb', line 24

def get_current_time_in_ms
  get_time_in_ms(Time.now)
end

#get_time_in_ms(time) ⇒ Object



28
29
30
# File 'lib/rspec/teamcity/runner_common.rb', line 28

def get_time_in_ms(time)
  ((time.to_f) * 1000 ).to_i
end

#log_test_reporter_attachedObject



44
45
46
47
48
49
# File 'lib/rspec/teamcity/runner_common.rb', line 44

def log_test_reporter_attached
  if ::Rake::TeamCity.is_in_idea_mode
    # log method is be defined in target class
    log(@message_factory.create_test_reported_attached)
  end
end

#send_msg(msg) ⇒ Object

Sends msg to runner



33
34
35
36
37
# File 'lib/rspec/teamcity/runner_common.rb', line 33

def send_msg(msg)
  @@original_stdout.flush
  @@original_stdout.puts("\n#{msg}")
  @@original_stdout.flush
end

#set_message_factory(factory) ⇒ Object

Sets factory for creating messages



40
41
42
# File 'lib/rspec/teamcity/runner_common.rb', line 40

def set_message_factory(factory)
  @message_factory = factory
end