| Module | RR::Adapters::RRMethods |
| In: |
lib/rr/adapters/rr_methods.rb
|
# File lib/rr/adapters/rr_methods.rb, line 137
137: def any_instance_of(*args, &block)
138: RR::DoubleDefinitions::DoubleInjections::AnyInstanceOf.call(*args, &block)
139: end
# File lib/rr/adapters/rr_methods.rb, line 30
30: def any_instance_of(subject=DoubleDefinitions::DoubleDefinitionCreate::NO_SUBJECT, method_name=nil, &definition_eval_block)
31: double_definition_create = DoubleDefinitions::DoubleDefinitionCreate.new
32: double_definition_create.any_instance_of(subject, method_name, &definition_eval_block)
33: end
Returns a AnyTimesMatcher. This is meant to be passed in as an argument to Double#times.
mock(object).method_name(anything).times(any_times) {return_value}
# File lib/rr/adapters/rr_methods.rb, line 55
55: def any_times
56: TimesCalledMatchers::AnyTimesMatcher.new
57: end
Sets up an Anything wildcard ArgumentEqualityExpectation that succeeds when passed any argument.
mock(object).method_name(anything) {return_value}
object.method_name("an arbitrary value") # passes
# File lib/rr/adapters/rr_methods.rb, line 63
63: def anything
64: RR::WildcardMatchers::Anything.new
65: end
Sets up an Boolean wildcard ArgumentEqualityExpectation that succeeds when passed an argument that is a ::Boolean.
mock(object).method_name(boolean) {return_value}
object.method_name(false) # passes
# File lib/rr/adapters/rr_methods.rb, line 87
87: def boolean
88: RR::WildcardMatchers::Boolean.new
89: end
# File lib/rr/adapters/rr_methods.rb, line 15
15: def dont_allow(subject=DoubleDefinitions::DoubleDefinitionCreate::NO_SUBJECT, method_name=nil, &definition_eval_block)
16: double_definition_create = DoubleDefinitions::DoubleDefinitionCreate.new
17: double_definition_create.dont_allow(subject, method_name, &definition_eval_block)
18: end
Sets up a DuckType wildcard ArgumentEqualityExpectation that succeeds when the passed argument implements the methods.
arg = Object.new
def arg.foo; end
def arg.bar; end
mock(object).method_name(duck_type(:foo, :bar)) {return_value}
object.method_name(arg) # passes
# File lib/rr/adapters/rr_methods.rb, line 98
98: def duck_type(*args)
99: RR::WildcardMatchers::DuckType.new(*args)
100: end
Sets up a HashIncluding wildcard ArgumentEqualityExpectation that succeeds when the passed argument contains at least those keys and values of the expectation.
mock(object).method_name(hash_including(:foo => 1)) {return_value}
object.method_name({:foo => 1, :bar => 2) # passes
# File lib/rr/adapters/rr_methods.rb, line 107
107: def hash_including(expected_hash)
108: RR::WildcardMatchers::HashIncluding.new(expected_hash)
109: end
# File lib/rr/adapters/rr_methods.rb, line 35
35: def instance_of(subject=DoubleDefinitions::DoubleDefinitionCreate::NO_SUBJECT, method_name=nil, &definition_eval_block)
36: double_definition_create = DoubleDefinitions::DoubleDefinitionCreate.new
37: double_definition_create.instance_of(subject, method_name, &definition_eval_block)
38: end
Sets up an IsA wildcard ArgumentEqualityExpectation that succeeds when passed an argument of a certain type.
mock(object).method_name(is_a(String)) {return_value}
object.method_name("A String") # passes
# File lib/rr/adapters/rr_methods.rb, line 71
71: def is_a(klass)
72: RR::WildcardMatchers::IsA.new(klass)
73: end
# File lib/rr/adapters/rr_methods.rb, line 5 5: def mock(subject=DoubleDefinitions::DoubleDefinitionCreate::NO_SUBJECT, method_name=nil, &definition_eval_block) 6: double_definition_create = DoubleDefinitions::DoubleDefinitionCreate.new 7: double_definition_create.mock(subject, method_name, &definition_eval_block) 8: end
# File lib/rr/adapters/rr_methods.rb, line 133
133: def new_instance_of(*args, &block)
134: RR::DoubleDefinitions::DoubleInjections::NewInstanceOf.call(*args, &block)
135: end
Sets up an Numeric wildcard ArgumentEqualityExpectation that succeeds when passed an argument that is ::Numeric.
mock(object).method_name(numeric) {return_value}
object.method_name(99) # passes
# File lib/rr/adapters/rr_methods.rb, line 79
79: def numeric
80: RR::WildcardMatchers::Numeric.new
81: end
# File lib/rr/adapters/rr_methods.rb, line 20
20: def proxy(subject=DoubleDefinitions::DoubleDefinitionCreate::NO_SUBJECT, method_name=nil, &definition_eval_block)
21: double_definition_create = DoubleDefinitions::DoubleDefinitionCreate.new
22: double_definition_create.proxy(subject, method_name, &definition_eval_block)
23: end
# File lib/rr/adapters/rr_methods.rb, line 129
129: def received(subject)
130: RR::SpyVerificationProxy.new(subject)
131: end
Resets the registered Doubles and ordered Doubles
# File lib/rr/adapters/rr_methods.rb, line 47
47: def reset
48: RR::Space.instance.reset
49: end
Sets up a Satisfy wildcard ArgumentEqualityExpectation that succeeds when the passed argument causes the expectation‘s proc to return true.
mock(object).method_name(satisfy {|arg| arg == :foo}) {return_value}
object.method_name(:foo) # passes
# File lib/rr/adapters/rr_methods.rb, line 116
116: def satisfy(expectation_proc=nil, &block)
117: expectation_proc ||= block
118: RR::WildcardMatchers::Satisfy.new(expectation_proc)
119: end
# File lib/rr/adapters/rr_methods.rb, line 121
121: def spy(subject)
122: methods_to_stub = subject.public_methods.map {|method_name| method_name.to_sym} -
123: [:methods, :==, :__send__, :__id__, :object_id, :class]
124: methods_to_stub.each do |method|
125: stub.proxy(subject, method)
126: end
127: end
# File lib/rr/adapters/rr_methods.rb, line 25
25: def strong(subject=DoubleDefinitions::DoubleDefinitionCreate::NO_SUBJECT, method_name=nil, &definition_eval_block)
26: double_definition_create = DoubleDefinitions::DoubleDefinitionCreate.new
27: double_definition_create.strong(subject, method_name, &definition_eval_block)
28: end
# File lib/rr/adapters/rr_methods.rb, line 10
10: def stub(subject=DoubleDefinitions::DoubleDefinitionCreate::NO_SUBJECT, method_name=nil, &definition_eval_block)
11: double_definition_create = DoubleDefinitions::DoubleDefinitionCreate.new
12: double_definition_create.stub(subject, method_name, &definition_eval_block)
13: end