Module: RSpec::Mocks::VerifyingDouble
Instance Method Summary
collapse
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(message, *args, &block) ⇒ Object
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/verifying_double.rb', line 20
def method_missing(message, *args, &block)
if null_object?
if @__sending_message == message
__mock_proxy.ensure_implemented(message)
else
__mock_proxy.ensure_publicly_implemented(message, self)
end
__mock_proxy.validate_arguments!(message, args)
end
super
end
|
Instance Method Details
#__send__(name, *args, &block) ⇒ Object
39
40
41
42
43
44
|
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/verifying_double.rb', line 39
def __send__(name, *args, &block)
@__sending_message = name
super
ensure
@__sending_message = nil
end
|
#initialize(doubled_module, *args) ⇒ Object
51
52
53
54
55
56
57
58
59
60
61
|
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/verifying_double.rb', line 51
def initialize(doubled_module, *args)
@doubled_module = doubled_module
possible_name = args.first
name = if String === possible_name || Symbol === possible_name
args.shift
end
super(name, *args)
@__sending_message = nil
end
|
#respond_to?(message, include_private = false) ⇒ Boolean
7
8
9
10
11
12
13
14
15
16
17
18
|
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/verifying_double.rb', line 7
def respond_to?(message, include_private=false)
return super unless null_object?
method_ref = __mock_proxy.method_reference[message]
case method_ref.visibility
when :public then true
when :private then include_private
when :protected then include_private || RUBY_VERSION.to_f < 2.0
else !method_ref.unimplemented?
end
end
|
#send(name, *args, &block) ⇒ Object
47
48
49
|
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/verifying_double.rb', line 47
def send(name, *args, &block)
__send__(name, *args, &block)
end
|