Method: Spec::Example::PredicateMatchers#predicate_matchers
- Defined in:
- lib/spec/example/predicate_matchers.rb
#predicate_matchers ⇒ Object
:call-seq:
predicate_matchers[matcher_name] = method_on_object
predicate_matchers[matcher_name] = [method1_on_object, method2_on_object]
Dynamically generates a custom matcher that will match a predicate on your class. RSpec provides a couple of these out of the box:
exist (for state expectations)
File.should exist("path/to/file")
an_instance_of (for mock argument matchers)
mock.should_receive(:message).with(an_instance_of(String))
Examples
class Fish
def can_swim?
true
end
end
describe Fish do
predicate_matchers[:swim] = :can_swim?
it "should swim" do
Fish.new.should swim
end
end
32 33 34 |
# File 'lib/spec/example/predicate_matchers.rb', line 32 def predicate_matchers @predicate_matchers ||= Spec::HashWithDeprecationNotice.new("predicate_matchers", "the new Matcher DSL") end |