Sha256: 3b81b6d2fe3028b853e073407ca11f16f089cf941186c8c3bf47c063520688e3
Contents?: true
Size: 1.09 KB
Versions: 74
Compression:
Stored size: 1.09 KB
Contents
module Spec module Matchers class Satisfy #:nodoc: def initialize(&block) @block = block end def matches?(actual, &block) @block = block if block @actual = actual @block.call(actual) end def failure_message "expected #{@actual} to satisfy block" end def negative_failure_message "expected #{@actual} not to satisfy block" end end # :call-seq: # should satisfy {} # should_not satisfy {} # # Passes if the submitted block returns true. Yields target to the # block. # # Generally speaking, this should be thought of as a last resort when # you can't find any other way to specify the behaviour you wish to # specify. # # If you do find yourself in such a situation, you could always write # a custom matcher, which would likely make your specs more expressive. # # == Examples # # 5.should satisfy { |n| # n > 3 # } def satisfy(&block) Matchers::Satisfy.new(&block) end end end
Version data entries
74 entries across 74 versions & 12 rubygems