module Spectre::Assertion

Public Class Methods

expect(desc) { || ... } click to toggle source
# File lib/spectre/assertion.rb, line 227
def expect desc
  begin
    Logger.log_process("expect #{desc}")
    yield
    Logger.log_status(desc, Logger::Status::OK)

  rescue Interrupt => e
    raise e

  rescue AssertionFailure => e
    Logger.log_status(desc, Logger::Status::FAILED)
    raise AssertionFailure.new(e.message, e.expected, e.actual, desc), cause: nil

  rescue Exception => e
    Logger.log_status(desc, Logger::Status::ERROR)
    raise AssertionFailure.new("An unexpected error occured during expectation: #{e.message}", nil, nil, desc), cause: e
  end
end
fail_with(message) click to toggle source
# File lib/spectre/assertion.rb, line 264
def fail_with message
  raise AssertionFailure.new(message)
end
observe(desc = nil) { || ... } click to toggle source
# File lib/spectre/assertion.rb, line 246
def observe desc = nil
  begin
    Logger.log_info("observing #{desc}") if desc
    yield
    @@success = true

  rescue Interrupt => e
    raise e

  rescue Exception => e
    @@success = false
  end
end
success?() click to toggle source
# File lib/spectre/assertion.rb, line 260
def success?
  @@success
end