Module RR::Adapters::RRMethods
In: lib/rr/adapters/rr_methods.rb

Methods

Included Modules

::RR::DoubleDefinitions::Strategies::StrategyMethods

Public Instance methods

[Source]

     # 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

[Source]

    # 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}

[Source]

    # 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

[Source]

    # 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

[Source]

    # File lib/rr/adapters/rr_methods.rb, line 87
87:       def boolean
88:         RR::WildcardMatchers::Boolean.new
89:       end

[Source]

    # 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

[Source]

     # 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

[Source]

     # File lib/rr/adapters/rr_methods.rb, line 107
107:       def hash_including(expected_hash)
108:         RR::WildcardMatchers::HashIncluding.new(expected_hash)
109:       end

[Source]

    # 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

[Source]

    # File lib/rr/adapters/rr_methods.rb, line 71
71:       def is_a(klass)
72:         RR::WildcardMatchers::IsA.new(klass)
73:       end

[Source]

   # 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

[Source]

     # 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

[Source]

    # File lib/rr/adapters/rr_methods.rb, line 79
79:       def numeric
80:         RR::WildcardMatchers::Numeric.new
81:       end

[Source]

    # 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

[Source]

     # 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

[Source]

    # 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

[Source]

     # 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

[Source]

     # 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

[Source]

    # 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

[Source]

    # 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

Verifies all the DoubleInjection objects have met their TimesCalledExpectations.

[Source]

    # File lib/rr/adapters/rr_methods.rb, line 42
42:       def verify
43:         RR::Space.instance.verify_doubles
44:       end

[Validate]