Class: RSpec::Mocks::AnyInstance::MessageChains
- Defined in:
- lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb
Instance Method Summary collapse
- #[](method_name) ⇒ Object
- #add(method_name, chain) ⇒ Object
- #all_expectations_fulfilled? ⇒ Boolean
- #each_unfulfilled_expectation_matching(method_name, *args) ⇒ Object
- #has_expectation?(method_name) ⇒ Boolean
-
#initialize ⇒ MessageChains
constructor
A new instance of MessageChains.
- #playback!(instance, method_name) ⇒ Object
- #received_expected_message!(method_name) ⇒ Object
- #remove_stub_chains_for!(method_name) ⇒ Object
- #unfulfilled_expectations ⇒ Object
Constructor Details
#initialize ⇒ MessageChains
Returns a new instance of MessageChains.
6 7 8 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb', line 6 def initialize @chains_by_method_name = Hash.new { |h, k| h[k] = [] } end |
Instance Method Details
#[](method_name) ⇒ Object
11 12 13 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb', line 11 def [](method_name) @chains_by_method_name[method_name] end |
#add(method_name, chain) ⇒ Object
16 17 18 19 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb', line 16 def add(method_name, chain) @chains_by_method_name[method_name] << chain chain end |
#all_expectations_fulfilled? ⇒ Boolean
43 44 45 46 47 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb', line 43 def all_expectations_fulfilled? @chains_by_method_name.all? do |_method_name, chains| chains.all? { |chain| chain.expectation_fulfilled? } end end |
#each_unfulfilled_expectation_matching(method_name, *args) ⇒ Object
36 37 38 39 40 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb', line 36 def each_unfulfilled_expectation_matching(method_name, *args) @chains_by_method_name[method_name].each do |chain| yield chain if !chain.expectation_fulfilled? && chain.matches_args?(*args) end end |
#has_expectation?(method_name) ⇒ Boolean
29 30 31 32 33 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb', line 29 def has_expectation?(method_name) @chains_by_method_name[method_name].find do |chain| ExpectationChain === chain end end |
#playback!(instance, method_name) ⇒ Object
64 65 66 67 68 69 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb', line 64 def playback!(instance, method_name) (instance) @chains_by_method_name[method_name].each do |chain| chain.playback!(instance) end end |
#received_expected_message!(method_name) ⇒ Object
57 58 59 60 61 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb', line 57 def (method_name) @chains_by_method_name[method_name].each do |chain| chain.expectation_fulfilled! end end |
#remove_stub_chains_for!(method_name) ⇒ Object
22 23 24 25 26 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb', line 22 def remove_stub_chains_for!(method_name) @chains_by_method_name[method_name].reject! do |chain| StubChain === chain end end |
#unfulfilled_expectations ⇒ Object
50 51 52 53 54 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-mocks-3.12.2/lib/rspec/mocks/any_instance/message_chains.rb', line 50 def unfulfilled_expectations @chains_by_method_name.map do |method_name, chains| method_name.to_s if ExpectationChain === chains.last && !chains.last.expectation_fulfilled? end.compact end |