optimistic-json 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +6 -0
  3. data/.ruby-version +1 -0
  4. data/CHANGELOG.md +10 -0
  5. data/README.md +4 -0
  6. data/Rakefile +5 -1
  7. data/lib/optimistic/json/parser.rb +28 -7
  8. data/lib/optimistic/json/version.rb +2 -1
  9. data/lib/optimistic/json.rb +1 -1
  10. data/sorbet/config +4 -0
  11. data/sorbet/rbi/annotations/.gitattributes +1 -0
  12. data/sorbet/rbi/annotations/rainbow.rbi +269 -0
  13. data/sorbet/rbi/gems/.gitattributes +1 -0
  14. data/sorbet/rbi/gems/ast@2.4.2.rbi +550 -0
  15. data/sorbet/rbi/gems/benchmark@0.5.0.rbi +621 -0
  16. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +1068 -0
  17. data/sorbet/rbi/gems/erubi@1.13.1.rbi +155 -0
  18. data/sorbet/rbi/gems/gem-release@2.2.2.rbi +1335 -0
  19. data/sorbet/rbi/gems/io-console@0.6.0.rbi +9 -0
  20. data/sorbet/rbi/gems/json@2.7.0.rbi +1797 -0
  21. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +12986 -0
  22. data/sorbet/rbi/gems/logger@1.6.0.rbi +845 -0
  23. data/sorbet/rbi/gems/multi_json@1.15.0.rbi +218 -0
  24. data/sorbet/rbi/gems/netrc@0.11.0.rbi +147 -0
  25. data/sorbet/rbi/gems/parallel@1.28.0.rbi +270 -0
  26. data/sorbet/rbi/gems/parser@3.2.2.4.rbi +5154 -0
  27. data/sorbet/rbi/gems/prism@1.9.0.rbi +42224 -0
  28. data/sorbet/rbi/gems/psych@5.1.1.1.rbi +2321 -0
  29. data/sorbet/rbi/gems/racc@1.7.3.rbi +169 -0
  30. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +362 -0
  31. data/sorbet/rbi/gems/rake@13.1.0.rbi +3025 -0
  32. data/sorbet/rbi/gems/rbi@0.3.11.rbi +5505 -0
  33. data/sorbet/rbi/gems/rbs@4.0.2.rbi +6908 -0
  34. data/sorbet/rbi/gems/rdoc@6.6.0.rbi +9 -0
  35. data/sorbet/rbi/gems/regexp_parser@2.8.2.rbi +3268 -0
  36. data/sorbet/rbi/gems/reline@0.4.1.rbi +9 -0
  37. data/sorbet/rbi/gems/require-hooks@0.4.0.rbi +152 -0
  38. data/sorbet/rbi/gems/rexml@3.2.6.rbi +4798 -0
  39. data/sorbet/rbi/gems/rspec-core@3.12.2.rbi +9405 -0
  40. data/sorbet/rbi/gems/rspec-expectations@3.12.3.rbi +6013 -0
  41. data/sorbet/rbi/gems/rspec-mocks@3.12.6.rbi +4750 -0
  42. data/sorbet/rbi/gems/rspec-support@3.12.1.rbi +1261 -0
  43. data/sorbet/rbi/gems/rspec@3.12.0.rbi +15 -0
  44. data/sorbet/rbi/gems/rubocop-ast@1.30.0.rbi +6750 -0
  45. data/sorbet/rbi/gems/rubocop-capybara@2.19.0.rbi +1058 -0
  46. data/sorbet/rbi/gems/rubocop-factory_bot@2.24.0.rbi +875 -0
  47. data/sorbet/rbi/gems/rubocop-rspec@2.25.0.rbi +7696 -0
  48. data/sorbet/rbi/gems/rubocop@1.58.0.rbi +53790 -0
  49. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +988 -0
  50. data/sorbet/rbi/gems/rubydex@0.2.3.rbi +787 -0
  51. data/sorbet/rbi/gems/spoom@1.7.14.rbi +6151 -0
  52. data/sorbet/rbi/gems/stringio@3.1.0.rbi +9 -0
  53. data/sorbet/rbi/gems/tapioca@0.19.1.rbi +3558 -0
  54. data/sorbet/rbi/gems/thor@1.5.0.rbi +3870 -0
  55. data/sorbet/rbi/gems/tsort@0.2.0.rbi +387 -0
  56. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +64 -0
  57. data/sorbet/tapioca/config.yml +13 -0
  58. data/sorbet/tapioca/require.rb +4 -0
  59. metadata +55 -23
  60. data/sig/optimistic/json.rbs +0 -6
@@ -0,0 +1,4750 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `rspec-mocks` gem.
5
+ # Please instead update this file by running `bin/tapioca gem rspec-mocks`.
6
+
7
+
8
+ # Share the top-level RSpec namespace, because we are a core supported
9
+ # extension.
10
+ #
11
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:1
12
+ module RSpec; end
13
+
14
+ # Contains top-level utility methods. While this contains a few
15
+ # public methods, these are not generally meant to be called from
16
+ # a test or example. They exist primarily for integration with
17
+ # test frameworks (such as rspec-core).
18
+ #
19
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:2
20
+ module RSpec::Mocks
21
+ class << self
22
+ # Adds an allowance (stub) on `subject`
23
+ #
24
+ # @param subject the subject to which the message will be added
25
+ # @param message a symbol, representing the message that will be
26
+ # added.
27
+ # @param opts a hash of options, :expected_from is used to set the
28
+ # original call site
29
+ # @yield an optional implementation for the allowance
30
+ #
31
+ # @example Defines the implementation of `foo` on `bar`, using the passed block
32
+ # x = 0
33
+ # RSpec::Mocks.allow_message(bar, :foo) { x += 1 }
34
+ #
35
+ # pkg:gem/rspec-mocks#lib/rspec/mocks.rb:69
36
+ def allow_message(subject, message, opts = T.unsafe(nil), &block); end
37
+
38
+ # Mocks specific configuration, as distinct from `RSpec.configuration`
39
+ # which is core RSpec configuration.
40
+ #
41
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:206
42
+ def configuration; end
43
+
44
+ # @private
45
+ #
46
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:386
47
+ def error_generator; end
48
+
49
+ # Sets a message expectation on `subject`.
50
+ # @param subject the subject on which the message will be expected
51
+ # @param message a symbol, representing the message that will be
52
+ # expected.
53
+ # @param opts a hash of options, :expected_from is used to set the
54
+ # original call site
55
+ # @yield an optional implementation for the expectation
56
+ #
57
+ # @example Expect the message `foo` to receive `bar`, then call it
58
+ # RSpec::Mocks.expect_message(bar, :foo)
59
+ # bar.foo
60
+ #
61
+ # pkg:gem/rspec-mocks#lib/rspec/mocks.rb:84
62
+ def expect_message(subject, message, opts = T.unsafe(nil), &block); end
63
+
64
+ # Performs per-test/example setup. This should be called before
65
+ # an test or example begins.
66
+ #
67
+ # pkg:gem/rspec-mocks#lib/rspec/mocks.rb:38
68
+ def setup; end
69
+
70
+ # @private
71
+ #
72
+ # pkg:gem/rspec-mocks#lib/rspec/mocks.rb:106
73
+ def space; end
74
+
75
+ # Cleans up all test double state (including any methods that were
76
+ # redefined on partial doubles). This _must_ be called after
77
+ # each example, even if an error was raised during the example.
78
+ #
79
+ # pkg:gem/rspec-mocks#lib/rspec/mocks.rb:51
80
+ def teardown; end
81
+
82
+ # Verifies any message expectations that were set during the
83
+ # test or example. This should be called at the end of an example.
84
+ #
85
+ # pkg:gem/rspec-mocks#lib/rspec/mocks.rb:44
86
+ def verify; end
87
+
88
+ # Call the passed block and verify mocks after it has executed. This allows
89
+ # mock usage in arbitrary places, such as a `before(:all)` hook.
90
+ #
91
+ # @return [Object] the return value from the block
92
+ #
93
+ # pkg:gem/rspec-mocks#lib/rspec/mocks.rb:92
94
+ def with_temporary_scope; end
95
+ end
96
+ end
97
+
98
+ # @private
99
+ #
100
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:92
101
+ class RSpec::Mocks::AllowanceTarget < ::RSpec::Mocks::TargetBase
102
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:93
103
+ def expression; end
104
+
105
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:29
106
+ def not_to(matcher, *_args); end
107
+
108
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:6
109
+ def to(matcher, &block); end
110
+
111
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:29
112
+ def to_not(matcher, *_args); end
113
+ end
114
+
115
+ # Handles the implementation of an `and_invoke` implementation.
116
+ # @private
117
+ #
118
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:737
119
+ class RSpec::Mocks::AndInvokeImplementation
120
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:738
121
+ def initialize(procs_to_invoke); end
122
+
123
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:742
124
+ def call(*args, &block); end
125
+ end
126
+
127
+ # Handles the implementation of an `and_return` implementation.
128
+ # @private
129
+ #
130
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:721
131
+ class RSpec::Mocks::AndReturnImplementation
132
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:722
133
+ def initialize(values_to_return); end
134
+
135
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:726
136
+ def call(*_args_to_ignore, &_block); end
137
+ end
138
+
139
+ # Represents an `and_call_original` implementation.
140
+ # @private
141
+ #
142
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:779
143
+ class RSpec::Mocks::AndWrapOriginalImplementation
144
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:780
145
+ def initialize(method, block); end
146
+
147
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:807
148
+ def call(*args, **_arg1, &block); end
149
+
150
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:787
151
+ def initial_action=(_value); end
152
+
153
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:803
154
+ def inner_action; end
155
+
156
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:791
157
+ def inner_action=(_value); end
158
+
159
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:799
160
+ def present?; end
161
+
162
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:795
163
+ def terminal_action=(_value); end
164
+
165
+ private
166
+
167
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:814
168
+ def cannot_modify_further_error; end
169
+ end
170
+
171
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:785
172
+ class RSpec::Mocks::AndWrapOriginalImplementation::CannotModifyFurtherError < ::StandardError; end
173
+
174
+ # Handles the implementation of an `and_yield` declaration.
175
+ # @private
176
+ #
177
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:694
178
+ class RSpec::Mocks::AndYieldImplementation
179
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:695
180
+ def initialize(args_to_yield, eval_context, error_generator); end
181
+
182
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:701
183
+ def call(*_args_to_ignore, &block); end
184
+ end
185
+
186
+ # @private
187
+ #
188
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:4
189
+ module RSpec::Mocks::AnyInstance
190
+ class << self
191
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/error_generator.rb:26
192
+ def error_generator; end
193
+ end
194
+ end
195
+
196
+ # @private
197
+ #
198
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:6
199
+ class RSpec::Mocks::AnyInstance::Chain
200
+ include ::RSpec::Mocks::AnyInstance::Chain::Customizations
201
+
202
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:7
203
+ def initialize(recorder, *args, &block); end
204
+
205
+ # @private
206
+ #
207
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:61
208
+ def constrained_to_any_of?(*constraints); end
209
+
210
+ # @private
211
+ #
212
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:75
213
+ def expectation_fulfilled!; end
214
+
215
+ # @private
216
+ #
217
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:70
218
+ def matches_args?(*args); end
219
+
220
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:79
221
+ def never; end
222
+
223
+ # @private
224
+ #
225
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:53
226
+ def playback!(instance); end
227
+
228
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:84
229
+ def with(*args, &block); end
230
+
231
+ private
232
+
233
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:99
234
+ def last_message; end
235
+
236
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:95
237
+ def messages; end
238
+
239
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:91
240
+ def negated?; end
241
+
242
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:103
243
+ def record(rspec_method_name, *args, &block); end
244
+ end
245
+
246
+ # @private
247
+ #
248
+ # Provides convenience methods for recording customizations on message
249
+ # expectations.
250
+ #
251
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:18
252
+ module RSpec::Mocks::AnyInstance::Chain::Customizations
253
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
254
+ def and_call_original(*args, &block); end
255
+
256
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
257
+ def and_raise(*args, &block); end
258
+
259
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
260
+ def and_return(*args, &block); end
261
+
262
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
263
+ def and_throw(*args, &block); end
264
+
265
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
266
+ def and_wrap_original(*args, &block); end
267
+
268
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
269
+ def and_yield(*args, &block); end
270
+
271
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
272
+ def at_least(*args, &block); end
273
+
274
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
275
+ def at_most(*args, &block); end
276
+
277
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
278
+ def exactly(*args, &block); end
279
+
280
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
281
+ def never(*args, &block); end
282
+
283
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
284
+ def once(*args, &block); end
285
+
286
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
287
+ def thrice(*args, &block); end
288
+
289
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
290
+ def time(*args, &block); end
291
+
292
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
293
+ def times(*args, &block); end
294
+
295
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
296
+ def twice(*args, &block); end
297
+
298
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:27
299
+ def with(*args, &block); end
300
+
301
+ class << self
302
+ # @macro [attach] record
303
+ # @method $1(*args, &block)
304
+ # Records the `$1` message for playback against an instance that
305
+ # invokes a method stubbed or mocked using `any_instance`.
306
+ #
307
+ # @see RSpec::Mocks::MessageExpectation#$1
308
+ #
309
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/chain.rb:26
310
+ def record(method_name); end
311
+ end
312
+ end
313
+
314
+ # @private
315
+ #
316
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/error_generator.rb:5
317
+ class RSpec::Mocks::AnyInstance::ErrorGenerator < ::RSpec::Mocks::ErrorGenerator
318
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/error_generator.rb:11
319
+ def raise_does_not_implement_error(klass, method_name); end
320
+
321
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/error_generator.rb:15
322
+ def raise_message_already_received_by_other_instance_error(method_name, object_inspect, invoked_instance); end
323
+
324
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/error_generator.rb:20
325
+ def raise_not_supported_with_prepend_error(method_name, problem_mod); end
326
+
327
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/error_generator.rb:6
328
+ def raise_second_instance_received_message_error(unfulfilled_expectations); end
329
+ end
330
+
331
+ # @private
332
+ #
333
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expect_chain_chain.rb:5
334
+ class RSpec::Mocks::AnyInstance::ExpectChainChain < ::RSpec::Mocks::AnyInstance::StubChain
335
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expect_chain_chain.rb:6
336
+ def initialize(*args); end
337
+
338
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expect_chain_chain.rb:11
339
+ def expectation_fulfilled?; end
340
+
341
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expect_chain_chain.rb:15
342
+ def playback!(instance); end
343
+
344
+ private
345
+
346
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expect_chain_chain.rb:21
347
+ def create_message_expectation_on(instance); end
348
+
349
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expect_chain_chain.rb:25
350
+ def invocation_order; end
351
+ end
352
+
353
+ # @private
354
+ #
355
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expectation_chain.rb:5
356
+ class RSpec::Mocks::AnyInstance::ExpectationChain < ::RSpec::Mocks::AnyInstance::Chain
357
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expectation_chain.rb:10
358
+ def initialize(*args, &block); end
359
+
360
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expectation_chain.rb:6
361
+ def expectation_fulfilled?; end
362
+
363
+ private
364
+
365
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expectation_chain.rb:17
366
+ def verify_invocation_order(_rspec_method_name, *_args, &_block); end
367
+ end
368
+
369
+ # @private
370
+ # Delegates messages to each of the given targets in order to
371
+ # provide the fluent interface that is available off of message
372
+ # expectations when dealing with `any_instance`.
373
+ #
374
+ # `targets` will typically contain 1 of the `AnyInstance::Recorder`
375
+ # return values and N `MessageExpectation` instances (one per instance
376
+ # of the `any_instance` klass).
377
+ #
378
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:103
379
+ class RSpec::Mocks::AnyInstance::FluentInterfaceProxy < ::BasicObject
380
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:104
381
+ def initialize(targets); end
382
+
383
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:118
384
+ def method_missing(*args, &block); end
385
+
386
+ private
387
+
388
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:109
389
+ def respond_to_missing?(method_name, include_private = T.unsafe(nil)); end
390
+ end
391
+
392
+ # @private
393
+ #
394
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:5
395
+ class RSpec::Mocks::AnyInstance::MessageChains
396
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:6
397
+ def initialize; end
398
+
399
+ # @private
400
+ #
401
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:11
402
+ def [](method_name); end
403
+
404
+ # @private
405
+ #
406
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:16
407
+ def add(method_name, chain); end
408
+
409
+ # @private
410
+ #
411
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:43
412
+ def all_expectations_fulfilled?; end
413
+
414
+ # @private
415
+ #
416
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:36
417
+ def each_unfulfilled_expectation_matching(method_name, *args); end
418
+
419
+ # @private
420
+ #
421
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:29
422
+ def has_expectation?(method_name); end
423
+
424
+ # @private
425
+ #
426
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:64
427
+ def playback!(instance, method_name); end
428
+
429
+ # @private
430
+ #
431
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:57
432
+ def received_expected_message!(method_name); end
433
+
434
+ # @private
435
+ #
436
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:22
437
+ def remove_stub_chains_for!(method_name); end
438
+
439
+ # @private
440
+ #
441
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:50
442
+ def unfulfilled_expectations; end
443
+
444
+ private
445
+
446
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/message_chains.rb:73
447
+ def raise_if_second_instance_to_receive_message(instance); end
448
+ end
449
+
450
+ # @private
451
+ #
452
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expectation_chain.rb:22
453
+ class RSpec::Mocks::AnyInstance::PositiveExpectationChain < ::RSpec::Mocks::AnyInstance::ExpectationChain
454
+ private
455
+
456
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expectation_chain.rb:25
457
+ def create_message_expectation_on(instance); end
458
+
459
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expectation_chain.rb:44
460
+ def invocation_order; end
461
+ end
462
+
463
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/expectation_chain.rb:38
464
+ RSpec::Mocks::AnyInstance::PositiveExpectationChain::ExpectationInvocationOrder = T.let(T.unsafe(nil), Hash)
465
+
466
+ # @private
467
+ # The `AnyInstance::Recorder` is responsible for redefining the klass's
468
+ # instance method in order to add any stubs/expectations the first time
469
+ # the method is called. It's not capable of updating a stub on an instance
470
+ # that's already been previously stubbed (either directly, or via
471
+ # `any_instance`).
472
+ #
473
+ # This proxy sits in front of the recorder and delegates both to it
474
+ # and to the `RSpec::Mocks::Proxy` for each already mocked or stubbed
475
+ # instance of the class, in order to propagates changes to the instances.
476
+ #
477
+ # Note that unlike `RSpec::Mocks::Proxy`, this proxy class is stateless
478
+ # and is not persisted in `RSpec::Mocks.space`.
479
+ #
480
+ # Proxying for the message expectation fluent interface (typically chained
481
+ # off of the return value of one of these methods) is provided by the
482
+ # `FluentInterfaceProxy` class below.
483
+ #
484
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:21
485
+ class RSpec::Mocks::AnyInstance::Proxy
486
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:22
487
+ def initialize(recorder, target_proxies); end
488
+
489
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:55
490
+ def expect_chain(*chain, &block); end
491
+
492
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:27
493
+ def klass; end
494
+
495
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:71
496
+ def should_not_receive(method_name, &block); end
497
+
498
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:61
499
+ def should_receive(method_name, &block); end
500
+
501
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:31
502
+ def stub(method_name_or_method_map, &block); end
503
+
504
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:49
505
+ def stub_chain(*chain, &block); end
506
+
507
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:43
508
+ def unstub(method_name); end
509
+
510
+ private
511
+
512
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/proxy.rb:79
513
+ def perform_proxying(method_name, args, block, &target_proxy_block); end
514
+ end
515
+
516
+ # Given a class `TheClass`, `TheClass.any_instance` returns a `Recorder`,
517
+ # which records stubs and message expectations for later playback on
518
+ # instances of `TheClass`.
519
+ #
520
+ # Further constraints are stored in instances of [Chain](Chain).
521
+ #
522
+ # @see AnyInstance
523
+ # @see Chain
524
+ #
525
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:12
526
+ class RSpec::Mocks::AnyInstance::Recorder
527
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:16
528
+ def initialize(klass); end
529
+
530
+ # @private
531
+ #
532
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:127
533
+ def already_observing?(method_name); end
534
+
535
+ # @private
536
+ #
537
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:122
538
+ def build_alias_method_name(method_name); end
539
+
540
+ # @private
541
+ #
542
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:53
543
+ def expect_chain(*method_names_and_optional_return_values, &block); end
544
+
545
+ # @private
546
+ #
547
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:117
548
+ def instance_that_received(method_name); end
549
+
550
+ # @private
551
+ #
552
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:14
553
+ def klass; end
554
+
555
+ # @private
556
+ #
557
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:14
558
+ def message_chains; end
559
+
560
+ # @private
561
+ #
562
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:132
563
+ def notify_received_message(_object, message, args, _blk); end
564
+
565
+ # @private
566
+ #
567
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:109
568
+ def playback!(instance, method_name); end
569
+
570
+ # The opposite of `should_receive`
571
+ #
572
+ # @see Methods#should_not_receive
573
+ #
574
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:75
575
+ def should_not_receive(method_name, &block); end
576
+
577
+ # Initializes the recording a message expectation to be played back
578
+ # against any instance of this object that invokes the submitted
579
+ # method.
580
+ #
581
+ # @see Methods#should_receive
582
+ #
583
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:66
584
+ def should_receive(method_name, &block); end
585
+
586
+ # @private
587
+ #
588
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:104
589
+ def stop_all_observation!; end
590
+
591
+ # Initializes the recording a stub to be played back against any
592
+ # instance of this object that invokes the submitted method.
593
+ #
594
+ # @see Methods#stub
595
+ #
596
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:35
597
+ def stub(method_name, &block); end
598
+
599
+ # Initializes the recording a stub chain to be played back against any
600
+ # instance of this object that invokes the method matching the first
601
+ # argument.
602
+ #
603
+ # @see Methods#stub_chain
604
+ #
605
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:45
606
+ def stub_chain(*method_names_and_optional_return_values, &block); end
607
+
608
+ # @private
609
+ #
610
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:14
611
+ def stubs; end
612
+
613
+ # Removes any previously recorded stubs, stub_chains or message
614
+ # expectations that use `method_name`.
615
+ #
616
+ # @see Methods#unstub
617
+ #
618
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:83
619
+ def unstub(method_name); end
620
+
621
+ # @api private
622
+ #
623
+ # Used internally to verify that message expectations have been
624
+ # fulfilled.
625
+ #
626
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:96
627
+ def verify; end
628
+
629
+ protected
630
+
631
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:148
632
+ def stop_observing!(method_name); end
633
+
634
+ private
635
+
636
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:280
637
+ def allow_no_prepended_module_definition_of(method_name); end
638
+
639
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:159
640
+ def ancestor_is_an_observer?(method_name); end
641
+
642
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:233
643
+ def backup_method!(method_name); end
644
+
645
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:267
646
+ def mark_invoked!(method_name); end
647
+
648
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:176
649
+ def normalize_chain(*args); end
650
+
651
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:247
652
+ def observe!(method_name); end
653
+
654
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:243
655
+ def public_protected_or_private_method_defined?(method_name); end
656
+
657
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:181
658
+ def received_expected_message!(method_name); end
659
+
660
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:227
661
+ def remove_dummy_method!(method_name); end
662
+
663
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:187
664
+ def restore_method!(method_name); end
665
+
666
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:195
667
+ def restore_original_method!(method_name); end
668
+
669
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:168
670
+ def super_class_observers_for(method_name); end
671
+
672
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/recorder.rb:172
673
+ def super_class_observing?(method_name); end
674
+ end
675
+
676
+ # @private
677
+ #
678
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain.rb:5
679
+ class RSpec::Mocks::AnyInstance::StubChain < ::RSpec::Mocks::AnyInstance::Chain
680
+ # @private
681
+ #
682
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain.rb:7
683
+ def expectation_fulfilled?; end
684
+
685
+ private
686
+
687
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain.rb:13
688
+ def create_message_expectation_on(instance); end
689
+
690
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain.rb:40
691
+ def invocation_order; end
692
+
693
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain.rb:44
694
+ def verify_invocation_order(rspec_method_name, *_args, &_block); end
695
+ end
696
+
697
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain.rb:38
698
+ RSpec::Mocks::AnyInstance::StubChain::EmptyInvocationOrder = T.let(T.unsafe(nil), Hash)
699
+
700
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain.rb:28
701
+ RSpec::Mocks::AnyInstance::StubChain::InvocationOrder = T.let(T.unsafe(nil), Hash)
702
+
703
+ # @private
704
+ #
705
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain_chain.rb:5
706
+ class RSpec::Mocks::AnyInstance::StubChainChain < ::RSpec::Mocks::AnyInstance::StubChain
707
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain_chain.rb:6
708
+ def initialize(*args); end
709
+
710
+ private
711
+
712
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain_chain.rb:13
713
+ def create_message_expectation_on(instance); end
714
+
715
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/any_instance/stub_chain_chain.rb:17
716
+ def invocation_order; end
717
+ end
718
+
719
+ # @private
720
+ #
721
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:103
722
+ class RSpec::Mocks::AnyInstanceAllowanceTarget < ::RSpec::Mocks::TargetBase
723
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:104
724
+ def expression; end
725
+
726
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:29
727
+ def not_to(matcher, *_args); end
728
+
729
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:6
730
+ def to(matcher, &block); end
731
+
732
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:29
733
+ def to_not(matcher, *_args); end
734
+ end
735
+
736
+ # @private
737
+ #
738
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:114
739
+ class RSpec::Mocks::AnyInstanceExpectationTarget < ::RSpec::Mocks::TargetBase
740
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:115
741
+ def expression; end
742
+
743
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:16
744
+ def not_to(matcher, &block); end
745
+
746
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:6
747
+ def to(matcher, &block); end
748
+
749
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:16
750
+ def to_not(matcher, &block); end
751
+ end
752
+
753
+ # Wrapper for matching arguments against a list of expected values. Used by
754
+ # the `with` method on a `MessageExpectation`:
755
+ #
756
+ # expect(object).to receive(:message).with(:a, 'b', 3)
757
+ # object.message(:a, 'b', 3)
758
+ #
759
+ # Values passed to `with` can be literal values or argument matchers that
760
+ # match against the real objects .e.g.
761
+ #
762
+ # expect(object).to receive(:message).with(hash_including(:a => 'b'))
763
+ #
764
+ # Can also be used directly to match the contents of any `Array`. This
765
+ # enables 3rd party mocking libs to take advantage of rspec's argument
766
+ # matching without using the rest of rspec-mocks.
767
+ #
768
+ # require 'rspec/mocks/argument_list_matcher'
769
+ # include RSpec::Mocks::ArgumentMatchers
770
+ #
771
+ # arg_list_matcher = RSpec::Mocks::ArgumentListMatcher.new(123, hash_including(:a => 'b'))
772
+ # arg_list_matcher.args_match?(123, :a => 'b')
773
+ #
774
+ # This class is immutable.
775
+ #
776
+ # @see ArgumentMatchers
777
+ #
778
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_list_matcher.rb:33
779
+ class RSpec::Mocks::ArgumentListMatcher
780
+ # @api public
781
+ # @param [Array] expected_args a list of expected literals and/or argument matchers
782
+ #
783
+ # Initializes an `ArgumentListMatcher` with a collection of literal
784
+ # values and/or argument matchers.
785
+ #
786
+ # @see ArgumentMatchers
787
+ # @see #args_match?
788
+ #
789
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_list_matcher.rb:45
790
+ def initialize(*expected_args, **_arg1); end
791
+
792
+ # @api public
793
+ # @param [Array] actual_args
794
+ #
795
+ # Matches each element in the `expected_args` against the element in the same
796
+ # position of the arguments passed to `new`.
797
+ #
798
+ # @see #initialize
799
+ #
800
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_list_matcher.rb:58
801
+ def args_match?(*actual_args, **_arg1); end
802
+
803
+ # @private
804
+ #
805
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_list_matcher.rb:35
806
+ def expected_args; end
807
+
808
+ # @private
809
+ # Resolves abstract arg placeholders like `no_args` and `any_args` into
810
+ # a more concrete arg list based on the provided `actual_args`.
811
+ #
812
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_list_matcher.rb:81
813
+ def resolve_expected_args_based_on(actual_args); end
814
+
815
+ private
816
+
817
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_list_matcher.rb:100
818
+ def ensure_expected_args_valid!; end
819
+
820
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_list_matcher.rb:92
821
+ def replace_any_args_with_splat_of_anything(before_count, actual_args_count); end
822
+ end
823
+
824
+ # Value that will match all argument lists.
825
+ #
826
+ # @private
827
+ #
828
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_list_matcher.rb:114
829
+ RSpec::Mocks::ArgumentListMatcher::MATCH_ALL = T.let(T.unsafe(nil), RSpec::Mocks::ArgumentListMatcher)
830
+
831
+ # ArgumentMatchers are placeholders that you can include in message
832
+ # expectations to match arguments against a broader check than simple
833
+ # equality.
834
+ #
835
+ # With the exception of `any_args` and `no_args`, they all match against
836
+ # the arg in same position in the argument list.
837
+ #
838
+ # @see ArgumentListMatcher
839
+ #
840
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:16
841
+ module RSpec::Mocks::ArgumentMatchers
842
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:115
843
+ def a_kind_of(klass); end
844
+
845
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:105
846
+ def an_instance_of(klass); end
847
+
848
+ # Acts like an arg splat, matching any number of args at any point in an arg list.
849
+ #
850
+ # @example
851
+ # expect(object).to receive(:message).with(1, 2, any_args)
852
+ #
853
+ # # matches any of these:
854
+ # object.message(1, 2)
855
+ # object.message(1, 2, 3)
856
+ # object.message(1, 2, 3, 4)
857
+ #
858
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:26
859
+ def any_args; end
860
+
861
+ # Matches any argument at all.
862
+ #
863
+ # @example
864
+ # expect(object).to receive(:message).with(anything)
865
+ #
866
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:34
867
+ def anything; end
868
+
869
+ # Matches an array that includes the specified items at least once.
870
+ # Ignores duplicates and additional values
871
+ #
872
+ # @example
873
+ # expect(object).to receive(:message).with(array_including(1,2,3))
874
+ # expect(object).to receive(:message).with(array_including([1,2,3]))
875
+ #
876
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:80
877
+ def array_including(*args); end
878
+
879
+ # Matches a boolean value.
880
+ #
881
+ # @example
882
+ # expect(object).to receive(:message).with(boolean())
883
+ #
884
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:59
885
+ def boolean; end
886
+
887
+ # Matches if the actual argument responds to the specified messages.
888
+ #
889
+ # @example
890
+ # expect(object).to receive(:message).with(duck_type(:hello))
891
+ # expect(object).to receive(:message).with(duck_type(:hello, :goodbye))
892
+ #
893
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:51
894
+ def duck_type(*args); end
895
+
896
+ # Matches a hash that doesn't include the specified key(s) or key/value.
897
+ #
898
+ # @example
899
+ # expect(object).to receive(:message).with(hash_excluding(:key => val))
900
+ # expect(object).to receive(:message).with(hash_excluding(:key))
901
+ # expect(object).to receive(:message).with(hash_excluding(:key, :key2 => :val2))
902
+ #
903
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:91
904
+ def hash_excluding(*args); end
905
+
906
+ # Matches a hash that includes the specified key(s) or key/value pairs.
907
+ # Ignores any additional keys.
908
+ #
909
+ # @example
910
+ # expect(object).to receive(:message).with(hash_including(:key => val))
911
+ # expect(object).to receive(:message).with(hash_including(:key))
912
+ # expect(object).to receive(:message).with(hash_including(:key, :key2 => val2))
913
+ #
914
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:70
915
+ def hash_including(*args); end
916
+
917
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:95
918
+ def hash_not_including(*args); end
919
+
920
+ # Matches if `arg.instance_of?(klass)`
921
+ #
922
+ # @example
923
+ # expect(object).to receive(:message).with(instance_of(Thing))
924
+ #
925
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:101
926
+ def instance_of(klass); end
927
+
928
+ # Matches if `arg.kind_of?(klass)`
929
+ #
930
+ # @example
931
+ # expect(object).to receive(:message).with(kind_of(Thing))
932
+ #
933
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:111
934
+ def kind_of(klass); end
935
+
936
+ # Matches no arguments.
937
+ #
938
+ # @example
939
+ # expect(object).to receive(:message).with(no_args)
940
+ #
941
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:42
942
+ def no_args; end
943
+
944
+ class << self
945
+ # @private
946
+ #
947
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:118
948
+ def anythingize_lonely_keys(*args); end
949
+ end
950
+ end
951
+
952
+ # @private
953
+ #
954
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:149
955
+ class RSpec::Mocks::ArgumentMatchers::AnyArgMatcher < ::RSpec::Mocks::ArgumentMatchers::SingletonMatcher
956
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:150
957
+ def ===(_other); end
958
+
959
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:154
960
+ def description; end
961
+ end
962
+
963
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:137
964
+ RSpec::Mocks::ArgumentMatchers::AnyArgMatcher::INSTANCE = T.let(T.unsafe(nil), RSpec::Mocks::ArgumentMatchers::AnyArgMatcher)
965
+
966
+ # @private
967
+ #
968
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:142
969
+ class RSpec::Mocks::ArgumentMatchers::AnyArgsMatcher < ::RSpec::Mocks::ArgumentMatchers::SingletonMatcher
970
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:143
971
+ def description; end
972
+ end
973
+
974
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:137
975
+ RSpec::Mocks::ArgumentMatchers::AnyArgsMatcher::INSTANCE = T.let(T.unsafe(nil), RSpec::Mocks::ArgumentMatchers::AnyArgsMatcher)
976
+
977
+ # @private
978
+ #
979
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:232
980
+ class RSpec::Mocks::ArgumentMatchers::ArrayIncludingMatcher
981
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:233
982
+ def initialize(expected); end
983
+
984
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:237
985
+ def ===(actual); end
986
+
987
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:248
988
+ def description; end
989
+
990
+ private
991
+
992
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:254
993
+ def formatted_expected_values; end
994
+ end
995
+
996
+ # @private
997
+ #
998
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:178
999
+ class RSpec::Mocks::ArgumentMatchers::BaseHashMatcher
1000
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:179
1001
+ def initialize(expected); end
1002
+
1003
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:183
1004
+ def ===(predicate, actual); end
1005
+
1006
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:191
1007
+ def description(name); end
1008
+
1009
+ private
1010
+
1011
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:197
1012
+ def formatted_expected_hash; end
1013
+ end
1014
+
1015
+ # @private
1016
+ #
1017
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:167
1018
+ class RSpec::Mocks::ArgumentMatchers::BooleanMatcher < ::RSpec::Mocks::ArgumentMatchers::SingletonMatcher
1019
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:168
1020
+ def ===(value); end
1021
+
1022
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:172
1023
+ def description; end
1024
+ end
1025
+
1026
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:137
1027
+ RSpec::Mocks::ArgumentMatchers::BooleanMatcher::INSTANCE = T.let(T.unsafe(nil), RSpec::Mocks::ArgumentMatchers::BooleanMatcher)
1028
+
1029
+ # @private
1030
+ #
1031
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:262
1032
+ class RSpec::Mocks::ArgumentMatchers::DuckTypeMatcher
1033
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:263
1034
+ def initialize(*methods_to_respond_to); end
1035
+
1036
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:267
1037
+ def ===(value); end
1038
+
1039
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:271
1040
+ def description; end
1041
+ end
1042
+
1043
+ # @private
1044
+ #
1045
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:221
1046
+ class RSpec::Mocks::ArgumentMatchers::HashExcludingMatcher < ::RSpec::Mocks::ArgumentMatchers::BaseHashMatcher
1047
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:222
1048
+ def ===(actual); end
1049
+
1050
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:226
1051
+ def description; end
1052
+ end
1053
+
1054
+ # @private
1055
+ #
1056
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:210
1057
+ class RSpec::Mocks::ArgumentMatchers::HashIncludingMatcher < ::RSpec::Mocks::ArgumentMatchers::BaseHashMatcher
1058
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:211
1059
+ def ===(actual); end
1060
+
1061
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:215
1062
+ def description; end
1063
+ end
1064
+
1065
+ # @private
1066
+ #
1067
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:277
1068
+ class RSpec::Mocks::ArgumentMatchers::InstanceOf
1069
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:278
1070
+ def initialize(klass); end
1071
+
1072
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:282
1073
+ def ===(actual); end
1074
+
1075
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:286
1076
+ def description; end
1077
+ end
1078
+
1079
+ # @private
1080
+ #
1081
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:292
1082
+ class RSpec::Mocks::ArgumentMatchers::KindOf
1083
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:293
1084
+ def initialize(klass); end
1085
+
1086
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:297
1087
+ def ===(actual); end
1088
+
1089
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:301
1090
+ def description; end
1091
+ end
1092
+
1093
+ # @private
1094
+ #
1095
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:160
1096
+ class RSpec::Mocks::ArgumentMatchers::NoArgsMatcher < ::RSpec::Mocks::ArgumentMatchers::SingletonMatcher
1097
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:161
1098
+ def description; end
1099
+ end
1100
+
1101
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:137
1102
+ RSpec::Mocks::ArgumentMatchers::NoArgsMatcher::INSTANCE = T.let(T.unsafe(nil), RSpec::Mocks::ArgumentMatchers::NoArgsMatcher)
1103
+
1104
+ # Intended to be subclassed by stateless, immutable argument matchers.
1105
+ # Provides a `<klass name>::INSTANCE` constant for accessing a global
1106
+ # singleton instance of the matcher. There is no need to construct
1107
+ # multiple instance since there is no state. It also facilities the
1108
+ # special case logic we need for some of these matchers, by making it
1109
+ # easy to do comparisons like: `[klass::INSTANCE] == args` rather than
1110
+ # `args.count == 1 && klass === args.first`.
1111
+ #
1112
+ # @private
1113
+ #
1114
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:133
1115
+ class RSpec::Mocks::ArgumentMatchers::SingletonMatcher
1116
+ class << self
1117
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:136
1118
+ def inherited(subklass); end
1119
+
1120
+ private
1121
+
1122
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/argument_matchers.rb:134
1123
+ def new(*_arg0); end
1124
+ end
1125
+ end
1126
+
1127
+ # @private
1128
+ #
1129
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:7
1130
+ class RSpec::Mocks::CallbackInvocationStrategy
1131
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:8
1132
+ def call(doubled_module); end
1133
+ end
1134
+
1135
+ # Raised for situations that RSpec cannot support due to mutations made
1136
+ # externally on arguments that RSpec is holding onto to use for later
1137
+ # comparisons.
1138
+ #
1139
+ # @deprecated We no longer raise this error but the constant remains until
1140
+ # RSpec 4 for SemVer reasons.
1141
+ #
1142
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:26
1143
+ class RSpec::Mocks::CannotSupportArgMutationsError < ::StandardError; end
1144
+
1145
+ # When a class's `.new` method is stubbed, we want to use the method
1146
+ # signature from `#initialize` because `.new`'s signature is a generic
1147
+ # `def new(*args)` and it simply delegates to `#initialize` and forwards
1148
+ # all args...so the method with the actually used signature is `#initialize`.
1149
+ #
1150
+ # This method reference implementation handles that specific case.
1151
+ # @private
1152
+ #
1153
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:184
1154
+ class RSpec::Mocks::ClassNewMethodReference < ::RSpec::Mocks::ObjectMethodReference
1155
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:207
1156
+ def with_signature; end
1157
+
1158
+ class << self
1159
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:185
1160
+ def applies_to?(method_name); end
1161
+
1162
+ # Ruby 2's Method#== is too strict
1163
+ #
1164
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:198
1165
+ def uses_class_new?(klass); end
1166
+ end
1167
+ end
1168
+
1169
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:196
1170
+ RSpec::Mocks::ClassNewMethodReference::CLASS_NEW = T.let(T.unsafe(nil), UnboundMethod)
1171
+
1172
+ # Effectively the same as an ObjectVerifyingDouble (since a class is a type
1173
+ # of object), except with Module in the inheritance chain so that
1174
+ # transferring nested constants to work.
1175
+ #
1176
+ # @private
1177
+ #
1178
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:119
1179
+ class RSpec::Mocks::ClassVerifyingDouble < ::Module
1180
+ include ::RSpec::Mocks::TestDouble
1181
+ include ::RSpec::Mocks::VerifyingDouble
1182
+ include ::RSpec::Mocks::ObjectVerifyingDoubleMethods
1183
+ end
1184
+
1185
+ # Provides configuration options for rspec-mocks.
1186
+ #
1187
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:4
1188
+ class RSpec::Mocks::Configuration
1189
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:5
1190
+ def initialize; end
1191
+
1192
+ # Adds `stub` and `should_receive` to the given
1193
+ # modules or classes. This is usually only necessary
1194
+ # if you application uses some proxy classes that
1195
+ # "strip themselves down" to a bare minimum set of
1196
+ # methods and remove `stub` and `should_receive` in
1197
+ # the process.
1198
+ #
1199
+ # @example
1200
+ # RSpec.configure do |rspec|
1201
+ # rspec.mock_with :rspec do |mocks|
1202
+ # mocks.add_stub_and_should_receive_to Delegator
1203
+ # end
1204
+ # end
1205
+ #
1206
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:62
1207
+ def add_stub_and_should_receive_to(*modules); end
1208
+
1209
+ # Sets whether RSpec will warn, ignore, or fail a test when
1210
+ # expectations are set on nil.
1211
+ # By default, when this flag is not set, warning messages are issued when
1212
+ # expectations are set on nil. This is to prevent false-positives and to
1213
+ # catch potential bugs early on.
1214
+ # When set to `true`, warning messages are suppressed.
1215
+ # When set to `false`, it will raise an error.
1216
+ #
1217
+ # @example
1218
+ # RSpec.configure do |config|
1219
+ # config.mock_with :rspec do |mocks|
1220
+ # mocks.allow_message_expectations_on_nil = false
1221
+ # end
1222
+ # end
1223
+ #
1224
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:29
1225
+ def allow_message_expectations_on_nil; end
1226
+
1227
+ # Sets whether RSpec will warn, ignore, or fail a test when
1228
+ # expectations are set on nil.
1229
+ # By default, when this flag is not set, warning messages are issued when
1230
+ # expectations are set on nil. This is to prevent false-positives and to
1231
+ # catch potential bugs early on.
1232
+ # When set to `true`, warning messages are suppressed.
1233
+ # When set to `false`, it will raise an error.
1234
+ #
1235
+ # @example
1236
+ # RSpec.configure do |config|
1237
+ # config.mock_with :rspec do |mocks|
1238
+ # mocks.allow_message_expectations_on_nil = false
1239
+ # end
1240
+ # end
1241
+ #
1242
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:29
1243
+ def allow_message_expectations_on_nil=(_arg0); end
1244
+
1245
+ # Provides a way to perform customisations when verifying doubles.
1246
+ #
1247
+ # @example
1248
+ # RSpec::Mocks.configuration.before_verifying_doubles do |ref|
1249
+ # ref.some_method!
1250
+ # end
1251
+ #
1252
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:128
1253
+ def before_verifying_doubles(&block); end
1254
+
1255
+ # Indicates whether or not diffs should be colored.
1256
+ # Delegates to rspec-core's color option if rspec-core
1257
+ # is loaded; otherwise you can set it here.
1258
+ #
1259
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:164
1260
+ def color?; end
1261
+
1262
+ # Monkey-patch `Marshal.dump` to enable dumping of mocked or stubbed
1263
+ # objects. By default this will not work since RSpec mocks works by
1264
+ # adding singleton methods that cannot be serialized. This patch removes
1265
+ # these singleton methods before serialization. Setting to falsey removes
1266
+ # the patch.
1267
+ #
1268
+ # This method is idempotent.
1269
+ #
1270
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:188
1271
+ def patch_marshal_to_support_partial_doubles=(val); end
1272
+
1273
+ # @api private
1274
+ # Resets the configured syntax to the default.
1275
+ #
1276
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:198
1277
+ def reset_syntaxes_to_default; end
1278
+
1279
+ # Returns an array with a list of syntaxes
1280
+ # that are enabled.
1281
+ #
1282
+ # @example
1283
+ # unless RSpec::Mocks.configuration.syntax.include?(:expect)
1284
+ # raise "this RSpec extension gem requires the rspec-mocks `:expect` syntax"
1285
+ # end
1286
+ #
1287
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:104
1288
+ def syntax; end
1289
+
1290
+ # Provides the ability to set either `expect`,
1291
+ # `should` or both syntaxes. RSpec uses `expect`
1292
+ # syntax by default. This is needed if you want to
1293
+ # explicitly enable `should` syntax and/or explicitly
1294
+ # disable `expect` syntax.
1295
+ #
1296
+ # @example
1297
+ # RSpec.configure do |rspec|
1298
+ # rspec.mock_with :rspec do |mocks|
1299
+ # mocks.syntax = [:expect, :should]
1300
+ # end
1301
+ # end
1302
+ #
1303
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:81
1304
+ def syntax=(*values); end
1305
+
1306
+ # @private
1307
+ # Used to track wether we are temporarily suppressing verifying partial
1308
+ # doubles with `without_partial_double_verification { ... }`
1309
+ #
1310
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:161
1311
+ def temporarily_suppress_partial_double_verification; end
1312
+
1313
+ # @private
1314
+ # Used to track wether we are temporarily suppressing verifying partial
1315
+ # doubles with `without_partial_double_verification { ... }`
1316
+ #
1317
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:161
1318
+ def temporarily_suppress_partial_double_verification=(_arg0); end
1319
+
1320
+ # Sets the default for the `transfer_nested_constants` option when
1321
+ # stubbing constants.
1322
+ #
1323
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:145
1324
+ def transfer_nested_constants=(_arg0); end
1325
+
1326
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:139
1327
+ def transfer_nested_constants?; end
1328
+
1329
+ # When this is set to true, an error will be raised when
1330
+ # `instance_double` or `class_double` is given the name of an undefined
1331
+ # constant. You probably only want to set this when running your entire
1332
+ # test suite, with all production code loaded. Setting this for an
1333
+ # isolated unit test will prevent you from being able to isolate it!
1334
+ #
1335
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:120
1336
+ def verify_doubled_constant_names=(_arg0); end
1337
+
1338
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:111
1339
+ def verify_doubled_constant_names?; end
1340
+
1341
+ # When set to true, partial mocks will be verified the same as object
1342
+ # doubles. Any stubs will have their arguments checked against the original
1343
+ # method, and methods that do not exist cannot be stubbed.
1344
+ #
1345
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:150
1346
+ def verify_partial_doubles=(val); end
1347
+
1348
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:154
1349
+ def verify_partial_doubles?; end
1350
+
1351
+ # @api private
1352
+ # Returns an array of blocks to call when verifying doubles
1353
+ #
1354
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:135
1355
+ def verifying_double_callbacks; end
1356
+
1357
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:131
1358
+ def when_declaring_verifying_double(&block); end
1359
+
1360
+ # Sets whether or not RSpec will yield the receiving instance of a
1361
+ # message to blocks that are used for any_instance stub implementations.
1362
+ # When set, the first yielded argument will be the receiving instance.
1363
+ # Defaults to `true`.
1364
+ #
1365
+ # @example
1366
+ # RSpec.configure do |rspec|
1367
+ # rspec.mock_with :rspec do |mocks|
1368
+ # mocks.yield_receiver_to_any_instance_implementation_blocks = false
1369
+ # end
1370
+ # end
1371
+ #
1372
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:46
1373
+ def yield_receiver_to_any_instance_implementation_blocks=(_arg0); end
1374
+
1375
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:31
1376
+ def yield_receiver_to_any_instance_implementation_blocks?; end
1377
+ end
1378
+
1379
+ # Provides information about constants that may (or may not)
1380
+ # have been mutated by rspec-mocks.
1381
+ #
1382
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:7
1383
+ class RSpec::Mocks::Constant
1384
+ extend ::RSpec::Support::RecursiveConstMethods
1385
+
1386
+ # @api private
1387
+ #
1388
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:11
1389
+ def initialize(name); end
1390
+
1391
+ # @private
1392
+ #
1393
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:29
1394
+ def hidden=(_arg0); end
1395
+
1396
+ # @return [Boolean] Whether or not rspec-mocks has hidden
1397
+ # this constant.
1398
+ #
1399
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:51
1400
+ def hidden?; end
1401
+
1402
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:65
1403
+ def inspect; end
1404
+
1405
+ # @return [Boolean] Whether or not rspec-mocks has mutated
1406
+ # (stubbed or hidden) this constant.
1407
+ #
1408
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:39
1409
+ def mutated?; end
1410
+
1411
+ # @return [String] The fully qualified name of the constant.
1412
+ #
1413
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:21
1414
+ def name; end
1415
+
1416
+ # @return [Object, nil] The original value (e.g. before it
1417
+ # was mutated by rspec-mocks) of the constant, or
1418
+ # nil if the constant was not previously defined.
1419
+ #
1420
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:26
1421
+ def original_value; end
1422
+
1423
+ # @return [Object, nil] The original value (e.g. before it
1424
+ # was mutated by rspec-mocks) of the constant, or
1425
+ # nil if the constant was not previously defined.
1426
+ #
1427
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:26
1428
+ def original_value=(_arg0); end
1429
+
1430
+ # @private
1431
+ #
1432
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:29
1433
+ def previously_defined=(_arg0); end
1434
+
1435
+ # @return [Boolean] Whether or not the constant was defined
1436
+ # before the current example.
1437
+ #
1438
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:33
1439
+ def previously_defined?; end
1440
+
1441
+ # @private
1442
+ #
1443
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:29
1444
+ def stubbed=(_arg0); end
1445
+
1446
+ # @return [Boolean] Whether or not rspec-mocks has stubbed
1447
+ # this constant.
1448
+ #
1449
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:45
1450
+ def stubbed?; end
1451
+
1452
+ # The default `to_s` isn't very useful, so a custom version is provided.
1453
+ #
1454
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:62
1455
+ def to_s; end
1456
+
1457
+ # @private
1458
+ #
1459
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:29
1460
+ def valid_name=(_arg0); end
1461
+
1462
+ # @return [Boolean] Whether or not the provided constant name
1463
+ # is a valid Ruby constant name.
1464
+ #
1465
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:57
1466
+ def valid_name?; end
1467
+
1468
+ class << self
1469
+ # Queries rspec-mocks to find out information about the named constant.
1470
+ #
1471
+ # @param [String] name the name of the constant
1472
+ # @return [Constant] an object containing information about the named
1473
+ # constant.
1474
+ #
1475
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:86
1476
+ def original(name); end
1477
+
1478
+ # @private
1479
+ #
1480
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:68
1481
+ def unmutated(name); end
1482
+ end
1483
+ end
1484
+
1485
+ # Provides a means to stub constants.
1486
+ #
1487
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:93
1488
+ class RSpec::Mocks::ConstantMutator
1489
+ extend ::RSpec::Support::RecursiveConstMethods
1490
+
1491
+ class << self
1492
+ # Hides a constant.
1493
+ #
1494
+ # @param (see ExampleMethods#hide_const)
1495
+ #
1496
+ # @see ExampleMethods#hide_const
1497
+ # @note It's recommended that you use `hide_const` in your
1498
+ # examples. This is an alternate public API that is provided
1499
+ # so you can hide constants in other contexts (e.g. helper
1500
+ # classes).
1501
+ #
1502
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:131
1503
+ def hide(constant_name); end
1504
+
1505
+ # Uses the mutator to mutate (stub or hide) a constant. Ensures that
1506
+ # the mutator is correctly registered so it can be backed out at the end
1507
+ # of the test.
1508
+ #
1509
+ # @private
1510
+ #
1511
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:320
1512
+ def mutate(mutator); end
1513
+
1514
+ # Used internally by the constant stubbing to raise a helpful
1515
+ # error when a constant like "A::B::C" is stubbed and A::B is
1516
+ # not a module (and thus, it's impossible to define "A::B::C"
1517
+ # since only modules can have nested constants).
1518
+ #
1519
+ # @api private
1520
+ #
1521
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:331
1522
+ def raise_on_invalid_const; end
1523
+
1524
+ # Stubs a constant.
1525
+ #
1526
+ # @param (see ExampleMethods#stub_const)
1527
+ # @option (see ExampleMethods#stub_const)
1528
+ # @return (see ExampleMethods#stub_const)
1529
+ #
1530
+ # @see ExampleMethods#stub_const
1531
+ # @note It's recommended that you use `stub_const` in your
1532
+ # examples. This is an alternate public API that is provided
1533
+ # so you can stub constants in other contexts (e.g. helper
1534
+ # classes).
1535
+ #
1536
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:107
1537
+ def stub(constant_name, value, options = T.unsafe(nil)); end
1538
+ end
1539
+ end
1540
+
1541
+ # Contains common functionality used by all of the constant mutators.
1542
+ #
1543
+ # @private
1544
+ #
1545
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:139
1546
+ class RSpec::Mocks::ConstantMutator::BaseMutator
1547
+ include ::RSpec::Support::RecursiveConstMethods
1548
+
1549
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:144
1550
+ def initialize(full_constant_name, mutated_value, transfer_nested_constants); end
1551
+
1552
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:142
1553
+ def full_constant_name; end
1554
+
1555
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:160
1556
+ def idempotently_reset; end
1557
+
1558
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:142
1559
+ def original_value; end
1560
+
1561
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:153
1562
+ def to_constant; end
1563
+ end
1564
+
1565
+ # Hides a defined constant for the duration of an example.
1566
+ #
1567
+ # @private
1568
+ #
1569
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:169
1570
+ class RSpec::Mocks::ConstantMutator::ConstantHider < ::RSpec::Mocks::ConstantMutator::BaseMutator
1571
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:170
1572
+ def mutate; end
1573
+
1574
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:188
1575
+ def reset; end
1576
+
1577
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:178
1578
+ def to_constant; end
1579
+ end
1580
+
1581
+ # Replaces a defined constant for the duration of an example.
1582
+ #
1583
+ # @private
1584
+ #
1585
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:197
1586
+ class RSpec::Mocks::ConstantMutator::DefinedConstantReplacer < ::RSpec::Mocks::ConstantMutator::BaseMutator
1587
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:198
1588
+ def initialize(*args); end
1589
+
1590
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:203
1591
+ def mutate; end
1592
+
1593
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:223
1594
+ def reset; end
1595
+
1596
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:268
1597
+ def should_transfer_nested_constants?; end
1598
+
1599
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:215
1600
+ def to_constant; end
1601
+
1602
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:232
1603
+ def transfer_nested_constants; end
1604
+
1605
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:238
1606
+ def verify_constants_to_transfer!; end
1607
+ end
1608
+
1609
+ # Sets an undefined constant for the duration of an example.
1610
+ #
1611
+ # @private
1612
+ #
1613
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:278
1614
+ class RSpec::Mocks::ConstantMutator::UndefinedConstantSetter < ::RSpec::Mocks::ConstantMutator::BaseMutator
1615
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:279
1616
+ def mutate; end
1617
+
1618
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:299
1619
+ def reset; end
1620
+
1621
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:291
1622
+ def to_constant; end
1623
+
1624
+ private
1625
+
1626
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/mutate_const.rb:305
1627
+ def name_for(parent, name); end
1628
+ end
1629
+
1630
+ # @private
1631
+ #
1632
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:104
1633
+ RSpec::Mocks::DEFAULT_CALLBACK_INVOCATION_STRATEGY = T.let(T.unsafe(nil), RSpec::Mocks::CallbackInvocationStrategy)
1634
+
1635
+ # An implementation of rspec-mocks' reference interface.
1636
+ # Used when an object is passed to {ExampleMethods#object_double}, or
1637
+ # an anonymous class or module is passed to {ExampleMethods#instance_double}
1638
+ # or {ExampleMethods#class_double}.
1639
+ # Represents a reference to that object.
1640
+ # @see NamedObjectReference
1641
+ #
1642
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:56
1643
+ class RSpec::Mocks::DirectObjectReference
1644
+ # @param object [Object] the object to which this refers
1645
+ #
1646
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:58
1647
+ def initialize(object); end
1648
+
1649
+ # Defined for interface parity with the other object reference
1650
+ # implementations. Raises an `ArgumentError` to indicate that `as_stubbed_const`
1651
+ # is invalid when passing an object argument to `object_double`.
1652
+ #
1653
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:70
1654
+ def const_to_replace; end
1655
+
1656
+ # Always returns true for an object as the class is defined.
1657
+ #
1658
+ # @return [true]
1659
+ #
1660
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:85
1661
+ def defined?; end
1662
+
1663
+ # @return [String] the object's description (via `#inspect`).
1664
+ #
1665
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:63
1666
+ def description; end
1667
+
1668
+ # The target of the verifying double (the object itself).
1669
+ #
1670
+ # @return [Object]
1671
+ #
1672
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:78
1673
+ def target; end
1674
+
1675
+ # Yields if the reference target is loaded, providing a generic mechanism
1676
+ # to optionally run a bit of code only when a reference's target is
1677
+ # loaded.
1678
+ #
1679
+ # This specific implementation always yields because direct references
1680
+ # are always loaded.
1681
+ #
1682
+ # @yield [Object] the target of this reference.
1683
+ #
1684
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:97
1685
+ def when_loaded; end
1686
+ end
1687
+
1688
+ # A generic test double object. `double`, `instance_double` and friends
1689
+ # return an instance of this.
1690
+ #
1691
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:132
1692
+ class RSpec::Mocks::Double
1693
+ include ::RSpec::Mocks::TestDouble
1694
+ end
1695
+
1696
+ # @private
1697
+ #
1698
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:36
1699
+ class RSpec::Mocks::ErrorGenerator
1700
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:39
1701
+ def initialize(target = T.unsafe(nil)); end
1702
+
1703
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:71
1704
+ def default_error_message(expectation, expected_args, actual_args); end
1705
+
1706
+ # @private
1707
+ #
1708
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:132
1709
+ def describe_expectation(verb, message, expected_received_count, _actual_received_count, args); end
1710
+
1711
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:215
1712
+ def expectation_on_nil_message(method_name); end
1713
+
1714
+ # @private
1715
+ #
1716
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:222
1717
+ def intro(unwrapped = T.unsafe(nil)); end
1718
+
1719
+ # @private
1720
+ #
1721
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:235
1722
+ def method_call_args_description(args, generic_prefix = T.unsafe(nil), matcher_prefix = T.unsafe(nil)); end
1723
+
1724
+ # @private
1725
+ #
1726
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:44
1727
+ def opts; end
1728
+
1729
+ # @private
1730
+ #
1731
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:37
1732
+ def opts=(_arg0); end
1733
+
1734
+ # @private
1735
+ #
1736
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:203
1737
+ def raise_already_invoked_error(message, calling_customization); end
1738
+
1739
+ # @private
1740
+ #
1741
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:193
1742
+ def raise_cant_constrain_count_for_negated_have_received_error(count_constraint); end
1743
+
1744
+ # @private
1745
+ #
1746
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:170
1747
+ def raise_double_negation_error(wrapped_expression); end
1748
+
1749
+ # @private
1750
+ #
1751
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:77
1752
+ def raise_expectation_error(message, expected_received_count, argument_list_matcher, actual_received_count, expectation_count_type, args, backtrace_line = T.unsafe(nil), source_id = T.unsafe(nil)); end
1753
+
1754
+ # @private
1755
+ #
1756
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:164
1757
+ def raise_expectation_on_mocked_method(method); end
1758
+
1759
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:211
1760
+ def raise_expectation_on_nil_error(method_name); end
1761
+
1762
+ # @private
1763
+ #
1764
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:158
1765
+ def raise_expectation_on_unstubbed_method(method); end
1766
+
1767
+ # @private
1768
+ #
1769
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:123
1770
+ def raise_expired_test_double_error; end
1771
+
1772
+ # @private
1773
+ #
1774
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:187
1775
+ def raise_have_received_disallowed(type, reason); end
1776
+
1777
+ # @private
1778
+ #
1779
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:118
1780
+ def raise_invalid_arguments_error(verifier); end
1781
+
1782
+ # @private
1783
+ #
1784
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:198
1785
+ def raise_method_not_stubbed_error(method_name); end
1786
+
1787
+ # @private
1788
+ #
1789
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:142
1790
+ def raise_missing_block_error(args_to_yield); end
1791
+
1792
+ # @private
1793
+ #
1794
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:59
1795
+ def raise_missing_default_stub_error(expectation, args_for_multiple_calls); end
1796
+
1797
+ # @private
1798
+ #
1799
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:111
1800
+ def raise_non_public_error(method_name, visibility); end
1801
+
1802
+ # @private
1803
+ #
1804
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:152
1805
+ def raise_only_valid_on_a_partial_double(method); end
1806
+
1807
+ # @private
1808
+ #
1809
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:137
1810
+ def raise_out_of_order_error(message); end
1811
+
1812
+ # @private
1813
+ #
1814
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:67
1815
+ def raise_similar_message_args_error(expectation, args_for_multiple_calls, backtrace_line = T.unsafe(nil)); end
1816
+
1817
+ # @private
1818
+ #
1819
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:54
1820
+ def raise_unexpected_message_args_error(expectation, args_for_multiple_calls, source_id = T.unsafe(nil)); end
1821
+
1822
+ # @private
1823
+ #
1824
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:49
1825
+ def raise_unexpected_message_error(message, args); end
1826
+
1827
+ # @private
1828
+ #
1829
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:87
1830
+ def raise_unimplemented_error(doubled_module, method_name, object); end
1831
+
1832
+ # @private
1833
+ #
1834
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:178
1835
+ def raise_verifying_double_not_defined_error(ref); end
1836
+
1837
+ # @private
1838
+ #
1839
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:147
1840
+ def raise_wrong_arity_error(args_to_yield, signature); end
1841
+
1842
+ private
1843
+
1844
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:328
1845
+ def __raise(message, backtrace_line = T.unsafe(nil), source_id = T.unsafe(nil)); end
1846
+
1847
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:356
1848
+ def arg_list(args); end
1849
+
1850
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:366
1851
+ def count_message(count, expectation_count_type = T.unsafe(nil)); end
1852
+
1853
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:302
1854
+ def diff_message(expected_args, actual_args); end
1855
+
1856
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:324
1857
+ def differ; end
1858
+
1859
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:268
1860
+ def error_message(expectation, args_for_multiple_calls); end
1861
+
1862
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:257
1863
+ def expected_part_of_expectation_error(expected_received_count, expectation_count_type, argument_list_matcher); end
1864
+
1865
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:351
1866
+ def format_args(args); end
1867
+
1868
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:360
1869
+ def format_received_args(args_for_multiple_calls); end
1870
+
1871
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:380
1872
+ def group_count(index, args); end
1873
+
1874
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:376
1875
+ def grouped_args(args); end
1876
+
1877
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:320
1878
+ def list_of_exactly_one_string?(args); end
1879
+
1880
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:347
1881
+ def notify(*args); end
1882
+
1883
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:342
1884
+ def prepend_to_backtrace(exception, line); end
1885
+
1886
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:250
1887
+ def received_part_of_expectation_error(actual_received_count, args); end
1888
+
1889
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:372
1890
+ def times(count); end
1891
+
1892
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:264
1893
+ def unexpected_arguments_message(expected_args_string, actual_args_string); end
1894
+
1895
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:312
1896
+ def unpack_string_args(formatted_expected_args, actual_args); end
1897
+ end
1898
+
1899
+ # Contains methods intended to be used from within code examples.
1900
+ # Mix this in to your test context (such as a test framework base class)
1901
+ # to use rspec-mocks with your test framework. If you're using rspec-core,
1902
+ # it'll take care of doing this for you.
1903
+ #
1904
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:9
1905
+ module RSpec::Mocks::ExampleMethods
1906
+ include ::RSpec::Mocks::ArgumentMatchers
1907
+ include ::RSpec::Mocks::ExampleMethods::ExpectHost
1908
+
1909
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:84
1910
+ def allow(target); end
1911
+
1912
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:84
1913
+ def allow_any_instance_of(klass); end
1914
+
1915
+ # Disables warning messages about expectations being set on nil.
1916
+ #
1917
+ # By default warning messages are issued when expectations are set on
1918
+ # nil. This is to prevent false-positives and to catch potential bugs
1919
+ # early on.
1920
+ # @deprecated Use {RSpec::Mocks::Configuration#allow_message_expectations_on_nil} instead.
1921
+ #
1922
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:201
1923
+ def allow_message_expectations_on_nil; end
1924
+
1925
+ # @overload class_double(doubled_class)
1926
+ # @param doubled_class [String, Module]
1927
+ # @overload class_double(doubled_class, name)
1928
+ # @param doubled_class [String, Module]
1929
+ # @param name [String/Symbol] name or description to be used in failure messages
1930
+ # @overload class_double(doubled_class, stubs)
1931
+ # @param doubled_class [String, Module]
1932
+ # @param stubs [Hash] hash of message/return-value pairs
1933
+ # @overload class_double(doubled_class, name, stubs)
1934
+ # @param doubled_class [String, Module]
1935
+ # @param name [String/Symbol] name or description to be used in failure messages
1936
+ # @param stubs [Hash] hash of message/return-value pairs
1937
+ # @return ClassVerifyingDouble
1938
+ #
1939
+ # Constructs a test double against a specific class. If the given class
1940
+ # name has been loaded, only class methods defined on the class are
1941
+ # allowed to be stubbed. In all other ways it behaves like a
1942
+ # [double](double).
1943
+ #
1944
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:79
1945
+ def class_double(doubled_class, *args); end
1946
+
1947
+ # @overload class_spy(doubled_class)
1948
+ # @param doubled_class [String, Module]
1949
+ # @overload class_spy(doubled_class, name)
1950
+ # @param doubled_class [String, Class]
1951
+ # @param name [String/Symbol] name or description to be used in failure messages
1952
+ # @overload class_spy(doubled_class, stubs)
1953
+ # @param doubled_class [String, Module]
1954
+ # @param stubs [Hash] hash of message/return-value pairs
1955
+ # @overload class_spy(doubled_class, name, stubs)
1956
+ # @param doubled_class [String, Class]
1957
+ # @param name [String/Symbol] name or description to be used in failure messages
1958
+ # @param stubs [Hash] hash of message/return-value pairs
1959
+ # @return ClassVerifyingDouble
1960
+ #
1961
+ # Constructs a test double that is optimized for use with `have_received`
1962
+ # against a specific class. If the given class name has been loaded,
1963
+ # only class methods defined on the class are allowed to be stubbed.
1964
+ # With a normal double one has to stub methods in order to be able to spy
1965
+ # them. An class_spy automatically spies on all class methods to which the
1966
+ # class responds.
1967
+ #
1968
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:191
1969
+ def class_spy(*args); end
1970
+
1971
+ # @overload double()
1972
+ # @overload double(name)
1973
+ # @param name [String/Symbol] name or description to be used in failure messages
1974
+ # @overload double(stubs)
1975
+ # @param stubs (Hash) hash of message/return-value pairs
1976
+ # @overload double(name, stubs)
1977
+ # @param name [String/Symbol] name or description to be used in failure messages
1978
+ # @param stubs (Hash) hash of message/return-value pairs
1979
+ # @return (Double)
1980
+ #
1981
+ # Constructs an instance of [RSpec::Mocks::Double](RSpec::Mocks::Double) configured
1982
+ # with an optional name, used for reporting in failure messages, and an optional
1983
+ # hash of message/return-value pairs.
1984
+ #
1985
+ # @example
1986
+ # book = double("book", :title => "The RSpec Book")
1987
+ # book.title #=> "The RSpec Book"
1988
+ #
1989
+ # card = double("card", :suit => "Spades", :rank => "A")
1990
+ # card.suit #=> "Spades"
1991
+ # card.rank #=> "A"
1992
+ #
1993
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:34
1994
+ def double(*args); end
1995
+
1996
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:84
1997
+ def expect_any_instance_of(klass); end
1998
+
1999
+ # Verifies that the given object received the expected message during the
2000
+ # course of the test. On a spy objects or as null object doubles this
2001
+ # works for any method, on other objects the method must have
2002
+ # been stubbed beforehand in order for messages to be verified.
2003
+ #
2004
+ # Stubbing and verifying messages received in this way implements the
2005
+ # Test Spy pattern.
2006
+ #
2007
+ # @param method_name [Symbol] name of the method expected to have been
2008
+ # called.
2009
+ #
2010
+ # @example
2011
+ # invitation = double('invitation', accept: true)
2012
+ # user.accept_invitation(invitation)
2013
+ # expect(invitation).to have_received(:accept)
2014
+ #
2015
+ # # You can also use most message expectations:
2016
+ # expect(invitation).to have_received(:accept).with(mailer).once
2017
+ #
2018
+ # @note `have_received(...).with(...)` is unable to work properly when
2019
+ # passed arguments are mutated after the spy records the received message.
2020
+ #
2021
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:281
2022
+ def have_received(method_name, &block); end
2023
+
2024
+ # Hides the named constant with the given value. The constant will be
2025
+ # undefined for the duration of the test.
2026
+ #
2027
+ # Like method stubs, the constant will be restored to its original value
2028
+ # when the example completes.
2029
+ #
2030
+ # @param constant_name [String] The fully qualified name of the constant.
2031
+ # The current constant scoping at the point of call is not considered.
2032
+ #
2033
+ # @example
2034
+ # hide_const("MyClass") # => MyClass is now an undefined constant
2035
+ #
2036
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:256
2037
+ def hide_const(constant_name); end
2038
+
2039
+ # @overload instance_double(doubled_class)
2040
+ # @param doubled_class [String, Class]
2041
+ # @overload instance_double(doubled_class, name)
2042
+ # @param doubled_class [String, Class]
2043
+ # @param name [String/Symbol] name or description to be used in failure messages
2044
+ # @overload instance_double(doubled_class, stubs)
2045
+ # @param doubled_class [String, Class]
2046
+ # @param stubs [Hash] hash of message/return-value pairs
2047
+ # @overload instance_double(doubled_class, name, stubs)
2048
+ # @param doubled_class [String, Class]
2049
+ # @param name [String/Symbol] name or description to be used in failure messages
2050
+ # @param stubs [Hash] hash of message/return-value pairs
2051
+ # @return InstanceVerifyingDouble
2052
+ #
2053
+ # Constructs a test double against a specific class. If the given class
2054
+ # name has been loaded, only instance methods defined on the class are
2055
+ # allowed to be stubbed. In all other ways it behaves like a
2056
+ # [double](double).
2057
+ #
2058
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:56
2059
+ def instance_double(doubled_class, *args); end
2060
+
2061
+ # @overload instance_spy(doubled_class)
2062
+ # @param doubled_class [String, Class]
2063
+ # @overload instance_spy(doubled_class, name)
2064
+ # @param doubled_class [String, Class]
2065
+ # @param name [String/Symbol] name or description to be used in failure messages
2066
+ # @overload instance_spy(doubled_class, stubs)
2067
+ # @param doubled_class [String, Class]
2068
+ # @param stubs [Hash] hash of message/return-value pairs
2069
+ # @overload instance_spy(doubled_class, name, stubs)
2070
+ # @param doubled_class [String, Class]
2071
+ # @param name [String/Symbol] name or description to be used in failure messages
2072
+ # @param stubs [Hash] hash of message/return-value pairs
2073
+ # @return InstanceVerifyingDouble
2074
+ #
2075
+ # Constructs a test double that is optimized for use with `have_received`
2076
+ # against a specific class. If the given class name has been loaded, only
2077
+ # instance methods defined on the class are allowed to be stubbed. With
2078
+ # a normal double one has to stub methods in order to be able to spy
2079
+ # them. An instance_spy automatically spies on all instance methods to
2080
+ # which the class responds.
2081
+ #
2082
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:144
2083
+ def instance_spy(*args); end
2084
+
2085
+ # @overload object_double(object_or_name)
2086
+ # @param object_or_name [String, Object]
2087
+ # @overload object_double(object_or_name, name)
2088
+ # @param object_or_name [String, Object]
2089
+ # @param name [String/Symbol] name or description to be used in failure messages
2090
+ # @overload object_double(object_or_name, stubs)
2091
+ # @param object_or_name [String, Object]
2092
+ # @param stubs [Hash] hash of message/return-value pairs
2093
+ # @overload object_double(object_or_name, name, stubs)
2094
+ # @param object_or_name [String, Object]
2095
+ # @param name [String/Symbol] name or description to be used in failure messages
2096
+ # @param stubs [Hash] hash of message/return-value pairs
2097
+ # @return ObjectVerifyingDouble
2098
+ #
2099
+ # Constructs a test double against a specific object. Only the methods
2100
+ # the object responds to are allowed to be stubbed. If a String argument
2101
+ # is provided, it is assumed to reference a constant object which is used
2102
+ # for verification. In all other ways it behaves like a [double](double).
2103
+ #
2104
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:102
2105
+ def object_double(object_or_name, *args); end
2106
+
2107
+ # @overload object_spy(object_or_name)
2108
+ # @param object_or_name [String, Object]
2109
+ # @overload object_spy(object_or_name, name)
2110
+ # @param object_or_name [String, Class]
2111
+ # @param name [String/Symbol] name or description to be used in failure messages
2112
+ # @overload object_spy(object_or_name, stubs)
2113
+ # @param object_or_name [String, Object]
2114
+ # @param stubs [Hash] hash of message/return-value pairs
2115
+ # @overload object_spy(object_or_name, name, stubs)
2116
+ # @param object_or_name [String, Class]
2117
+ # @param name [String/Symbol] name or description to be used in failure messages
2118
+ # @param stubs [Hash] hash of message/return-value pairs
2119
+ # @return ObjectVerifyingDouble
2120
+ #
2121
+ # Constructs a test double that is optimized for use with `have_received`
2122
+ # against a specific object. Only instance methods defined on the object
2123
+ # are allowed to be stubbed. With a normal double one has to stub
2124
+ # methods in order to be able to spy them. An object_spy automatically
2125
+ # spies on all methods to which the object responds.
2126
+ #
2127
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:167
2128
+ def object_spy(*args); end
2129
+
2130
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:84
2131
+ def receive(method_name, &block); end
2132
+
2133
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:84
2134
+ def receive_message_chain(*messages, &block); end
2135
+
2136
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:84
2137
+ def receive_messages(message_return_value_hash); end
2138
+
2139
+ # @overload spy()
2140
+ # @overload spy(name)
2141
+ # @param name [String/Symbol] name or description to be used in failure messages
2142
+ # @overload spy(stubs)
2143
+ # @param stubs (Hash) hash of message/return-value pairs
2144
+ # @overload spy(name, stubs)
2145
+ # @param name [String/Symbol] name or description to be used in failure messages
2146
+ # @param stubs (Hash) hash of message/return-value pairs
2147
+ # @return (Double)
2148
+ #
2149
+ # Constructs a test double that is optimized for use with
2150
+ # `have_received`. With a normal double one has to stub methods in order
2151
+ # to be able to spy them. A spy automatically spies on all methods.
2152
+ #
2153
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:120
2154
+ def spy(*args); end
2155
+
2156
+ # Stubs the named constant with the given value.
2157
+ # Like method stubs, the constant will be restored
2158
+ # to its original value (or lack of one, if it was
2159
+ # undefined) when the example completes.
2160
+ #
2161
+ # @param constant_name [String] The fully qualified name of the constant. The current
2162
+ # constant scoping at the point of call is not considered.
2163
+ # @param value [Object] The value to make the constant refer to. When the
2164
+ # example completes, the constant will be restored to its prior state.
2165
+ # @param options [Hash] Stubbing options.
2166
+ # @option options :transfer_nested_constants [Boolean, Array<Symbol>] Determines
2167
+ # what nested constants, if any, will be transferred from the original value
2168
+ # of the constant to the new value of the constant. This only works if both
2169
+ # the original and new values are modules (or classes).
2170
+ # @return [Object] the stubbed value of the constant
2171
+ #
2172
+ # @example
2173
+ # stub_const("MyClass", Class.new) # => Replaces (or defines) MyClass with a new class object.
2174
+ # stub_const("SomeModel::PER_PAGE", 5) # => Sets SomeModel::PER_PAGE to 5.
2175
+ #
2176
+ # class CardDeck
2177
+ # SUITS = [:Spades, :Diamonds, :Clubs, :Hearts]
2178
+ # NUM_CARDS = 52
2179
+ # end
2180
+ #
2181
+ # stub_const("CardDeck", Class.new)
2182
+ # CardDeck::SUITS # => uninitialized constant error
2183
+ # CardDeck::NUM_CARDS # => uninitialized constant error
2184
+ #
2185
+ # stub_const("CardDeck", Class.new, :transfer_nested_constants => true)
2186
+ # CardDeck::SUITS # => our suits array
2187
+ # CardDeck::NUM_CARDS # => 52
2188
+ #
2189
+ # stub_const("CardDeck", Class.new, :transfer_nested_constants => [:SUITS])
2190
+ # CardDeck::SUITS # => our suits array
2191
+ # CardDeck::NUM_CARDS # => uninitialized constant error
2192
+ #
2193
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:241
2194
+ def stub_const(constant_name, value, options = T.unsafe(nil)); end
2195
+
2196
+ # Turns off the verifying of partial doubles for the duration of the
2197
+ # block, this is useful in situations where methods are defined at run
2198
+ # time and you wish to define stubs for them but not turn off partial
2199
+ # doubles for the entire run suite. (e.g. view specs in rspec-rails).
2200
+ #
2201
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:289
2202
+ def without_partial_double_verification; end
2203
+
2204
+ class << self
2205
+ # @private
2206
+ #
2207
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:423
2208
+ def declare_double(type, *args); end
2209
+
2210
+ # @private
2211
+ #
2212
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:408
2213
+ def declare_verifying_double(type, ref, *args); end
2214
+
2215
+ # @private
2216
+ #
2217
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:401
2218
+ def extended(object); end
2219
+
2220
+ # @private
2221
+ #
2222
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:392
2223
+ def included(klass); end
2224
+ end
2225
+ end
2226
+
2227
+ # This module exists to host the `expect` method for cases where
2228
+ # rspec-mocks is used w/o rspec-expectations.
2229
+ #
2230
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/example_methods.rb:430
2231
+ module RSpec::Mocks::ExampleMethods::ExpectHost
2232
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/configuration.rb:84
2233
+ def expect(target); end
2234
+ end
2235
+
2236
+ # @private
2237
+ #
2238
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:61
2239
+ class RSpec::Mocks::ExpectChain < ::RSpec::Mocks::MessageChain
2240
+ private
2241
+
2242
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:69
2243
+ def expectation(object, message, &return_block); end
2244
+
2245
+ class << self
2246
+ # @api private
2247
+ #
2248
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:63
2249
+ def expect_chain_on(object, *chain, &blk); end
2250
+ end
2251
+ end
2252
+
2253
+ # @private
2254
+ #
2255
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:87
2256
+ class RSpec::Mocks::ExpectationTarget < ::RSpec::Mocks::TargetBase
2257
+ include ::RSpec::Mocks::ExpectationTargetMethods
2258
+ end
2259
+
2260
+ # @private
2261
+ #
2262
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:73
2263
+ module RSpec::Mocks::ExpectationTargetMethods
2264
+ include ::RSpec::Mocks::TargetDelegationInstanceMethods
2265
+ extend ::RSpec::Mocks::TargetDelegationClassMethods
2266
+
2267
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:81
2268
+ def expression; end
2269
+
2270
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:16
2271
+ def not_to(matcher, &block); end
2272
+
2273
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:6
2274
+ def to(matcher, &block); end
2275
+
2276
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:16
2277
+ def to_not(matcher, &block); end
2278
+ end
2279
+
2280
+ # Raised when a test double is used after it has been torn
2281
+ # down (typically at the end of an rspec-core example).
2282
+ #
2283
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:10
2284
+ class RSpec::Mocks::ExpiredTestDoubleError < ::RSpec::Mocks::MockExpectationError; end
2285
+
2286
+ # @private
2287
+ #
2288
+ # pkg:gem/rspec-mocks#lib/rspec/mocks.rb:112
2289
+ RSpec::Mocks::IGNORED_BACKTRACE_LINE = T.let(T.unsafe(nil), String)
2290
+
2291
+ # Represents a configured implementation. Takes into account
2292
+ # any number of sub-implementations.
2293
+ # @private
2294
+ #
2295
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:756
2296
+ class RSpec::Mocks::Implementation
2297
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:759
2298
+ def call(*args, **_arg1, &block); end
2299
+
2300
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:757
2301
+ def initial_action; end
2302
+
2303
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:757
2304
+ def initial_action=(_arg0); end
2305
+
2306
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:757
2307
+ def inner_action; end
2308
+
2309
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:757
2310
+ def inner_action=(_arg0); end
2311
+
2312
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:766
2313
+ def present?; end
2314
+
2315
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:757
2316
+ def terminal_action; end
2317
+
2318
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:757
2319
+ def terminal_action=(_arg0); end
2320
+
2321
+ private
2322
+
2323
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:772
2324
+ def actions; end
2325
+ end
2326
+
2327
+ # @private
2328
+ #
2329
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:113
2330
+ class RSpec::Mocks::InstanceMethodReference < ::RSpec::Mocks::MethodReference
2331
+ private
2332
+
2333
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:138
2334
+ def find_method(mod); end
2335
+
2336
+ # Ideally, we'd use `respond_to?` for `method_implemented?` but we need a
2337
+ # reference to an instance to do that and we don't have one. Note that
2338
+ # we may get false negatives: if the method is implemented via
2339
+ # `method_missing`, we'll return `false` even though it meets our
2340
+ # definition of "implemented". However, it's the best we can do.
2341
+ #
2342
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:125
2343
+ def method_defined?(mod); end
2344
+
2345
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:116
2346
+ def method_implemented?(mod); end
2347
+
2348
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:143
2349
+ def visibility_from(mod); end
2350
+ end
2351
+
2352
+ # @private
2353
+ #
2354
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:4
2355
+ class RSpec::Mocks::InstanceMethodStasher
2356
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:5
2357
+ def initialize(object, method); end
2358
+
2359
+ # ruby 2.0.0-p247 and 2.0.0-p195 both have a bug that we can't work around :(.
2360
+ # https://bugs.ruby-lang.org/issues/8686
2361
+ #
2362
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:91
2363
+ def handle_restoration_failures; end
2364
+
2365
+ # @private
2366
+ # @private
2367
+ #
2368
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:49
2369
+ def method_is_stashed?; end
2370
+
2371
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:14
2372
+ def original_method; end
2373
+
2374
+ # @private
2375
+ # @private
2376
+ #
2377
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:61
2378
+ def restore; end
2379
+
2380
+ # @private
2381
+ # @private
2382
+ #
2383
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:54
2384
+ def stash; end
2385
+
2386
+ private
2387
+
2388
+ # @private
2389
+ #
2390
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:100
2391
+ def method_defined_directly_on_klass?; end
2392
+
2393
+ # @private
2394
+ #
2395
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:105
2396
+ def method_defined_on_klass?(klass = T.unsafe(nil)); end
2397
+
2398
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/instance_method_stasher.rb:109
2399
+ def method_owned_by_klass?; end
2400
+ end
2401
+
2402
+ # A mock providing a custom proxy that can verify the validity of any
2403
+ # method stubs or expectations against the public instance methods of the
2404
+ # given class.
2405
+ #
2406
+ # @private
2407
+ #
2408
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:71
2409
+ class RSpec::Mocks::InstanceVerifyingDouble
2410
+ include ::RSpec::Mocks::TestDouble
2411
+ include ::RSpec::Mocks::VerifyingDouble
2412
+
2413
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:75
2414
+ def __build_mock_proxy(order_group); end
2415
+ end
2416
+
2417
+ # Support for `patch_marshal_to_support_partial_doubles` configuration.
2418
+ #
2419
+ # @private
2420
+ #
2421
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/marshal_extension.rb:6
2422
+ class RSpec::Mocks::MarshalExtension
2423
+ class << self
2424
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/marshal_extension.rb:7
2425
+ def patch!; end
2426
+
2427
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/marshal_extension.rb:27
2428
+ def unpatch!; end
2429
+ end
2430
+ end
2431
+
2432
+ # Namespace for mock-related matchers.
2433
+ #
2434
+ # pkg:gem/rspec-mocks#lib/rspec/mocks.rb:122
2435
+ module RSpec::Mocks::Matchers; end
2436
+
2437
+ # @private
2438
+ #
2439
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/expectation_customization.rb:5
2440
+ class RSpec::Mocks::Matchers::ExpectationCustomization
2441
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/expectation_customization.rb:8
2442
+ def initialize(method_name, args, block); end
2443
+
2444
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/expectation_customization.rb:6
2445
+ def block; end
2446
+
2447
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/expectation_customization.rb:6
2448
+ def block=(_arg0); end
2449
+
2450
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/expectation_customization.rb:14
2451
+ def playback_onto(expectation); end
2452
+ end
2453
+
2454
+ # @private
2455
+ #
2456
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:5
2457
+ class RSpec::Mocks::Matchers::HaveReceived
2458
+ include ::RSpec::Mocks::Matchers::Matcher
2459
+
2460
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:12
2461
+ def initialize(method_name, &block); end
2462
+
2463
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:53
2464
+ def at_least(*args); end
2465
+
2466
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:53
2467
+ def at_most(*args); end
2468
+
2469
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:48
2470
+ def description; end
2471
+
2472
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:32
2473
+ def does_not_match?(subject); end
2474
+
2475
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:53
2476
+ def exactly(*args); end
2477
+
2478
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:40
2479
+ def failure_message; end
2480
+
2481
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:44
2482
+ def failure_message_when_negated; end
2483
+
2484
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:19
2485
+ def matcher_name; end
2486
+
2487
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:23
2488
+ def matches?(subject, &block); end
2489
+
2490
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:53
2491
+ def once(*args); end
2492
+
2493
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:53
2494
+ def ordered(*args); end
2495
+
2496
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:67
2497
+ def setup_allowance(_subject, &_block); end
2498
+
2499
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:71
2500
+ def setup_any_instance_allowance(_subject, &_block); end
2501
+
2502
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:75
2503
+ def setup_any_instance_expectation(_subject, &_block); end
2504
+
2505
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:79
2506
+ def setup_any_instance_negative_expectation(_subject, &_block); end
2507
+
2508
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:59
2509
+ def setup_expectation(subject, &block); end
2510
+
2511
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:63
2512
+ def setup_negative_expectation(subject, &block); end
2513
+
2514
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:53
2515
+ def thrice(*args); end
2516
+
2517
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:53
2518
+ def time(*args); end
2519
+
2520
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:53
2521
+ def times(*args); end
2522
+
2523
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:53
2524
+ def twice(*args); end
2525
+
2526
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:53
2527
+ def with(*args); end
2528
+
2529
+ private
2530
+
2531
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:95
2532
+ def apply_constraints_to(expectation); end
2533
+
2534
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:112
2535
+ def capture_failure_message; end
2536
+
2537
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:106
2538
+ def count_constraint; end
2539
+
2540
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:85
2541
+ def disallow(type, reason = T.unsafe(nil)); end
2542
+
2543
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:101
2544
+ def ensure_count_unconstrained; end
2545
+
2546
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:89
2547
+ def expect; end
2548
+
2549
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:123
2550
+ def expected_messages_received_in_order?; end
2551
+
2552
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:128
2553
+ def mock_proxy; end
2554
+
2555
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:118
2556
+ def notify_failure_message; end
2557
+ end
2558
+
2559
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:9
2560
+ RSpec::Mocks::Matchers::HaveReceived::ARGS_CONSTRAINTS = T.let(T.unsafe(nil), Array)
2561
+
2562
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:10
2563
+ RSpec::Mocks::Matchers::HaveReceived::CONSTRAINTS = T.let(T.unsafe(nil), Array)
2564
+
2565
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/have_received.rb:8
2566
+ RSpec::Mocks::Matchers::HaveReceived::COUNT_CONSTRAINTS = T.let(T.unsafe(nil), Array)
2567
+
2568
+ # @private
2569
+ # just a "tag" for rspec-mock matchers detection
2570
+ #
2571
+ # pkg:gem/rspec-mocks#lib/rspec/mocks.rb:125
2572
+ module RSpec::Mocks::Matchers::Matcher; end
2573
+
2574
+ # @private
2575
+ #
2576
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:7
2577
+ class RSpec::Mocks::Matchers::Receive
2578
+ include ::RSpec::Mocks::Matchers::Matcher
2579
+
2580
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:10
2581
+ def initialize(message, block); end
2582
+
2583
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2584
+ def and_call_original(*args, **_arg1, &block); end
2585
+
2586
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2587
+ def and_invoke(*args, **_arg1, &block); end
2588
+
2589
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2590
+ def and_raise(*args, **_arg1, &block); end
2591
+
2592
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2593
+ def and_return(*args, **_arg1, &block); end
2594
+
2595
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2596
+ def and_throw(*args, **_arg1, &block); end
2597
+
2598
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2599
+ def and_wrap_original(*args, **_arg1, &block); end
2600
+
2601
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2602
+ def and_yield(*args, **_arg1, &block); end
2603
+
2604
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2605
+ def at_least(*args, **_arg1, &block); end
2606
+
2607
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2608
+ def at_most(*args, **_arg1, &block); end
2609
+
2610
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:20
2611
+ def description; end
2612
+
2613
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:39
2614
+ def does_not_match?(subject, &block); end
2615
+
2616
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2617
+ def exactly(*args, **_arg1, &block); end
2618
+
2619
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2620
+ def inspect(*args, **_arg1, &block); end
2621
+
2622
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:16
2623
+ def matcher_name; end
2624
+
2625
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:28
2626
+ def matches?(subject, &block); end
2627
+
2628
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2629
+ def never(*args, **_arg1, &block); end
2630
+
2631
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2632
+ def once(*args, **_arg1, &block); end
2633
+
2634
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2635
+ def ordered(*args, **_arg1, &block); end
2636
+
2637
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:41
2638
+ def setup_allowance(subject, &block); end
2639
+
2640
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:54
2641
+ def setup_any_instance_allowance(subject, &block); end
2642
+
2643
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:46
2644
+ def setup_any_instance_expectation(subject, &block); end
2645
+
2646
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:50
2647
+ def setup_any_instance_negative_expectation(subject, &block); end
2648
+
2649
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:24
2650
+ def setup_expectation(subject, &block); end
2651
+
2652
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:30
2653
+ def setup_negative_expectation(subject, &block); end
2654
+
2655
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2656
+ def thrice(*args, **_arg1, &block); end
2657
+
2658
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2659
+ def time(*args, **_arg1, &block); end
2660
+
2661
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2662
+ def times(*args, **_arg1, &block); end
2663
+
2664
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2665
+ def to_s(*args, **_arg1, &block); end
2666
+
2667
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2668
+ def twice(*args, **_arg1, &block); end
2669
+
2670
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:62
2671
+ def with(*args, **_arg1, &block); end
2672
+
2673
+ private
2674
+
2675
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:71
2676
+ def describable; end
2677
+
2678
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:108
2679
+ def move_block_to_last_customization(block); end
2680
+
2681
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:91
2682
+ def setup_any_instance_method_substitute(subject, method, block); end
2683
+
2684
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:96
2685
+ def setup_method_substitute(host, method, block, *args); end
2686
+
2687
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:86
2688
+ def setup_mock_proxy_method_substitute(subject, method, block); end
2689
+
2690
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:75
2691
+ def warn_if_any_instance(expression, subject); end
2692
+ end
2693
+
2694
+ # MessageExpectation objects are able to describe themselves in detail.
2695
+ # We use this as a fall back when a MessageExpectation is not available.
2696
+ # @private
2697
+ #
2698
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:119
2699
+ class RSpec::Mocks::Matchers::Receive::DefaultDescribable
2700
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:120
2701
+ def initialize(message); end
2702
+
2703
+ # This is much simpler for the `any_instance` case than what the
2704
+ # user may want, but I'm not up for putting a bunch of effort
2705
+ # into full descriptions for `any_instance` expectations at this point :(.
2706
+ #
2707
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive.rb:127
2708
+ def description_for(verb); end
2709
+ end
2710
+
2711
+ # @private
2712
+ #
2713
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:7
2714
+ class RSpec::Mocks::Matchers::ReceiveMessageChain
2715
+ include ::RSpec::Mocks::Matchers::Matcher
2716
+
2717
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:10
2718
+ def initialize(chain, &block); end
2719
+
2720
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:17
2721
+ def and_call_original(*args, &block); end
2722
+
2723
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:17
2724
+ def and_invoke(*args, &block); end
2725
+
2726
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:17
2727
+ def and_raise(*args, &block); end
2728
+
2729
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:17
2730
+ def and_return(*args, &block); end
2731
+
2732
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:17
2733
+ def and_throw(*args, &block); end
2734
+
2735
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:17
2736
+ def and_yield(*args, &block); end
2737
+
2738
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:27
2739
+ def description; end
2740
+
2741
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:60
2742
+ def does_not_match?(*_args); end
2743
+
2744
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:23
2745
+ def matcher_name; end
2746
+
2747
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:59
2748
+ def matches?(subject, &block); end
2749
+
2750
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:31
2751
+ def setup_allowance(subject, &block); end
2752
+
2753
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:36
2754
+ def setup_any_instance_allowance(subject, &block); end
2755
+
2756
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:42
2757
+ def setup_any_instance_expectation(subject, &block); end
2758
+
2759
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:48
2760
+ def setup_expectation(subject, &block); end
2761
+
2762
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:53
2763
+ def setup_negative_expectation(*_args); end
2764
+
2765
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:17
2766
+ def with(*args, &block); end
2767
+
2768
+ private
2769
+
2770
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:70
2771
+ def formatted_chain; end
2772
+
2773
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_message_chain.rb:64
2774
+ def replay_customizations(chain); end
2775
+ end
2776
+
2777
+ # @private
2778
+ #
2779
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:5
2780
+ class RSpec::Mocks::Matchers::ReceiveMessages
2781
+ include ::RSpec::Mocks::Matchers::Matcher
2782
+
2783
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:8
2784
+ def initialize(message_return_value_hash); end
2785
+
2786
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:17
2787
+ def description; end
2788
+
2789
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:34
2790
+ def does_not_match?(_subject); end
2791
+
2792
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:13
2793
+ def matcher_name; end
2794
+
2795
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:27
2796
+ def matches?(subject); end
2797
+
2798
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:36
2799
+ def setup_allowance(subject); end
2800
+
2801
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:50
2802
+ def setup_any_instance_allowance(subject); end
2803
+
2804
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:43
2805
+ def setup_any_instance_expectation(subject); end
2806
+
2807
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:21
2808
+ def setup_expectation(subject); end
2809
+
2810
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:29
2811
+ def setup_negative_expectation(_subject); end
2812
+
2813
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:55
2814
+ def warn_about_block; end
2815
+
2816
+ private
2817
+
2818
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:65
2819
+ def any_instance_of(subject); end
2820
+
2821
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:69
2822
+ def each_message_on(host); end
2823
+
2824
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/matchers/receive_messages.rb:61
2825
+ def proxy_on(subject); end
2826
+ end
2827
+
2828
+ # @private
2829
+ #
2830
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:4
2831
+ class RSpec::Mocks::MessageChain
2832
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:7
2833
+ def initialize(object, *chain, &blk); end
2834
+
2835
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:5
2836
+ def block; end
2837
+
2838
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:5
2839
+ def chain; end
2840
+
2841
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:5
2842
+ def object; end
2843
+
2844
+ # @api private
2845
+ #
2846
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:13
2847
+ def setup_chain; end
2848
+
2849
+ private
2850
+
2851
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:33
2852
+ def chain_on(object, *chain, &block); end
2853
+
2854
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:54
2855
+ def find_matching_expectation; end
2856
+
2857
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:49
2858
+ def find_matching_stub; end
2859
+
2860
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:38
2861
+ def format_chain(*chain, &blk); end
2862
+ end
2863
+
2864
+ # Represents an individual method stub or message expectation. The methods
2865
+ # defined here can be used to configure how it behaves. The methods return
2866
+ # `self` so that they can be chained together to form a fluent interface.
2867
+ #
2868
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:44
2869
+ class RSpec::Mocks::MessageExpectation
2870
+ include ::RSpec::Mocks::MessageExpectation::ImplementationDetails
2871
+
2872
+ # Tells the object to delegate to the original unmodified method
2873
+ # when it receives the message.
2874
+ #
2875
+ # @note This is only available on partial doubles.
2876
+ #
2877
+ # @return [nil] No further chaining is supported after this.
2878
+ # @example
2879
+ # expect(counter).to receive(:increment).and_call_original
2880
+ # original_count = counter.count
2881
+ # counter.increment
2882
+ # expect(counter.count).to eq(original_count + 1)
2883
+ #
2884
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:141
2885
+ def and_call_original; end
2886
+
2887
+ # Tells the object to invoke a Proc when it receives the message. Given
2888
+ # more than one value, the result of the first Proc is returned the first
2889
+ # time the message is received, the result of the second Proc is returned
2890
+ # the next time, etc, etc.
2891
+ #
2892
+ # If the message is received more times than there are Procs, the result of
2893
+ # the last Proc is returned for every subsequent call.
2894
+ #
2895
+ # @return [nil] No further chaining is supported after this.
2896
+ # @example
2897
+ # allow(api).to receive(:get_foo).and_invoke(-> { raise ApiTimeout })
2898
+ # api.get_foo # => raises ApiTimeout
2899
+ # api.get_foo # => raises ApiTimeout
2900
+ #
2901
+ # allow(api).to receive(:get_foo).and_invoke(-> { raise ApiTimeout }, -> { raise ApiTimeout }, -> { :a_foo })
2902
+ # api.get_foo # => raises ApiTimeout
2903
+ # api.get_foo # => rasies ApiTimeout
2904
+ # api.get_foo # => :a_foo
2905
+ # api.get_foo # => :a_foo
2906
+ # api.get_foo # => :a_foo
2907
+ # # etc
2908
+ #
2909
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:109
2910
+ def and_invoke(first_proc, *procs); end
2911
+
2912
+ # @overload and_raise
2913
+ # @overload and_raise(ExceptionClass)
2914
+ # @overload and_raise(ExceptionClass, message)
2915
+ # @overload and_raise(exception_instance)
2916
+ #
2917
+ # Tells the object to raise an exception when the message is received.
2918
+ #
2919
+ # @return [nil] No further chaining is supported after this.
2920
+ # @note
2921
+ # When you pass an exception class, the MessageExpectation will raise
2922
+ # an instance of it, creating it with `exception` and passing `message`
2923
+ # if specified. If the exception class initializer requires more than
2924
+ # one parameters, you must pass in an instance and not the class,
2925
+ # otherwise this method will raise an ArgumentError exception.
2926
+ #
2927
+ # @example
2928
+ # allow(car).to receive(:go).and_raise
2929
+ # allow(car).to receive(:go).and_raise(OutOfGas)
2930
+ # allow(car).to receive(:go).and_raise(OutOfGas, "At least 2 oz of gas needed to drive")
2931
+ # allow(car).to receive(:go).and_raise(OutOfGas.new(2, :oz))
2932
+ #
2933
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:186
2934
+ def and_raise(*args); end
2935
+
2936
+ # @overload and_return(value)
2937
+ # @overload and_return(first_value, second_value)
2938
+ #
2939
+ # Tells the object to return a value when it receives the message. Given
2940
+ # more than one value, the first value is returned the first time the
2941
+ # message is received, the second value is returned the next time, etc,
2942
+ # etc.
2943
+ #
2944
+ # If the message is received more times than there are values, the last
2945
+ # value is returned for every subsequent call.
2946
+ #
2947
+ # @return [nil] No further chaining is supported after this.
2948
+ # @example
2949
+ # allow(counter).to receive(:count).and_return(1)
2950
+ # counter.count # => 1
2951
+ # counter.count # => 1
2952
+ #
2953
+ # allow(counter).to receive(:count).and_return(1,2,3)
2954
+ # counter.count # => 1
2955
+ # counter.count # => 2
2956
+ # counter.count # => 3
2957
+ # counter.count # => 3
2958
+ # counter.count # => 3
2959
+ # # etc
2960
+ #
2961
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:71
2962
+ def and_return(first_value, *values); end
2963
+
2964
+ # @overload and_throw(symbol)
2965
+ # @overload and_throw(symbol, object)
2966
+ #
2967
+ # Tells the object to throw a symbol (with the object if that form is
2968
+ # used) when the message is received.
2969
+ #
2970
+ # @return [nil] No further chaining is supported after this.
2971
+ # @example
2972
+ # allow(car).to receive(:go).and_throw(:out_of_gas)
2973
+ # allow(car).to receive(:go).and_throw(:out_of_gas, :level => 0.1)
2974
+ #
2975
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:202
2976
+ def and_throw(*args); end
2977
+
2978
+ # Decorates the stubbed method with the supplied block. The original
2979
+ # unmodified method is passed to the block along with any method call
2980
+ # arguments so you can delegate to it, whilst still being able to
2981
+ # change what args are passed to it and/or change the return value.
2982
+ #
2983
+ # @note This is only available on partial doubles.
2984
+ #
2985
+ # @return [nil] No further chaining is supported after this.
2986
+ # @example
2987
+ # expect(api).to receive(:large_list).and_wrap_original do |original_method, *args, &block|
2988
+ # original_method.call(*args, &block).first(10)
2989
+ # end
2990
+ #
2991
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:162
2992
+ def and_wrap_original(&block); end
2993
+
2994
+ # Tells the object to yield one or more args to a block when the message
2995
+ # is received.
2996
+ #
2997
+ # @return [MessageExpectation] self, to support further chaining.
2998
+ # @example
2999
+ # stream.stub(:open).and_yield(StringIO.new)
3000
+ #
3001
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:214
3002
+ def and_yield(*args, &block); end
3003
+
3004
+ # Constrain a message expectation to be received at least a specific
3005
+ # number of times.
3006
+ #
3007
+ # @return [MessageExpectation] self, to support further chaining.
3008
+ # @example
3009
+ # expect(dealer).to receive(:deal_card).at_least(9).times
3010
+ #
3011
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:249
3012
+ def at_least(n, &block); end
3013
+
3014
+ # Constrain a message expectation to be received at most a specific
3015
+ # number of times.
3016
+ #
3017
+ # @return [MessageExpectation] self, to support further chaining.
3018
+ # @example
3019
+ # expect(dealer).to receive(:deal_card).at_most(10).times
3020
+ #
3021
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:268
3022
+ def at_most(n, &block); end
3023
+
3024
+ # Constrain a message expectation to be received a specific number of
3025
+ # times.
3026
+ #
3027
+ # @return [MessageExpectation] self, to support further chaining.
3028
+ # @example
3029
+ # expect(dealer).to receive(:deal_card).exactly(10).times
3030
+ #
3031
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:236
3032
+ def exactly(n, &block); end
3033
+
3034
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:401
3035
+ def inspect; end
3036
+
3037
+ # Expect a message not to be received at all.
3038
+ #
3039
+ # @return [MessageExpectation] self, to support further chaining.
3040
+ # @example
3041
+ # expect(car).to receive(:stop).never
3042
+ #
3043
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:293
3044
+ def never; end
3045
+
3046
+ # Expect a message to be received exactly one time.
3047
+ #
3048
+ # @return [MessageExpectation] self, to support further chaining.
3049
+ # @example
3050
+ # expect(car).to receive(:go).once
3051
+ #
3052
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:304
3053
+ def once(&block); end
3054
+
3055
+ # Expect messages to be received in a specific order.
3056
+ #
3057
+ # @return [MessageExpectation] self, to support further chaining.
3058
+ # @example
3059
+ # expect(api).to receive(:prepare).ordered
3060
+ # expect(api).to receive(:run).ordered
3061
+ # expect(api).to receive(:finish).ordered
3062
+ #
3063
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:379
3064
+ def ordered(&block); end
3065
+
3066
+ # Expect a message to be received exactly three times.
3067
+ #
3068
+ # @return [MessageExpectation] self, to support further chaining.
3069
+ # @example
3070
+ # expect(car).to receive(:go).thrice
3071
+ #
3072
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:326
3073
+ def thrice(&block); end
3074
+
3075
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:286
3076
+ def time(&block); end
3077
+
3078
+ # Syntactic sugar for `exactly`, `at_least` and `at_most`
3079
+ #
3080
+ # @return [MessageExpectation] self, to support further chaining.
3081
+ # @example
3082
+ # expect(dealer).to receive(:deal_card).exactly(10).times
3083
+ # expect(dealer).to receive(:deal_card).at_least(10).times
3084
+ # expect(dealer).to receive(:deal_card).at_most(10).times
3085
+ #
3086
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:282
3087
+ def times(&block); end
3088
+
3089
+ # @return [String] a nice representation of the message expectation
3090
+ #
3091
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:396
3092
+ def to_s; end
3093
+
3094
+ # Expect a message to be received exactly two times.
3095
+ #
3096
+ # @return [MessageExpectation] self, to support further chaining.
3097
+ # @example
3098
+ # expect(car).to receive(:go).twice
3099
+ #
3100
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:315
3101
+ def twice(&block); end
3102
+
3103
+ # Constrains a stub or message expectation to invocations with specific
3104
+ # arguments.
3105
+ #
3106
+ # With a stub, if the message might be received with other args as well,
3107
+ # you should stub a default value first, and then stub or mock the same
3108
+ # message using `with` to constrain to specific arguments.
3109
+ #
3110
+ # A message expectation will fail if the message is received with different
3111
+ # arguments.
3112
+ #
3113
+ # @return [MessageExpectation] self, to support further chaining.
3114
+ # @example
3115
+ # allow(cart).to receive(:add) { :failure }
3116
+ # allow(cart).to receive(:add).with(Book.new(:isbn => 1934356379)) { :success }
3117
+ # cart.add(Book.new(:isbn => 1234567890))
3118
+ # # => :failure
3119
+ # cart.add(Book.new(:isbn => 1934356379))
3120
+ # # => :success
3121
+ #
3122
+ # expect(cart).to receive(:add).with(Book.new(:isbn => 1934356379)) { :success }
3123
+ # cart.add(Book.new(:isbn => 1234567890))
3124
+ # # => failed expectation
3125
+ # cart.add(Book.new(:isbn => 1934356379))
3126
+ # # => passes
3127
+ #
3128
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:359
3129
+ def with(*args, **_arg1, &block); end
3130
+ end
3131
+
3132
+ # @private
3133
+ # Contains the parts of `MessageExpectation` that aren't part of
3134
+ # rspec-mocks' public API. The class is very big and could really use
3135
+ # some collaborators it delegates to for this stuff but for now this was
3136
+ # the simplest way to split the public from private stuff to make it
3137
+ # easier to publish the docs for the APIs we want published.
3138
+ #
3139
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:409
3140
+ module RSpec::Mocks::MessageExpectation::ImplementationDetails
3141
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:420
3142
+ def initialize(error_generator, expectation_ordering, expected_from, method_double, type = T.unsafe(nil), opts = T.unsafe(nil), &implementation_block); end
3143
+
3144
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:588
3145
+ def actual_received_count_matters?; end
3146
+
3147
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:575
3148
+ def additional_expected_calls; end
3149
+
3150
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:532
3151
+ def advise(*args); end
3152
+
3153
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:454
3154
+ def and_yield_receiver_to_implementation; end
3155
+
3156
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:413
3157
+ def argument_list_matcher=(_arg0); end
3158
+
3159
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:487
3160
+ def called_max_times?; end
3161
+
3162
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:564
3163
+ def description_for(verb); end
3164
+
3165
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:507
3166
+ def ensure_expected_ordering_received!; end
3167
+
3168
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:410
3169
+ def error_generator; end
3170
+
3171
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:558
3172
+ def expectation_count_type; end
3173
+
3174
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:450
3175
+ def expected_args; end
3176
+
3177
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:503
3178
+ def expected_messages_received?; end
3179
+
3180
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:540
3181
+ def generate_error; end
3182
+
3183
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:512
3184
+ def ignoring_args?; end
3185
+
3186
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:410
3187
+ def implementation; end
3188
+
3189
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:592
3190
+ def increase_actual_received_count!; end
3191
+
3192
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:473
3193
+ def invoke(parent_stub, *args, **_arg2, &block); end
3194
+
3195
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:478
3196
+ def invoke_without_incrementing_received_count(parent_stub, *args, **_arg2, &block); end
3197
+
3198
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:463
3199
+ def matches?(message, *args, **_arg2); end
3200
+
3201
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:516
3202
+ def matches_at_least_count?; end
3203
+
3204
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:520
3205
+ def matches_at_most_count?; end
3206
+
3207
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:524
3208
+ def matches_exact_count?; end
3209
+
3210
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:494
3211
+ def matches_name_but_not_args(message, *args); end
3212
+
3213
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:411
3214
+ def message; end
3215
+
3216
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:483
3217
+ def negative?; end
3218
+
3219
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:584
3220
+ def negative_expectation_for?(message); end
3221
+
3222
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:580
3223
+ def ordered?; end
3224
+
3225
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:412
3226
+ def orig_object; end
3227
+
3228
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:571
3229
+ def raise_out_of_order_error; end
3230
+
3231
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:554
3232
+ def raise_unexpected_message_args_error(args_for_multiple_calls); end
3233
+
3234
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:468
3235
+ def safe_invoke(parent_stub, *args, **_arg2, &block); end
3236
+
3237
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:528
3238
+ def similar_messages; end
3239
+
3240
+ # @private
3241
+ #
3242
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:417
3243
+ def type; end
3244
+
3245
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:536
3246
+ def unadvise(args); end
3247
+
3248
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:498
3249
+ def verify_messages_received; end
3250
+
3251
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:459
3252
+ def yield_receiver_to_implementation_block?; end
3253
+
3254
+ protected
3255
+
3256
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:410
3257
+ def error_generator=(_arg0); end
3258
+
3259
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:413
3260
+ def expected_from=(_arg0); end
3261
+
3262
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:413
3263
+ def expected_received_count=(_arg0); end
3264
+
3265
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:410
3266
+ def implementation=(_arg0); end
3267
+
3268
+ private
3269
+
3270
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:600
3271
+ def exception_source_id; end
3272
+
3273
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:632
3274
+ def has_been_invoked?; end
3275
+
3276
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:655
3277
+ def initial_implementation_action=(action); end
3278
+
3279
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:659
3280
+ def inner_implementation_action=(action); end
3281
+
3282
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:604
3283
+ def invoke_incrementing_actual_calls_by(increment, allowed_to_fail, parent_stub, *args, **_arg4, &block); end
3284
+
3285
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:636
3286
+ def raise_already_invoked_error_if_necessary(calling_customization); end
3287
+
3288
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:642
3289
+ def set_expected_received_count(relativity, n); end
3290
+
3291
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:665
3292
+ def terminal_implementation_action=(action); end
3293
+
3294
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:669
3295
+ def warn_about_stub_override; end
3296
+
3297
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:676
3298
+ def wrap_original(method_name, &block); end
3299
+ end
3300
+
3301
+ # @private
3302
+ #
3303
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:4
3304
+ class RSpec::Mocks::MethodDouble
3305
+ # @private
3306
+ #
3307
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:12
3308
+ def initialize(object, method_name, proxy); end
3309
+
3310
+ # @private
3311
+ #
3312
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:216
3313
+ def add_default_stub(*args, &implementation); end
3314
+
3315
+ # @private
3316
+ #
3317
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:166
3318
+ def add_expectation(error_generator, expectation_ordering, expected_from, opts, &implementation); end
3319
+
3320
+ # @private
3321
+ #
3322
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:202
3323
+ def add_simple_expectation(method_name, response, error_generator, backtrace_line); end
3324
+
3325
+ # A simple stub can only return a concrete value for a message, and
3326
+ # cannot match on arguments. It is used as an optimization over
3327
+ # `add_stub` / `add_expectation` where it is known in advance that this
3328
+ # is all that will be required of a stub, such as when passing attributes
3329
+ # to the `double` example method. They do not stash or restore existing method
3330
+ # definitions.
3331
+ #
3332
+ # @private
3333
+ #
3334
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:197
3335
+ def add_simple_stub(method_name, response); end
3336
+
3337
+ # @private
3338
+ #
3339
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:181
3340
+ def add_stub(error_generator, expectation_ordering, expected_from, opts = T.unsafe(nil), &implementation); end
3341
+
3342
+ # @private
3343
+ #
3344
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:175
3345
+ def build_expectation(error_generator, expectation_ordering); end
3346
+
3347
+ # @private
3348
+ #
3349
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:152
3350
+ def clear; end
3351
+
3352
+ # @private
3353
+ #
3354
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:61
3355
+ def configure_method; end
3356
+
3357
+ # @private
3358
+ #
3359
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:68
3360
+ def define_proxy_method; end
3361
+
3362
+ # @private
3363
+ #
3364
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:9
3365
+ def expectations; end
3366
+
3367
+ # The type of message expectation to create has been extracted to its own
3368
+ # method so that subclasses can override it.
3369
+ #
3370
+ # @private
3371
+ #
3372
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:161
3373
+ def message_expectation_class; end
3374
+
3375
+ # @private
3376
+ #
3377
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:41
3378
+ def method_missing_block; end
3379
+
3380
+ # @private
3381
+ #
3382
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:9
3383
+ def method_name; end
3384
+
3385
+ # @private
3386
+ #
3387
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:9
3388
+ def method_stasher; end
3389
+
3390
+ # @private
3391
+ #
3392
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:9
3393
+ def object; end
3394
+
3395
+ # @private
3396
+ #
3397
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:56
3398
+ def object_singleton_class; end
3399
+
3400
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:24
3401
+ def original_implementation_callable; end
3402
+
3403
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:34
3404
+ def original_method; end
3405
+
3406
+ # The implementation of the proxied method. Subclasses may override this
3407
+ # method to perform additional operations.
3408
+ #
3409
+ # @private
3410
+ #
3411
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:97
3412
+ def proxy_method_invoked(_obj, *args, **_arg2, &block); end
3413
+
3414
+ # @private
3415
+ #
3416
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:233
3417
+ def raise_method_not_stubbed_error; end
3418
+
3419
+ # @private
3420
+ #
3421
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:222
3422
+ def remove_stub; end
3423
+
3424
+ # @private
3425
+ #
3426
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:228
3427
+ def remove_stub_if_present; end
3428
+
3429
+ # @private
3430
+ #
3431
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:146
3432
+ def reset; end
3433
+
3434
+ # @private
3435
+ #
3436
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:103
3437
+ def restore_original_method; end
3438
+
3439
+ # @private
3440
+ #
3441
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:133
3442
+ def restore_original_visibility; end
3443
+
3444
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:32
3445
+ def save_original_implementation_callable!; end
3446
+
3447
+ # @private
3448
+ #
3449
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:207
3450
+ def setup_simple_method_double(method_name, response, collection, error_generator = T.unsafe(nil), backtrace_line = T.unsafe(nil)); end
3451
+
3452
+ # @private
3453
+ #
3454
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:122
3455
+ def show_frozen_warning; end
3456
+
3457
+ # @private
3458
+ #
3459
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:9
3460
+ def stubs; end
3461
+
3462
+ # @private
3463
+ #
3464
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:141
3465
+ def verify; end
3466
+
3467
+ # @private
3468
+ #
3469
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:51
3470
+ def visibility; end
3471
+
3472
+ private
3473
+
3474
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:255
3475
+ def definition_target; end
3476
+
3477
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:275
3478
+ def new_rspec_prepended_module; end
3479
+
3480
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:293
3481
+ def remove_method_from_definition_target; end
3482
+
3483
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:259
3484
+ def usable_rspec_prepended_module; end
3485
+ end
3486
+
3487
+ # @private TODO: drop in favor of FrozenError in ruby 2.5+
3488
+ #
3489
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:6
3490
+ RSpec::Mocks::MethodDouble::FROZEN_ERROR_MSG = T.let(T.unsafe(nil), Regexp)
3491
+
3492
+ # We subclass `Module` in order to be able to easily detect our prepended module.
3493
+ #
3494
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_double.rb:253
3495
+ class RSpec::Mocks::MethodDouble::RSpecPrependedModule < ::Module; end
3496
+
3497
+ # Represents a method on an object that may or may not be defined.
3498
+ # The method may be an instance method on a module or a method on
3499
+ # any object.
3500
+ #
3501
+ # @private
3502
+ #
3503
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:10
3504
+ class RSpec::Mocks::MethodReference
3505
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:15
3506
+ def initialize(object_reference, method_name); end
3507
+
3508
+ # A method is defined if we are able to get a `Method` object for it.
3509
+ # In that case, we can assert against metadata like the arity.
3510
+ #
3511
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:46
3512
+ def defined?; end
3513
+
3514
+ # A method is implemented if sending the message does not result in
3515
+ # a `NoMethodError`. It might be dynamically implemented by
3516
+ # `method_missing`.
3517
+ #
3518
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:23
3519
+ def implemented?; end
3520
+
3521
+ # Returns true if we definitively know that sending the method
3522
+ # will result in a `NoMethodError`.
3523
+ #
3524
+ # This is not simply the inverse of `implemented?`: there are
3525
+ # cases when we don't know if a method is implemented and
3526
+ # both `implemented?` and `unimplemented?` will return false.
3527
+ #
3528
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:35
3529
+ def unimplemented?; end
3530
+
3531
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:57
3532
+ def visibility; end
3533
+
3534
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:52
3535
+ def with_signature; end
3536
+
3537
+ private
3538
+
3539
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:105
3540
+ def original_method; end
3541
+
3542
+ class << self
3543
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:11
3544
+ def for(object_reference, method_name); end
3545
+
3546
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:67
3547
+ def instance_method_visibility_for(klass, method_name); end
3548
+
3549
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:78
3550
+ def method_defined_at_any_visibility?(klass, method_name); end
3551
+
3552
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:81
3553
+ def method_visibility_for(object, method_name); end
3554
+ end
3555
+ end
3556
+
3557
+ # Raised when an expectation customization method (e.g. `with`,
3558
+ # `and_return`) is called on a message expectation which has already been
3559
+ # invoked.
3560
+ #
3561
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:18
3562
+ class RSpec::Mocks::MockExpectationAlreadyInvokedError < ::Exception; end
3563
+
3564
+ # Raised when a message expectation is not satisfied.
3565
+ # Raised when a message expectation is not satisfied.
3566
+ #
3567
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:6
3568
+ class RSpec::Mocks::MockExpectationError < ::Exception; end
3569
+
3570
+ # An implementation of rspec-mocks' reference interface.
3571
+ # Used when a string is passed to {ExampleMethods#object_double},
3572
+ # and when a string, named class or named module is passed to
3573
+ # {ExampleMethods#instance_double}, or {ExampleMethods#class_double}.
3574
+ # Represents a reference to the object named (via a constant lookup)
3575
+ # by the string.
3576
+ # @see DirectObjectReference
3577
+ #
3578
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:109
3579
+ class RSpec::Mocks::NamedObjectReference
3580
+ # @param const_name [String] constant name
3581
+ #
3582
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:111
3583
+ def initialize(const_name); end
3584
+
3585
+ # @return [String] the constant name to replace with a double.
3586
+ #
3587
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:121
3588
+ def const_to_replace; end
3589
+
3590
+ # @return [Boolean] true if the named constant is defined, false otherwise.
3591
+ #
3592
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:116
3593
+ def defined?; end
3594
+
3595
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:124
3596
+ def description; end
3597
+
3598
+ # @return [Object, nil] the target of the verifying double (the named object), or
3599
+ # nil if it is not defined.
3600
+ #
3601
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:128
3602
+ def target; end
3603
+
3604
+ # Yields if the reference target is loaded, providing a generic mechanism
3605
+ # to optionally run a bit of code only when a reference's target is
3606
+ # loaded.
3607
+ #
3608
+ # @yield [Object] the target object
3609
+ #
3610
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:137
3611
+ def when_loaded; end
3612
+
3613
+ private
3614
+
3615
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:143
3616
+ def object; end
3617
+ end
3618
+
3619
+ # @private
3620
+ #
3621
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:31
3622
+ class RSpec::Mocks::NegationUnsupportedError < ::StandardError; end
3623
+
3624
+ # @private
3625
+ #
3626
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:209
3627
+ class RSpec::Mocks::NestedSpace < ::RSpec::Mocks::Space
3628
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:210
3629
+ def initialize(parent); end
3630
+
3631
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:219
3632
+ def constant_mutator_for(name); end
3633
+
3634
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:215
3635
+ def proxies_of(klass); end
3636
+
3637
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:223
3638
+ def registered?(object); end
3639
+
3640
+ private
3641
+
3642
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:233
3643
+ def any_instance_recorder_not_found_for(id, klass); end
3644
+
3645
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:229
3646
+ def proxy_not_found_for(id, object); end
3647
+ end
3648
+
3649
+ # @private
3650
+ #
3651
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:16
3652
+ class RSpec::Mocks::NoCallbackInvocationStrategy
3653
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:17
3654
+ def call(_doubled_module); end
3655
+ end
3656
+
3657
+ # @private
3658
+ #
3659
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:149
3660
+ class RSpec::Mocks::ObjectMethodReference < ::RSpec::Mocks::MethodReference
3661
+ private
3662
+
3663
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:168
3664
+ def find_method(object); end
3665
+
3666
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:164
3667
+ def method_defined?(object); end
3668
+
3669
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:160
3670
+ def method_implemented?(object); end
3671
+
3672
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:172
3673
+ def visibility_from(object); end
3674
+
3675
+ class << self
3676
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/method_reference.rb:150
3677
+ def for(object_reference, method_name); end
3678
+ end
3679
+ end
3680
+
3681
+ # @private
3682
+ #
3683
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:4
3684
+ class RSpec::Mocks::ObjectReference
3685
+ class << self
3686
+ # Returns an appropriate Object or Module reference based
3687
+ # on the given argument.
3688
+ #
3689
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:7
3690
+ def for(object_module_or_name, allow_direct_object_refs = T.unsafe(nil)); end
3691
+
3692
+ private
3693
+
3694
+ # 1.8.7
3695
+ #
3696
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:31
3697
+ def anonymous_module?(mod); end
3698
+
3699
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:41
3700
+ def name_of(mod); end
3701
+ end
3702
+ end
3703
+
3704
+ # @private
3705
+ #
3706
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/object_reference.rb:47
3707
+ RSpec::Mocks::ObjectReference::MODULE_NAME_METHOD = T.let(T.unsafe(nil), UnboundMethod)
3708
+
3709
+ # Similar to an InstanceVerifyingDouble, except that it verifies against
3710
+ # public methods of the given object.
3711
+ #
3712
+ # @private
3713
+ #
3714
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:110
3715
+ class RSpec::Mocks::ObjectVerifyingDouble
3716
+ include ::RSpec::Mocks::TestDouble
3717
+ include ::RSpec::Mocks::VerifyingDouble
3718
+ include ::RSpec::Mocks::ObjectVerifyingDoubleMethods
3719
+ end
3720
+
3721
+ # An awkward module necessary because we cannot otherwise have
3722
+ # ClassVerifyingDouble inherit from Module and still share these methods.
3723
+ #
3724
+ # @private
3725
+ #
3726
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:87
3727
+ module RSpec::Mocks::ObjectVerifyingDoubleMethods
3728
+ include ::RSpec::Mocks::TestDouble
3729
+ include ::RSpec::Mocks::VerifyingDouble
3730
+
3731
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:91
3732
+ def as_stubbed_const(options = T.unsafe(nil)); end
3733
+
3734
+ private
3735
+
3736
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:98
3737
+ def __build_mock_proxy(order_group); end
3738
+ end
3739
+
3740
+ # @private
3741
+ #
3742
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:4
3743
+ class RSpec::Mocks::OrderGroup
3744
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:5
3745
+ def initialize; end
3746
+
3747
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:48
3748
+ def clear; end
3749
+
3750
+ # @private
3751
+ #
3752
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:26
3753
+ def consume; end
3754
+
3755
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:54
3756
+ def empty?; end
3757
+
3758
+ # @private
3759
+ #
3760
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:37
3761
+ def handle_order_constraint(expectation); end
3762
+
3763
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:16
3764
+ def invoked(message); end
3765
+
3766
+ # @private
3767
+ #
3768
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:21
3769
+ def ready_for?(expectation); end
3770
+
3771
+ # @private
3772
+ #
3773
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:12
3774
+ def register(expectation); end
3775
+
3776
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:43
3777
+ def verify_invocation_order(expectation); end
3778
+
3779
+ private
3780
+
3781
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:76
3782
+ def expectation_for(message); end
3783
+
3784
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:64
3785
+ def expectations_invoked_in_order?; end
3786
+
3787
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:72
3788
+ def expected_invocations; end
3789
+
3790
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:68
3791
+ def invoked_expectations; end
3792
+
3793
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/order_group.rb:60
3794
+ def remaining_expectations; end
3795
+ end
3796
+
3797
+ # Raised when doubles or partial doubles are used outside of the per-test lifecycle.
3798
+ #
3799
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:13
3800
+ class RSpec::Mocks::OutsideOfExampleError < ::StandardError; end
3801
+
3802
+ # @private
3803
+ #
3804
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:459
3805
+ class RSpec::Mocks::PartialClassDoubleProxy < ::RSpec::Mocks::PartialDoubleProxy
3806
+ include ::RSpec::Mocks::PartialClassDoubleProxyMethods
3807
+ end
3808
+
3809
+ # @private
3810
+ # When we mock or stub a method on a class, we have to treat it a bit different,
3811
+ # because normally singleton method definitions only affect the object on which
3812
+ # they are defined, but on classes they affect subclasses, too. As a result,
3813
+ # we need some special handling to get the original method.
3814
+ #
3815
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:383
3816
+ module RSpec::Mocks::PartialClassDoubleProxyMethods
3817
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:384
3818
+ def initialize(source_space, *args); end
3819
+
3820
+ # Consider this situation:
3821
+ #
3822
+ # class A; end
3823
+ # class B < A; end
3824
+ #
3825
+ # allow(A).to receive(:new)
3826
+ # expect(B).to receive(:new).and_call_original
3827
+ #
3828
+ # When getting the original definition for `B.new`, we cannot rely purely on
3829
+ # using `B.method(:new)` before our redefinition is defined on `B`, because
3830
+ # `B.method(:new)` will return a method that will execute the stubbed version
3831
+ # of the method on `A` since singleton methods on classes are in the lookup
3832
+ # hierarchy.
3833
+ #
3834
+ # To do it properly, we need to find the original definition of `new` from `A`
3835
+ # from _before_ `A` was stubbed, and we need to rebind it to `B` so that it will
3836
+ # run with the proper `self`.
3837
+ #
3838
+ # That's what this method (together with `original_unbound_method_handle_from_ancestor_for`)
3839
+ # does.
3840
+ #
3841
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:409
3842
+ def original_method_handle_for(message); end
3843
+
3844
+ protected
3845
+
3846
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:437
3847
+ def method_double_from_ancestor_for(message); end
3848
+
3849
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:432
3850
+ def original_unbound_method_handle_from_ancestor_for(message); end
3851
+
3852
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:447
3853
+ def superclass_proxy; end
3854
+ end
3855
+
3856
+ # @private
3857
+ #
3858
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:320
3859
+ class RSpec::Mocks::PartialDoubleProxy < ::RSpec::Mocks::Proxy
3860
+ # @private
3861
+ #
3862
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:334
3863
+ def add_simple_expectation(method_name, response, location); end
3864
+
3865
+ # @private
3866
+ #
3867
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:340
3868
+ def add_simple_stub(method_name, response); end
3869
+
3870
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:357
3871
+ def message_received(message, *args, **_arg2, &block); end
3872
+
3873
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:321
3874
+ def original_method_handle_for(message); end
3875
+
3876
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:352
3877
+ def reset; end
3878
+
3879
+ # @private
3880
+ #
3881
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:346
3882
+ def visibility_for(method_name); end
3883
+
3884
+ private
3885
+
3886
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:367
3887
+ def any_instance_class_recorder_observing_method?(klass, method_name); end
3888
+ end
3889
+
3890
+ # @private
3891
+ #
3892
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:4
3893
+ class RSpec::Mocks::Proxy
3894
+ # @private
3895
+ #
3896
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:23
3897
+ def initialize(object, order_group, options = T.unsafe(nil)); end
3898
+
3899
+ # @private
3900
+ #
3901
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:68
3902
+ def add_message_expectation(method_name, opts = T.unsafe(nil), &block); end
3903
+
3904
+ # @private
3905
+ #
3906
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:82
3907
+ def add_simple_expectation(method_name, response, location); end
3908
+
3909
+ # @private
3910
+ #
3911
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:143
3912
+ def add_simple_stub(method_name, response); end
3913
+
3914
+ # @private
3915
+ #
3916
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:137
3917
+ def add_stub(method_name, opts = T.unsafe(nil), &implementation); end
3918
+
3919
+ # @private
3920
+ # Tells the object to ignore any messages that aren't explicitly set as
3921
+ # stubs or message expectations.
3922
+ #
3923
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:55
3924
+ def as_null_object; end
3925
+
3926
+ # @private
3927
+ #
3928
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:87
3929
+ def build_expectation(method_name); end
3930
+
3931
+ # @private
3932
+ #
3933
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:120
3934
+ def check_for_unexpected_arguments(expectation); end
3935
+
3936
+ # @private
3937
+ #
3938
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:37
3939
+ def ensure_can_be_proxied!(object); end
3940
+
3941
+ # @private
3942
+ #
3943
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:18
3944
+ def ensure_implemented(*_args); end
3945
+
3946
+ # @private
3947
+ #
3948
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:184
3949
+ def has_negative_expectation?(message); end
3950
+
3951
+ # @private
3952
+ #
3953
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:198
3954
+ def message_received(message, *args, **_arg2, &block); end
3955
+
3956
+ # @private
3957
+ #
3958
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:177
3959
+ def messages_arg_list; end
3960
+
3961
+ # @private
3962
+ #
3963
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:263
3964
+ def method_double_if_exists_for_message(message); end
3965
+
3966
+ # @private
3967
+ #
3968
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:48
3969
+ def null_object?; end
3970
+
3971
+ # @private
3972
+ #
3973
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:45
3974
+ def object; end
3975
+
3976
+ # @private
3977
+ #
3978
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:61
3979
+ def original_method_handle_for(_message); end
3980
+
3981
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:257
3982
+ def prepended_modules_of_singleton_class; end
3983
+
3984
+ # @private
3985
+ #
3986
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:236
3987
+ def raise_missing_default_stub_error(expectation, args_for_multiple_calls); end
3988
+
3989
+ # @private
3990
+ #
3991
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:231
3992
+ def raise_unexpected_message_error(method_name, args); end
3993
+
3994
+ # @private
3995
+ #
3996
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:170
3997
+ def received_message?(method_name, *args, &block); end
3998
+
3999
+ # @private
4000
+ #
4001
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:189
4002
+ def record_message_received(message, *args, **_arg2, &block); end
4003
+
4004
+ # @private
4005
+ #
4006
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:148
4007
+ def remove_stub(method_name); end
4008
+
4009
+ # @private
4010
+ #
4011
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:153
4012
+ def remove_stub_if_present(method_name); end
4013
+
4014
+ # @private
4015
+ #
4016
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:97
4017
+ def replay_received_message_on(expectation, &block); end
4018
+
4019
+ # @private
4020
+ #
4021
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:163
4022
+ def reset; end
4023
+
4024
+ # @private
4025
+ #
4026
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:158
4027
+ def verify; end
4028
+
4029
+ # @private
4030
+ #
4031
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:241
4032
+ def visibility_for(_method_name); end
4033
+
4034
+ private
4035
+
4036
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:280
4037
+ def find_almost_matching_expectation(method_name, *args, **_arg2); end
4038
+
4039
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:304
4040
+ def find_almost_matching_stub(method_name, *args, **_arg2); end
4041
+
4042
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:287
4043
+ def find_best_matching_expectation_for(method_name); end
4044
+
4045
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:273
4046
+ def find_matching_expectation(method_name, *args, **_arg2); end
4047
+
4048
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:299
4049
+ def find_matching_method_stub(method_name, *args, **_arg2); end
4050
+
4051
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:269
4052
+ def method_double_for(message); end
4053
+
4054
+ class << self
4055
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:247
4056
+ def prepended_modules_of(klass); end
4057
+ end
4058
+ end
4059
+
4060
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:65
4061
+ RSpec::Mocks::Proxy::DEFAULT_MESSAGE_EXPECTATION_OPTS = T.let(T.unsafe(nil), Hash)
4062
+
4063
+ # @private
4064
+ #
4065
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4066
+ class RSpec::Mocks::Proxy::SpecificMessage < ::Struct
4067
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:7
4068
+ def ==(expectation); end
4069
+
4070
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4071
+ def args; end
4072
+
4073
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4074
+ def args=(_); end
4075
+
4076
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4077
+ def message; end
4078
+
4079
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4080
+ def message=(_); end
4081
+
4082
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4083
+ def object; end
4084
+
4085
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4086
+ def object=(_); end
4087
+
4088
+ class << self
4089
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4090
+ def [](*_arg0); end
4091
+
4092
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4093
+ def inspect; end
4094
+
4095
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4096
+ def keyword_init?; end
4097
+
4098
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4099
+ def members; end
4100
+
4101
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:6
4102
+ def new(*_arg0); end
4103
+ end
4104
+ end
4105
+
4106
+ # @private
4107
+ #
4108
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:464
4109
+ class RSpec::Mocks::ProxyForNil < ::RSpec::Mocks::PartialDoubleProxy
4110
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:465
4111
+ def initialize(order_group); end
4112
+
4113
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:473
4114
+ def add_message_expectation(method_name, opts = T.unsafe(nil), &block); end
4115
+
4116
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:478
4117
+ def add_stub(method_name, opts = T.unsafe(nil), &implementation); end
4118
+
4119
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:470
4120
+ def disallow_expectations; end
4121
+
4122
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:470
4123
+ def disallow_expectations=(_arg0); end
4124
+
4125
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:471
4126
+ def warn_about_expectations; end
4127
+
4128
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:471
4129
+ def warn_about_expectations=(_arg0); end
4130
+
4131
+ private
4132
+
4133
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:515
4134
+ def raise_error(method_name); end
4135
+
4136
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:485
4137
+ def set_expectation_behavior; end
4138
+
4139
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:510
4140
+ def warn(method_name); end
4141
+
4142
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:499
4143
+ def warn_or_raise!(method_name); end
4144
+ end
4145
+
4146
+ # @private
4147
+ # Provides a default space implementation for outside
4148
+ # the scope of an example. Called "root" because it serves
4149
+ # as the root of the space stack.
4150
+ #
4151
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:9
4152
+ class RSpec::Mocks::RootSpace
4153
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:18
4154
+ def any_instance_proxy_for(*_args); end
4155
+
4156
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:14
4157
+ def any_instance_recorder_for(*_args); end
4158
+
4159
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:26
4160
+ def any_instance_recorders_from_ancestry_of(_object); end
4161
+
4162
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:44
4163
+ def new_scope; end
4164
+
4165
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:10
4166
+ def proxy_for(*_args); end
4167
+
4168
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:22
4169
+ def register_constant_mutator(_mutator); end
4170
+
4171
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:36
4172
+ def registered?(_object); end
4173
+
4174
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:30
4175
+ def reset_all; end
4176
+
4177
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:40
4178
+ def superclass_proxy_for(*_args); end
4179
+
4180
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:33
4181
+ def verify_all; end
4182
+
4183
+ private
4184
+
4185
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:50
4186
+ def raise_lifecycle_message; end
4187
+ end
4188
+
4189
+ # A message expectation that only allows concrete return values to be set
4190
+ # for a message. While this same effect can be achieved using a standard
4191
+ # MessageExpectation, this version is much faster and so can be used as an
4192
+ # optimization.
4193
+ #
4194
+ # @private
4195
+ #
4196
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:11
4197
+ class RSpec::Mocks::SimpleMessageExpectation
4198
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:12
4199
+ def initialize(message, response, error_generator, backtrace_line = T.unsafe(nil)); end
4200
+
4201
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:26
4202
+ def called_max_times?; end
4203
+
4204
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:17
4205
+ def invoke(*_); end
4206
+
4207
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:22
4208
+ def matches?(message, *_); end
4209
+
4210
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:37
4211
+ def unadvise(_); end
4212
+
4213
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_expectation.rb:30
4214
+ def verify_messages_received; end
4215
+ end
4216
+
4217
+ # @private
4218
+ #
4219
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:57
4220
+ class RSpec::Mocks::Space
4221
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:60
4222
+ def initialize; end
4223
+
4224
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:58
4225
+ def any_instance_mutex; end
4226
+
4227
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:103
4228
+ def any_instance_proxy_for(klass); end
4229
+
4230
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:93
4231
+ def any_instance_recorder_for(klass, only_return_existing = T.unsafe(nil)); end
4232
+
4233
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:58
4234
+ def any_instance_recorders; end
4235
+
4236
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:131
4237
+ def any_instance_recorders_from_ancestry_of(object); end
4238
+
4239
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:89
4240
+ def constant_mutator_for(name); end
4241
+
4242
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:125
4243
+ def ensure_registered(object); end
4244
+
4245
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:69
4246
+ def new_scope; end
4247
+
4248
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:58
4249
+ def proxies; end
4250
+
4251
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:107
4252
+ def proxies_of(klass); end
4253
+
4254
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:111
4255
+ def proxy_for(object); end
4256
+
4257
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:58
4258
+ def proxy_mutex; end
4259
+
4260
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:85
4261
+ def register_constant_mutator(mutator); end
4262
+
4263
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:127
4264
+ def registered?(object); end
4265
+
4266
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:78
4267
+ def reset_all; end
4268
+
4269
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:118
4270
+ def superclass_proxy_for(klass); end
4271
+
4272
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:73
4273
+ def verify_all; end
4274
+
4275
+ private
4276
+
4277
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:184
4278
+ def any_instance_recorder_not_found_for(id, klass); end
4279
+
4280
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:171
4281
+ def class_proxy_with_callback_verification_strategy(object, strategy); end
4282
+
4283
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:202
4284
+ def id_for(object); end
4285
+
4286
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:147
4287
+ def new_mutex; end
4288
+
4289
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:151
4290
+ def proxy_not_found_for(id, object); end
4291
+
4292
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/space.rb:166
4293
+ def superclass_proxy_not_found_for(id, object); end
4294
+ end
4295
+
4296
+ # @private
4297
+ #
4298
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:75
4299
+ class RSpec::Mocks::StubChain < ::RSpec::Mocks::MessageChain
4300
+ private
4301
+
4302
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:82
4303
+ def expectation(object, message, &return_block); end
4304
+
4305
+ class << self
4306
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/message_chain.rb:76
4307
+ def stub_chain_on(object, *chain, &blk); end
4308
+ end
4309
+ end
4310
+
4311
+ # @api private
4312
+ # Provides methods for enabling and disabling the available syntaxes
4313
+ # provided by rspec-mocks.
4314
+ #
4315
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/syntax.rb:6
4316
+ module RSpec::Mocks::Syntax
4317
+ class << self
4318
+ # @api private
4319
+ # Determines where the methods like `should_receive`, and `stub` are added.
4320
+ #
4321
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/syntax.rb:181
4322
+ def default_should_syntax_host; end
4323
+
4324
+ # @api private
4325
+ # Disables the expect syntax (`expect(dbl).to receive`, `allow(dbl).to receive`, etc).
4326
+ #
4327
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/syntax.rb:150
4328
+ def disable_expect(syntax_host = T.unsafe(nil)); end
4329
+
4330
+ # @api private
4331
+ # Disables the should syntax (`dbl.stub`, `dbl.should_receive`, etc).
4332
+ #
4333
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/syntax.rb:89
4334
+ def disable_should(syntax_host = T.unsafe(nil)); end
4335
+
4336
+ # @api private
4337
+ # Enables the expect syntax (`expect(dbl).to receive`, `allow(dbl).to receive`, etc).
4338
+ #
4339
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/syntax.rb:110
4340
+ def enable_expect(syntax_host = T.unsafe(nil)); end
4341
+
4342
+ # @api private
4343
+ # Enables the should syntax (`dbl.stub`, `dbl.should_receive`, etc).
4344
+ #
4345
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/syntax.rb:26
4346
+ def enable_should(syntax_host = T.unsafe(nil)); end
4347
+
4348
+ # @api private
4349
+ # Indicates whether or not the expect syntax is enabled.
4350
+ #
4351
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/syntax.rb:175
4352
+ def expect_enabled?(syntax_host = T.unsafe(nil)); end
4353
+
4354
+ # @api private
4355
+ # Indicates whether or not the should syntax is enabled.
4356
+ #
4357
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/syntax.rb:169
4358
+ def should_enabled?(syntax_host = T.unsafe(nil)); end
4359
+
4360
+ # @private
4361
+ #
4362
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/syntax.rb:8
4363
+ def warn_about_should!; end
4364
+
4365
+ # @private
4366
+ #
4367
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/syntax.rb:13
4368
+ def warn_unless_should_configured(method_name, replacement = T.unsafe(nil)); end
4369
+ end
4370
+ end
4371
+
4372
+ # @private
4373
+ #
4374
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:63
4375
+ class RSpec::Mocks::TargetBase
4376
+ include ::RSpec::Mocks::TargetDelegationInstanceMethods
4377
+ extend ::RSpec::Mocks::TargetDelegationClassMethods
4378
+
4379
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:64
4380
+ def initialize(target); end
4381
+ end
4382
+
4383
+ # @private
4384
+ #
4385
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:4
4386
+ module RSpec::Mocks::TargetDelegationClassMethods
4387
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:14
4388
+ def delegate_not_to(matcher_method, options = T.unsafe(nil)); end
4389
+
4390
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:5
4391
+ def delegate_to(matcher_method); end
4392
+
4393
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:28
4394
+ def disallow_negation(method_name); end
4395
+ end
4396
+
4397
+ # @private
4398
+ #
4399
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:36
4400
+ module RSpec::Mocks::TargetDelegationInstanceMethods
4401
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:37
4402
+ def target; end
4403
+
4404
+ private
4405
+
4406
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:45
4407
+ def define_matcher(matcher, name, &block); end
4408
+
4409
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:41
4410
+ def matcher_allowed?(matcher); end
4411
+
4412
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:55
4413
+ def raise_negation_unsupported(method_name, matcher); end
4414
+
4415
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/targets.rb:49
4416
+ def raise_unsupported_matcher(method_name, matcher); end
4417
+ end
4418
+
4419
+ # Implements the methods needed for a pure test double. RSpec::Mocks::Double
4420
+ # includes this module, and it is provided for cases where you want a
4421
+ # pure test double without subclassing RSpec::Mocks::Double.
4422
+ #
4423
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:6
4424
+ module RSpec::Mocks::TestDouble
4425
+ # Creates a new test double with a `name` (that will be used in error
4426
+ # messages only)
4427
+ #
4428
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:9
4429
+ def initialize(name = T.unsafe(nil), stubs = T.unsafe(nil)); end
4430
+
4431
+ # This allows for comparing the mock to other objects that proxy such as
4432
+ # ActiveRecords belongs_to proxy objects. By making the other object run
4433
+ # the comparison, we're sure the call gets delegated to the proxy
4434
+ # target.
4435
+ #
4436
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:36
4437
+ def ==(other); end
4438
+
4439
+ # @private
4440
+ #
4441
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:56
4442
+ def __build_mock_proxy_unless_expired(order_group); end
4443
+
4444
+ # @private
4445
+ #
4446
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:61
4447
+ def __disallow_further_usage!; end
4448
+
4449
+ # Tells the object to respond to all messages. If specific stub values
4450
+ # are declared, they'll work as expected. If not, the receiver is
4451
+ # returned.
4452
+ #
4453
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:23
4454
+ def as_null_object; end
4455
+
4456
+ # Override for default freeze implementation to prevent freezing of test
4457
+ # doubles.
4458
+ #
4459
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:67
4460
+ def freeze; end
4461
+
4462
+ # @private
4463
+ #
4464
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:41
4465
+ def inspect; end
4466
+
4467
+ # Returns true if this object has received `as_null_object`
4468
+ #
4469
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:28
4470
+ def null_object?; end
4471
+
4472
+ # @private
4473
+ #
4474
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:51
4475
+ def respond_to?(message, incl_private = T.unsafe(nil)); end
4476
+
4477
+ # @private
4478
+ #
4479
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:46
4480
+ def to_s; end
4481
+
4482
+ private
4483
+
4484
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:115
4485
+ def __build_mock_proxy(order_group); end
4486
+
4487
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:111
4488
+ def __mock_proxy; end
4489
+
4490
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:119
4491
+ def __raise_expired_error; end
4492
+
4493
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:105
4494
+ def assign_stubs(stubs); end
4495
+
4496
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:124
4497
+ def initialize_copy(other); end
4498
+
4499
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:74
4500
+ def method_missing(message, *args, &block); end
4501
+ end
4502
+
4503
+ # @private
4504
+ #
4505
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:137
4506
+ module RSpec::Mocks::TestDoubleFormatter
4507
+ class << self
4508
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:138
4509
+ def format(dbl, unwrap = T.unsafe(nil)); end
4510
+
4511
+ private
4512
+
4513
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:164
4514
+ def name_desc(dbl); end
4515
+
4516
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:147
4517
+ def type_desc(dbl); end
4518
+
4519
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/test_double.rb:159
4520
+ def verified_module_desc(dbl); end
4521
+ end
4522
+ end
4523
+
4524
+ # @private
4525
+ #
4526
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:311
4527
+ class RSpec::Mocks::TestDoubleProxy < ::RSpec::Mocks::Proxy
4528
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/proxy.rb:312
4529
+ def reset; end
4530
+ end
4531
+
4532
+ # @private
4533
+ #
4534
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:29
4535
+ class RSpec::Mocks::UnsupportedMatcherError < ::StandardError; end
4536
+
4537
+ # @private
4538
+ #
4539
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:6
4540
+ module RSpec::Mocks::VerifyingDouble
4541
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:53
4542
+ def initialize(doubled_module, *args); end
4543
+
4544
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:39
4545
+ def __send__(name, *args, **_arg2, &block); end
4546
+
4547
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:20
4548
+ def method_missing(message, *args, &block); end
4549
+
4550
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:7
4551
+ def respond_to?(message, include_private = T.unsafe(nil)); end
4552
+
4553
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_double.rb:48
4554
+ def send(name, *args, **_arg2, &block); end
4555
+ end
4556
+
4557
+ # @private
4558
+ #
4559
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/error_generator.rb:33
4560
+ class RSpec::Mocks::VerifyingDoubleNotDefinedError < ::StandardError; end
4561
+
4562
+ # Used in place of a `VerifyingExistingMethodDouble` for the specific case
4563
+ # of mocking or stubbing a `new` method on a class. In this case, we substitute
4564
+ # the method signature from `#initialize` since new's signature is just `*args`.
4565
+ #
4566
+ # @private
4567
+ #
4568
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:215
4569
+ class RSpec::Mocks::VerifyingExistingClassNewMethodDouble < ::RSpec::Mocks::VerifyingExistingMethodDouble
4570
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:216
4571
+ def with_signature; end
4572
+ end
4573
+
4574
+ # A VerifyingMethodDouble fetches the method to verify against from the
4575
+ # original object, using a MethodReference. This works for pure doubles,
4576
+ # but when the original object is itself the one being modified we need to
4577
+ # collapse the reference and the method double into a single object so that
4578
+ # we can access the original pristine method definition.
4579
+ #
4580
+ # @private
4581
+ #
4582
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:180
4583
+ class RSpec::Mocks::VerifyingExistingMethodDouble < ::RSpec::Mocks::VerifyingMethodDouble
4584
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:181
4585
+ def initialize(object, method_name, proxy); end
4586
+
4587
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:195
4588
+ def unimplemented?; end
4589
+
4590
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:191
4591
+ def with_signature; end
4592
+
4593
+ class << self
4594
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:199
4595
+ def for(object, method_name, proxy); end
4596
+ end
4597
+ end
4598
+
4599
+ # A message expectation that knows about the real implementation of the
4600
+ # message being expected, so that it can verify that any expectations
4601
+ # have the valid arguments.
4602
+ # @api private
4603
+ #
4604
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_message_expectation.rb:9
4605
+ class RSpec::Mocks::VerifyingMessageExpectation < ::RSpec::Mocks::MessageExpectation
4606
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_message_expectation.rb:20
4607
+ def initialize(*args); end
4608
+
4609
+ # A level of indirection is used here rather than just passing in the
4610
+ # method itself, since method look up is expensive and we only want to
4611
+ # do it if actually needed.
4612
+ #
4613
+ # Conceptually the method reference makes more sense as a constructor
4614
+ # argument since it should be immutable, but it is significantly more
4615
+ # straight forward to build the object in pieces so for now it stays as
4616
+ # an accessor.
4617
+ #
4618
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_message_expectation.rb:18
4619
+ def method_reference; end
4620
+
4621
+ # A level of indirection is used here rather than just passing in the
4622
+ # method itself, since method look up is expensive and we only want to
4623
+ # do it if actually needed.
4624
+ #
4625
+ # Conceptually the method reference makes more sense as a constructor
4626
+ # argument since it should be immutable, but it is significantly more
4627
+ # straight forward to build the object in pieces so for now it stays as
4628
+ # an accessor.
4629
+ #
4630
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_message_expectation.rb:18
4631
+ def method_reference=(_arg0); end
4632
+
4633
+ # @private
4634
+ #
4635
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_message_expectation.rb:25
4636
+ def with(*args, **_arg1, &block); end
4637
+
4638
+ private
4639
+
4640
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_message_expectation.rb:38
4641
+ def validate_expected_arguments!; end
4642
+ end
4643
+
4644
+ # @private
4645
+ #
4646
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:139
4647
+ class RSpec::Mocks::VerifyingMethodDouble < ::RSpec::Mocks::MethodDouble
4648
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:140
4649
+ def initialize(object, method_name, proxy, method_reference); end
4650
+
4651
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:149
4652
+ def add_expectation(*args, &block); end
4653
+
4654
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:154
4655
+ def add_stub(*args, &block); end
4656
+
4657
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:145
4658
+ def message_expectation_class; end
4659
+
4660
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:159
4661
+ def proxy_method_invoked(obj, *args, **_arg2, &block); end
4662
+
4663
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:165
4664
+ def validate_arguments!(actual_args); end
4665
+ end
4666
+
4667
+ # @private
4668
+ #
4669
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:134
4670
+ class RSpec::Mocks::VerifyingPartialClassDoubleProxy < ::RSpec::Mocks::VerifyingPartialDoubleProxy
4671
+ include ::RSpec::Mocks::PartialClassDoubleProxyMethods
4672
+ end
4673
+
4674
+ # @private
4675
+ #
4676
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:107
4677
+ class RSpec::Mocks::VerifyingPartialDoubleProxy < ::RSpec::Mocks::PartialDoubleProxy
4678
+ include ::RSpec::Mocks::VerifyingProxyMethods
4679
+
4680
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:110
4681
+ def initialize(object, expectation_ordering, optional_callback_invocation_strategy = T.unsafe(nil)); end
4682
+
4683
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:123
4684
+ def ensure_implemented(_method_name); end
4685
+
4686
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:128
4687
+ def method_reference; end
4688
+ end
4689
+
4690
+ # A verifying proxy mostly acts like a normal proxy, except that it
4691
+ # contains extra logic to try and determine the validity of any expectation
4692
+ # set on it. This includes whether or not methods have been defined and the
4693
+ # validity of arguments on method calls.
4694
+ #
4695
+ # In all other ways this behaves like a normal proxy. It only adds the
4696
+ # verification behaviour to specific methods then delegates to the parent
4697
+ # implementation.
4698
+ #
4699
+ # These checks are only activated if the doubled class has already been
4700
+ # loaded, otherwise they are disabled. This allows for testing in
4701
+ # isolation.
4702
+ #
4703
+ # @private
4704
+ #
4705
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:71
4706
+ class RSpec::Mocks::VerifyingProxy < ::RSpec::Mocks::TestDoubleProxy
4707
+ include ::RSpec::Mocks::VerifyingProxyMethods
4708
+
4709
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:74
4710
+ def initialize(object, order_group, doubled_module, method_reference_class); end
4711
+
4712
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:88
4713
+ def method_reference; end
4714
+
4715
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:98
4716
+ def validate_arguments!(method_name, args); end
4717
+
4718
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:94
4719
+ def visibility_for(method_name); end
4720
+ end
4721
+
4722
+ # @private
4723
+ #
4724
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:22
4725
+ module RSpec::Mocks::VerifyingProxyMethods
4726
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:33
4727
+ def add_message_expectation(method_name, opts = T.unsafe(nil), &block); end
4728
+
4729
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:28
4730
+ def add_simple_stub(method_name, *args); end
4731
+
4732
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:23
4733
+ def add_stub(method_name, opts = T.unsafe(nil), &implementation); end
4734
+
4735
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:38
4736
+ def ensure_implemented(method_name); end
4737
+
4738
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/verifying_proxy.rb:48
4739
+ def ensure_publicly_implemented(method_name, _object); end
4740
+ end
4741
+
4742
+ # Version information for RSpec mocks.
4743
+ #
4744
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/version.rb:4
4745
+ module RSpec::Mocks::Version; end
4746
+
4747
+ # Version of RSpec mocks currently in use in SemVer format.
4748
+ #
4749
+ # pkg:gem/rspec-mocks#lib/rspec/mocks/version.rb:6
4750
+ RSpec::Mocks::Version::STRING = T.let(T.unsafe(nil), String)