Class: TestCentricity::ExceptionQueue

Inherits:
Object
  • Object
show all
Includes:
Capybara::DSL
Defined in:
lib/testcentricity_web/exception_queue_helper.rb

Class Method Summary collapse

Class Method Details

.enqueue_assert_equal(expected, actual, error_message) ⇒ Object



7
8
9
10
11
12
# File 'lib/testcentricity_web/exception_queue_helper.rb', line 7

def self.enqueue_assert_equal(expected, actual, error_message)
  unless expected == actual
    @error_queue = "#{@error_queue}#{error_message} to be\n  #{expected}\nbut found\n  #{actual}\n\n"
    enqueue_screenshot
  end
end

.enqueue_assert_not_equal(expected, actual, error_message) ⇒ Object



14
15
16
17
18
19
# File 'lib/testcentricity_web/exception_queue_helper.rb', line 14

def self.enqueue_assert_not_equal(expected, actual, error_message)
  unless expected != actual
    @error_queue = "#{@error_queue}#{error_message} to not be equal to #{expected}\n\n"
    enqueue_screenshot
  end
end

.enqueue_exception(error_message) ⇒ Object



21
22
23
# File 'lib/testcentricity_web/exception_queue_helper.rb', line 21

def self.enqueue_exception(error_message)
  @error_queue = "#{@error_queue}#{error_message}\n\n"
end

.enqueue_screenshotObject



33
34
35
36
37
38
39
40
41
# File 'lib/testcentricity_web/exception_queue_helper.rb', line 33

def self.enqueue_screenshot
  timestamp = Time.now.strftime('%Y%m%d%H%M%S')
  filename = "Screenshot-#{timestamp}"
  path = File.join Dir.pwd, "reports/screenshots/", filename
  Capybara.save_screenshot "#{path}.png"
  puts "Screenshot saved at #{path}.png"
  screen_shot = { :path => path, :filename => filename }
  Environ.save_screen_shot(screen_shot)
end

.post_exceptionsObject



25
26
27
28
29
# File 'lib/testcentricity_web/exception_queue_helper.rb', line 25

def self.post_exceptions
  raise @error_queue unless @error_queue.nil?
ensure
  @error_queue = nil
end