Quick reference to many expectation methods for testing ruby code via rSpec and optionally Mock.
|
obj.should_satisfy {|arg| ... }
|
|
obj.should_not_satisfy {|arg| ... }
|
|
obj.should_equal <value>
|
|
obj.should_not_equal <value>
|
|
obj.should == <value>
|
|
obj.should_be_close <val>, <delta>
|
|
obj.should_not_be_close <val>, <delta>
|
|
obj.should_be <value>
|
|
obj.should_not_be <value>
|
|
obj.should_predicate [args]
|
|
obj.should_be_predicate [args]
|
|
obj.should_not_predicate [args]
|
|
obj.should_not_be_predicate [args]
|
|
obj.should_be > <value>
|
|
obj.should_be < <value>
|
|
obj.should_match <regex>
|
|
obj.should_not_match <regex>
|
|
obj.should =~ <regex>
|
|
obj.should_be_an_instance_of <class>
|
|
obj.should_not_be_an_instance_of <class>
|
|
obj.should_be_a_kind_of <class>
|
|
obj.should_not_be_a_kind_of <class>
|
|
obj.should_respond_to <sym>
|
|
obj.should_not_respond_to <sym>
|
|
proc.should_raise <exception>
|
|
proc.should_not_raise <exception>
|
|
proc.should_raise
|
|
proc.should_not_raise
|
|
proc.should_throw <symbol>
|
|
proc.should_not_throw <symbol>
|
|
proc.should_not_throw
|
|
obj.should_include <obj>
|
|
obj.should_not_include <obj>
|
|
obj.should_have(<n>).things
|
|
obj.should_have_at_least(<n>).things
|
|
obj.should_have_at_most(<n>).things
|
|
mock = mock(<name>)
|
|
mock = mock(<name>, <options>)
|
|
Example:
|
|
mock = mock("blah", :null_object => true)
|
|
mock.should_receive(:<msg>)
|
|
mock.should_not_receive(:<msg>)
|
|
mock.with(<args>)
|
|
mock.with(:no_args)
|
|
mock.with(:any_args)
|
|
mock.any_number_of_times
|
|
mock.once
|
|
mock.twice
|
|
mock.exactly(<n>).times
|
|
mock.at_least(:once)
|
|
mock.at_least(:twice)
|
|
mock.at_least(<n>).times
|
|
mock.and_return(<val>)
|
|
mock.and_return(<val1>,<val2>, <valN>)
|
|
mock.and_return(...)
|
|
mock.and_raise(<exception>)
|
|
mock.and_throw(<symbol>)
|
|
mock.should_receive(:flip).once.ordered
|
|
mock.should_receive(:flop).once.ordered
|
Wow, this is great! I really like how you've set out the info. Nice job!
Cheatography n. The art of mapping complex subjects into clear, instantly navigable reference guides.