module RxRspec::Shared

Constants

DEFAULT_TIMEOUT

Public Class Methods

included(mod) click to toggle source
Calls superclass method
# File lib/rx-rspec/shared.rb, line 8
def self.included(mod)
  mod.chain :within do |seconds|
    @timeout = seconds
  end

  mod.description do
    if @timeout
      super() + " within #{@timeout} seconds"
    else
      super()
    end
  end
end

Public Instance Methods

await_done(&block) click to toggle source
# File lib/rx-rspec/shared.rb, line 26
def await_done(&block)
  AsyncRunner.new(timeout).await_done(&block)
end
present_error(expected, error) click to toggle source
# File lib/rx-rspec/shared.rb, line 30
def present_error(expected, error)
  backtrace = error.backtrace || []
  return error.message if /^Timeout/.match(error.message)
  present_error = "#{error.inspect}:#{$/}#{backtrace.join($/)}"
  "expected #{expected} but received error #{present_error}"
end
timeout() click to toggle source
# File lib/rx-rspec/shared.rb, line 22
def timeout
  @timeout || DEFAULT_TIMEOUT
end