Module: Testa::Matcher

Defined in:
lib/testa.rb

Overview

Assertion methods

Assertion method should raise Testa::Failure if assertion failed

Instance Method Summary collapse

Instance Method Details

#error(class_or_message = nil, message = nil) ⇒ Object



159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
# File 'lib/testa.rb', line 159

def error(class_or_message=nil, message=nil)
  ok {
    begin
      yield
    rescue => e
      return true unless class_or_message
      if message
        e.class == class_or_message && e.message[message]
      else
        class_or_message.is_a?(Class) ?
          e.class == class_or_message :
          e.message[class_or_message]
      end
    else
      false
    end
  }
end

#fail!Object

Raises:



178
179
180
# File 'lib/testa.rb', line 178

def fail!
  raise Failure
end

#okObject



155
156
157
# File 'lib/testa.rb', line 155

def ok
  yield or fail!
end