cybrid_api_organization_ruby 0.113.118 → 0.113.119

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 (264) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +12 -12
  3. data/README.md +5 -5
  4. data/cybrid_api_organization_ruby.gemspec +1 -1
  5. data/lib/cybrid_api_organization_ruby/api/organizations_organization_api.rb +1 -1
  6. data/lib/cybrid_api_organization_ruby/api_client.rb +1 -1
  7. data/lib/cybrid_api_organization_ruby/api_error.rb +1 -1
  8. data/lib/cybrid_api_organization_ruby/configuration.rb +1 -1
  9. data/lib/cybrid_api_organization_ruby/models/error_response_organization_model.rb +1 -1
  10. data/lib/cybrid_api_organization_ruby/models/organization_organization_model.rb +1 -1
  11. data/lib/cybrid_api_organization_ruby/models/patch_organization_organization_model.rb +1 -1
  12. data/lib/cybrid_api_organization_ruby/version.rb +2 -2
  13. data/lib/cybrid_api_organization_ruby.rb +1 -1
  14. data/spec/api/organizations_organization_api_spec.rb +1 -1
  15. data/spec/api_client_spec.rb +1 -1
  16. data/spec/configuration_spec.rb +1 -1
  17. data/spec/models/error_response_organization_model_spec.rb +1 -1
  18. data/spec/models/organization_organization_model_spec.rb +1 -1
  19. data/spec/models/patch_organization_organization_model_spec.rb +1 -1
  20. data/spec/spec_helper.rb +1 -1
  21. data/vendor/bundle/ruby/3.2.0/cache/rspec-3.13.0.gem +0 -0
  22. data/vendor/bundle/ruby/3.2.0/cache/rspec-core-3.13.0.gem +0 -0
  23. data/vendor/bundle/ruby/3.2.0/cache/rspec-expectations-3.13.0.gem +0 -0
  24. data/vendor/bundle/ruby/3.2.0/cache/rspec-mocks-3.13.0.gem +0 -0
  25. data/vendor/bundle/ruby/3.2.0/cache/rspec-support-3.13.0.gem +0 -0
  26. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-11.1.3/gem_make.out +5 -5
  27. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/ffi-1.16.3/gem_make.out +5 -5
  28. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +5 -5
  29. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.1.2/gem_make.out +5 -5
  30. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.7.3/gem_make.out +5 -5
  31. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.1.0/gem_make.out +5 -5
  32. data/vendor/bundle/ruby/3.2.0/gems/{rspec-3.12.0 → rspec-3.13.0}/lib/rspec/version.rb +1 -1
  33. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/Changelog.md +26 -1
  34. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/README.md +5 -0
  35. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/configuration.rb +30 -2
  36. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/configuration_options.rb +6 -1
  37. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/exception_presenter.rb +27 -6
  38. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/json_formatter.rb +7 -6
  39. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/notifications.rb +2 -0
  40. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/ordering.rb +40 -1
  41. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/output_wrapper.rb +2 -2
  42. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/runner.rb +5 -1
  43. data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/version.rb +1 -1
  44. data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/Changelog.md +17 -1
  45. data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/expectations/fail_with.rb +1 -1
  46. data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/expectations/version.rb +1 -1
  47. data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/base_matcher.rb +41 -0
  48. data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/compound.rb +2 -2
  49. data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/eq.rb +5 -1
  50. data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/eql.rb +5 -1
  51. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.13.0/lib/rspec/matchers/matcher_delegator.rb +61 -0
  52. data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3/lib/rspec/matchers/expecteds_for_multiple_diffs.rb → rspec-expectations-3.13.0/lib/rspec/matchers/multi_matcher_diff.rb} +16 -16
  53. data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers.rb +1 -1
  54. data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/Changelog.md +15 -1
  55. data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/README.md +2 -0
  56. data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/any_instance/recorder.rb +11 -9
  57. data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/argument_matchers.rb +51 -7
  58. data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/version.rb +1 -1
  59. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/Changelog.md +20 -3
  60. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/caller_filter.rb +2 -0
  61. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/comparable_version.rb +2 -0
  62. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/differ.rb +2 -0
  63. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/directory_maker.rb +2 -0
  64. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/encoded_string.rb +2 -0
  65. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/fuzzy_matcher.rb +2 -0
  66. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/hunk_generator.rb +2 -0
  67. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/matcher_definition.rb +2 -0
  68. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/method_signature_verifier.rb +7 -3
  69. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/mutex.rb +2 -0
  70. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/object_formatter.rb +2 -0
  71. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/recursive_const_methods.rb +2 -0
  72. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/reentrant_mutex.rb +3 -1
  73. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/ruby_features.rb +23 -0
  74. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/source/location.rb +2 -0
  75. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/source/node.rb +2 -0
  76. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/source/token.rb +2 -0
  77. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/source.rb +2 -0
  78. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec/deprecation_helpers.rb +2 -0
  79. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec/diff_helpers.rb +2 -0
  80. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec/formatting_support.rb +2 -0
  81. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec/in_sub_process.rb +6 -0
  82. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec/library_wide_checks.rb +2 -0
  83. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec/shell_out.rb +2 -0
  84. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec/stderr_splitter.rb +2 -0
  85. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec/string_matcher.rb +2 -0
  86. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec/with_isolated_directory.rb +2 -0
  87. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec/with_isolated_stderr.rb +2 -0
  88. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/spec.rb +2 -0
  89. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/version.rb +3 -1
  90. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/warnings.rb +2 -0
  91. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support/with_keywords_when_needed.rb +2 -0
  92. data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/lib/rspec/support.rb +2 -0
  93. data/vendor/bundle/ruby/3.2.0/specifications/{rspec-3.12.0.gemspec → rspec-3.13.0.gemspec} +7 -7
  94. data/vendor/bundle/ruby/3.2.0/specifications/{rspec-core-3.12.2.gemspec → rspec-core-3.13.0.gemspec} +6 -6
  95. data/vendor/bundle/ruby/3.2.0/specifications/{rspec-expectations-3.12.3.gemspec → rspec-expectations-3.13.0.gemspec} +6 -6
  96. data/vendor/bundle/ruby/3.2.0/specifications/{rspec-mocks-3.12.6.gemspec → rspec-mocks-3.13.0.gemspec} +7 -7
  97. data/vendor/bundle/ruby/3.2.0/specifications/{rspec-support-3.12.1.gemspec → rspec-support-3.13.0.gemspec} +5 -5
  98. metadata +233 -233
  99. data/vendor/bundle/ruby/3.2.0/cache/rspec-3.12.0.gem +0 -0
  100. data/vendor/bundle/ruby/3.2.0/cache/rspec-core-3.12.2.gem +0 -0
  101. data/vendor/bundle/ruby/3.2.0/cache/rspec-expectations-3.12.3.gem +0 -0
  102. data/vendor/bundle/ruby/3.2.0/cache/rspec-mocks-3.12.6.gem +0 -0
  103. data/vendor/bundle/ruby/3.2.0/cache/rspec-support-3.12.1.gem +0 -0
  104. data/vendor/bundle/ruby/3.2.0/gems/rspec-expectations-3.12.3/lib/rspec/matchers/matcher_delegator.rb +0 -35
  105. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-3.12.0 → rspec-3.13.0}/LICENSE.md +0 -0
  106. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-3.12.0 → rspec-3.13.0}/README.md +0 -0
  107. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-3.12.0 → rspec-3.13.0}/lib/rspec.rb +0 -0
  108. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/.document +0 -0
  109. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/.yardopts +0 -0
  110. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/LICENSE.md +0 -0
  111. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/exe/rspec +0 -0
  112. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/autorun.rb +0 -0
  113. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/backtrace_formatter.rb +0 -0
  114. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/bisect/coordinator.rb +0 -0
  115. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/bisect/example_minimizer.rb +0 -0
  116. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/bisect/fork_runner.rb +0 -0
  117. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/bisect/server.rb +0 -0
  118. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/bisect/shell_command.rb +0 -0
  119. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/bisect/shell_runner.rb +0 -0
  120. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/bisect/utilities.rb +0 -0
  121. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/did_you_mean.rb +0 -0
  122. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/drb.rb +0 -0
  123. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/dsl.rb +0 -0
  124. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/example.rb +0 -0
  125. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/example_group.rb +0 -0
  126. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/example_status_persister.rb +0 -0
  127. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/filter_manager.rb +0 -0
  128. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/flat_map.rb +0 -0
  129. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/base_bisect_formatter.rb +0 -0
  130. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/base_formatter.rb +0 -0
  131. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/base_text_formatter.rb +0 -0
  132. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/bisect_drb_formatter.rb +0 -0
  133. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/bisect_progress_formatter.rb +0 -0
  134. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/console_codes.rb +0 -0
  135. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/deprecation_formatter.rb +0 -0
  136. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/documentation_formatter.rb +0 -0
  137. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/failure_list_formatter.rb +0 -0
  138. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/fallback_message_formatter.rb +0 -0
  139. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/helpers.rb +0 -0
  140. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/html_formatter.rb +0 -0
  141. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/html_printer.rb +0 -0
  142. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/html_snippet_extractor.rb +0 -0
  143. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/profile_formatter.rb +0 -0
  144. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/progress_formatter.rb +0 -0
  145. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/protocol.rb +0 -0
  146. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/snippet_extractor.rb +0 -0
  147. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters/syntax_highlighter.rb +0 -0
  148. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/formatters.rb +0 -0
  149. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/hooks.rb +0 -0
  150. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/invocations.rb +0 -0
  151. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/memoized_helpers.rb +0 -0
  152. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/metadata.rb +0 -0
  153. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/metadata_filter.rb +0 -0
  154. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/minitest_assertions_adapter.rb +0 -0
  155. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/mocking_adapters/flexmock.rb +0 -0
  156. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/mocking_adapters/mocha.rb +0 -0
  157. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/mocking_adapters/null.rb +0 -0
  158. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/mocking_adapters/rr.rb +0 -0
  159. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/mocking_adapters/rspec.rb +0 -0
  160. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/option_parser.rb +0 -0
  161. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/pending.rb +0 -0
  162. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/profiler.rb +0 -0
  163. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/project_initializer/.rspec +0 -0
  164. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/project_initializer/spec/spec_helper.rb +0 -0
  165. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/project_initializer.rb +0 -0
  166. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/rake_task.rb +0 -0
  167. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/reporter.rb +0 -0
  168. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/ruby_project.rb +0 -0
  169. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/sandbox.rb +0 -0
  170. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/set.rb +0 -0
  171. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/shared_context.rb +0 -0
  172. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/shared_example_group.rb +0 -0
  173. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/shell_escape.rb +0 -0
  174. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/test_unit_assertions_adapter.rb +0 -0
  175. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/warnings.rb +0 -0
  176. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core/world.rb +0 -0
  177. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-core-3.12.2 → rspec-core-3.13.0}/lib/rspec/core.rb +0 -0
  178. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/.document +0 -0
  179. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/.yardopts +0 -0
  180. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/LICENSE.md +0 -0
  181. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/README.md +0 -0
  182. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/expectations/block_snippet_extractor.rb +0 -0
  183. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/expectations/configuration.rb +0 -0
  184. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/expectations/expectation_target.rb +0 -0
  185. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/expectations/failure_aggregator.rb +0 -0
  186. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/expectations/handler.rb +0 -0
  187. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/expectations/minitest_integration.rb +0 -0
  188. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/expectations/syntax.rb +0 -0
  189. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/expectations.rb +0 -0
  190. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/aliased_matcher.rb +0 -0
  191. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/all.rb +0 -0
  192. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/be.rb +0 -0
  193. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/be_between.rb +0 -0
  194. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/be_instance_of.rb +0 -0
  195. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/be_kind_of.rb +0 -0
  196. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/be_within.rb +0 -0
  197. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/change.rb +0 -0
  198. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/contain_exactly.rb +0 -0
  199. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/count_expectation.rb +0 -0
  200. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/cover.rb +0 -0
  201. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/equal.rb +0 -0
  202. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/exist.rb +0 -0
  203. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/has.rb +0 -0
  204. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/have_attributes.rb +0 -0
  205. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/include.rb +0 -0
  206. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/match.rb +0 -0
  207. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/operators.rb +0 -0
  208. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/output.rb +0 -0
  209. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/raise_error.rb +0 -0
  210. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/respond_to.rb +0 -0
  211. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/satisfy.rb +0 -0
  212. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/start_or_end_with.rb +0 -0
  213. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/throw_symbol.rb +0 -0
  214. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in/yield.rb +0 -0
  215. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/built_in.rb +0 -0
  216. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/composable.rb +0 -0
  217. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/dsl.rb +0 -0
  218. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/english_phrasing.rb +0 -0
  219. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/fail_matchers.rb +0 -0
  220. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/generated_descriptions.rb +0 -0
  221. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-expectations-3.12.3 → rspec-expectations-3.13.0}/lib/rspec/matchers/matcher_protocol.rb +0 -0
  222. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/.document +0 -0
  223. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/.yardopts +0 -0
  224. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/LICENSE.md +0 -0
  225. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/any_instance/chain.rb +0 -0
  226. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/any_instance/error_generator.rb +0 -0
  227. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/any_instance/expect_chain_chain.rb +0 -0
  228. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/any_instance/expectation_chain.rb +0 -0
  229. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/any_instance/message_chains.rb +0 -0
  230. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/any_instance/proxy.rb +0 -0
  231. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/any_instance/stub_chain.rb +0 -0
  232. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/any_instance/stub_chain_chain.rb +0 -0
  233. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/any_instance.rb +0 -0
  234. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/argument_list_matcher.rb +0 -0
  235. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/configuration.rb +0 -0
  236. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/error_generator.rb +0 -0
  237. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/example_methods.rb +0 -0
  238. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/instance_method_stasher.rb +0 -0
  239. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/marshal_extension.rb +0 -0
  240. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/matchers/expectation_customization.rb +0 -0
  241. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/matchers/have_received.rb +0 -0
  242. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/matchers/receive.rb +0 -0
  243. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/matchers/receive_message_chain.rb +0 -0
  244. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/matchers/receive_messages.rb +0 -0
  245. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/message_chain.rb +0 -0
  246. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/message_expectation.rb +0 -0
  247. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/method_double.rb +0 -0
  248. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/method_reference.rb +0 -0
  249. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/minitest_integration.rb +0 -0
  250. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/mutate_const.rb +0 -0
  251. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/object_reference.rb +0 -0
  252. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/order_group.rb +0 -0
  253. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/proxy.rb +0 -0
  254. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/space.rb +0 -0
  255. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/standalone.rb +0 -0
  256. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/syntax.rb +0 -0
  257. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/targets.rb +0 -0
  258. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/test_double.rb +0 -0
  259. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/verifying_double.rb +0 -0
  260. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/verifying_message_expectation.rb +0 -0
  261. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks/verifying_proxy.rb +0 -0
  262. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-mocks-3.12.6 → rspec-mocks-3.13.0}/lib/rspec/mocks.rb +0 -0
  263. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/LICENSE.md +0 -0
  264. /data/vendor/bundle/ruby/3.2.0/gems/{rspec-support-3.12.1 → rspec-support-3.13.0}/README.md +0 -0
@@ -1,5 +1,30 @@
1
1
  ### Development
2
- [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.2...3-12-maintenance)
2
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.3...main)
3
+
4
+ ### 3.13.0 / 2024-02-04
5
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.3...v3.13.0)
6
+
7
+ Enhancements:
8
+
9
+ * Support the `--backtrace` flag when using the JSON formatter. (Matt Larraz, #2980)
10
+ * Ignore commented out lines in CLI config files (e.g. `.rspec`). (Junichi Ito, #2984)
11
+ * Add `pending_failure_output` config option to allow skipping backtraces or
12
+ muting pending specs output. (Phil Pirozhkov, #2957)
13
+ * Process `--dry-run` before configuration flags that read files so that introspecting
14
+ it returns the correct value. (Xenor Chang, #3008)
15
+ * Allow specifying custom ordering strategies via `--order`. (Jon Rowe, #3025)
16
+ * Use the improved `syntax_suggest` output for `SyntaxError` when available.
17
+ (Richard Schneeman, #3015, #3026)
18
+ * Add config option (`RSpec::Core::Configuration#full_cause_backtrace`) to print the
19
+ entire backtrace of an exception cause. (David Taylor, #3046)
20
+
21
+ ### 3.12.3 / 2024-02-04
22
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.2...v3.12.3)
23
+
24
+ Bug fixes:
25
+
26
+ * Use `__send__` in output wrapper to avoid issues with IO objects that implement `send`
27
+ like `Socket`. (Richard Platel, #3045)
3
28
 
4
29
  ### 3.12.2 / 2023-04-18
5
30
  [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.1...v3.12.2)
@@ -116,6 +116,11 @@ pretty much the same as `shared_examples` and `include_examples`, providing
116
116
  more accurate naming when you share hooks, `let` declarations, helper methods,
117
117
  etc, but no examples.
118
118
 
119
+ If you want to reuse shared examples or contexts across your RSpec suite you can
120
+ define them in a stand alone _*.rb_ files (_spec/support/shared_examples/definition.rb_
121
+ for example). But you will have to manually `require` them (there is no autoloading of
122
+ _spec/support/_ directory unless you set it up yourself).
123
+
119
124
  ## Metadata
120
125
 
121
126
  rspec-core stores a metadata hash with every example and group, which
@@ -453,11 +453,30 @@ module RSpec
453
453
  add_setting :threadsafe
454
454
 
455
455
  # @macro add_setting
456
- # Maximum count of failed source lines to display in the failure reports.
457
- # (default `10`).
456
+ # Maximum count of failed source lines to display in the failure reports
457
+ # (defaults to `10`).
458
458
  # return [Integer]
459
459
  add_setting :max_displayed_failure_line_count
460
460
 
461
+ # @macro full_cause_backtrace
462
+ # Display the full backtrace of an exceptions cause (defaults to `false`).
463
+ # return [Boolean]
464
+ add_setting :full_cause_backtrace
465
+
466
+ # @macro add_setting
467
+ # Format the output for pending examples. Can be set to:
468
+ # - :full (default) - pending examples appear similarly to failures
469
+ # - :no_backtrace - same as above, but with no backtrace
470
+ # - :skip - do not show the section at all
471
+ # return [Symbol]
472
+ add_read_only_setting :pending_failure_output
473
+ def pending_failure_output=(mode)
474
+ raise ArgumentError,
475
+ "`pending_failure_output` can be set to :full, :no_backtrace, " \
476
+ "or :skip" unless [:full, :no_backtrace, :skip].include?(mode)
477
+ @pending_failure_output = mode
478
+ end
479
+
461
480
  # Determines which bisect runner implementation gets used to run subsets
462
481
  # of the suite during a bisection. Your choices are:
463
482
  #
@@ -557,8 +576,10 @@ module RSpec
557
576
  @derived_metadata_blocks = FilterableItemRepository::QueryOptimized.new(:any?)
558
577
  @threadsafe = true
559
578
  @max_displayed_failure_line_count = 10
579
+ @full_cause_backtrace = false
560
580
  @world = World::Null
561
581
  @shared_context_metadata_behavior = :trigger_inclusion
582
+ @pending_failure_output = :full
562
583
 
563
584
  define_built_in_hooks
564
585
  end
@@ -2120,6 +2141,13 @@ module RSpec
2120
2141
  suggestions = DidYouMean.new(relative_file).call
2121
2142
  reporter.notify_non_example_exception(ex, "An error occurred while loading #{relative_file}.#{suggestions}")
2122
2143
  RSpec.world.wants_to_quit = true
2144
+ rescue SyntaxError => ex
2145
+ relative_file = Metadata.relative_path(file)
2146
+ reporter.notify_non_example_exception(
2147
+ ex,
2148
+ "While loading #{relative_file} a `raise SyntaxError` occurred, RSpec will now quit."
2149
+ )
2150
+ RSpec.world.rspec_is_quitting = true
2123
2151
  rescue Support::AllExceptionsExceptOnesWeMustNotRescue => ex
2124
2152
  relative_file = Metadata.relative_path(file)
2125
2153
  reporter.notify_non_example_exception(ex, "An error occurred while loading #{relative_file}.")
@@ -79,6 +79,10 @@ module RSpec
79
79
  # deprecation (or otherwise access the reporter).
80
80
  :deprecation_stream,
81
81
 
82
+ # In order for `RSpec.configuration.dry_run?` to return `true` during
83
+ # processing the `requires` option, it must be parsed before it.
84
+ :dry_run,
85
+
82
86
  # load paths depend on nothing, but must be set before `requires`
83
87
  # to support load-path-relative requires.
84
88
  :libs,
@@ -169,7 +173,8 @@ module RSpec
169
173
  def args_from_options_file(path)
170
174
  return [] unless path && File.exist?(path)
171
175
  config_string = options_file_as_erb_string(path)
172
- FlatMap.flat_map(config_string.split(/\n+/), &:shellsplit)
176
+ config_lines = config_string.split(/\n+/).reject { |s| s =~ /\A\s*#/ }
177
+ FlatMap.flat_map(config_lines, &:shellsplit)
173
178
  end
174
179
 
175
180
  def options_file_as_erb_string(path)
@@ -56,7 +56,12 @@ module RSpec
56
56
  end
57
57
 
58
58
  unless last_cause.backtrace.nil? || last_cause.backtrace.empty?
59
- cause << (" #{backtrace_formatter.format_backtrace(last_cause.backtrace, example.metadata).first}")
59
+ lines = backtrace_formatter.format_backtrace(last_cause.backtrace, example.metadata)
60
+ lines = [lines[0]] unless RSpec.configuration.full_cause_backtrace # rubocop:disable Metrics/BlockNesting
61
+
62
+ lines.each do |line|
63
+ cause << (" #{line}")
64
+ end
60
65
  end
61
66
  end
62
67
 
@@ -175,10 +180,22 @@ module RSpec
175
180
  end
176
181
 
177
182
  # rubocop:disable Lint/RescueException
178
- def exception_message_string(exception)
179
- exception.message.to_s
180
- rescue Exception => other
181
- "A #{exception.class} for which `exception.message.to_s` raises #{other.class}."
183
+ if SyntaxError.instance_methods.include?(:detailed_message)
184
+ def exception_message_string(exception)
185
+ case exception
186
+ when SyntaxError then exception.detailed_message.to_s
187
+ else
188
+ exception.message.to_s
189
+ end
190
+ rescue Exception => other
191
+ "A #{exception.class} for which `exception.message.to_s` raises #{other.class}."
192
+ end
193
+ else
194
+ def exception_message_string(exception)
195
+ exception.message.to_s
196
+ rescue Exception => other
197
+ "A #{exception.class} for which `exception.message.to_s` raises #{other.class}."
198
+ end
182
199
  end
183
200
  # rubocop:enable Lint/RescueException
184
201
 
@@ -312,10 +329,14 @@ module RSpec
312
329
  ]
313
330
  }
314
331
  elsif @execution_result.status == :pending
315
- {
332
+ options = {
316
333
  :message_color => RSpec.configuration.pending_color,
317
334
  :detail_formatter => PENDING_DETAIL_FORMATTER
318
335
  }
336
+ if RSpec.configuration.pending_failure_output == :no_backtrace
337
+ options[:backtrace_formatter] = EmptyBacktraceFormatter
338
+ end
339
+ options
319
340
  end
320
341
  end
321
342
 
@@ -32,15 +32,16 @@ module RSpec
32
32
  @output_hash[:summary_line] = summary.totals_line
33
33
  end
34
34
 
35
- def stop(notification)
36
- @output_hash[:examples] = notification.examples.map do |example|
37
- format_example(example).tap do |hash|
38
- e = example.exception
35
+ def stop(group_notification)
36
+ @output_hash[:examples] = group_notification.notifications.map do |notification|
37
+ format_example(notification.example).tap do |hash|
38
+ e = notification.example.exception
39
+
39
40
  if e
40
- hash[:exception] = {
41
+ hash[:exception] = {
41
42
  :class => e.class.name,
42
43
  :message => e.message,
43
- :backtrace => e.backtrace,
44
+ :backtrace => notification.formatted_backtrace,
44
45
  }
45
46
  end
46
47
  end
@@ -120,6 +120,8 @@ module RSpec::Core
120
120
  # @return [String] The list of pending examples, fully formatted in the
121
121
  # way that RSpec's built-in formatters emit.
122
122
  def fully_formatted_pending_examples(colorizer=::RSpec::Core::Formatters::ConsoleCodes)
123
+ return if RSpec.configuration.pending_failure_output == :skip
124
+
123
125
  formatted = "\nPending: (Failures listed here are expected and do not affect your suite's status)\n".dup
124
126
 
125
127
  pending_notifications.each_with_index do |notification, index|
@@ -78,6 +78,30 @@ module RSpec
78
78
  end
79
79
  end
80
80
 
81
+ # @private
82
+ # A strategy which delays looking up the ordering until needed
83
+ class Delayed
84
+ def initialize(registry, name)
85
+ @registry = registry
86
+ @name = name
87
+ end
88
+
89
+ def order(list)
90
+ strategy.order(list)
91
+ end
92
+
93
+ private
94
+
95
+ def strategy
96
+ @strategy ||= lookup_strategy
97
+ end
98
+
99
+ def lookup_strategy
100
+ raise "Undefined ordering strategy #{@name.inspect}" unless @registry.has_strategy?(@name)
101
+ @registry.fetch(@name)
102
+ end
103
+ end
104
+
81
105
  # @private
82
106
  # Stores the different ordering strategies.
83
107
  class Registry
@@ -99,6 +123,10 @@ module RSpec
99
123
  @strategies.fetch(name, &fallback)
100
124
  end
101
125
 
126
+ def has_strategy?(name)
127
+ @strategies.key?(name)
128
+ end
129
+
102
130
  def register(sym, strategy)
103
131
  @strategies[sym] = strategy
104
132
  end
@@ -143,9 +171,20 @@ module RSpec
143
171
  :defined
144
172
  elsif order == 'recently-modified'
145
173
  :recently_modified
174
+ else
175
+ order.to_sym
146
176
  end
147
177
 
148
- register_ordering(:global, ordering_registry.fetch(ordering_name)) if ordering_name
178
+ if ordering_name
179
+ strategy =
180
+ if ordering_registry.has_strategy?(ordering_name)
181
+ ordering_registry.fetch(ordering_name)
182
+ else
183
+ Delayed.new(ordering_registry, ordering_name)
184
+ end
185
+
186
+ register_ordering(:global, strategy)
187
+ end
149
188
  end
150
189
 
151
190
  def force(hash)
@@ -15,13 +15,13 @@ module RSpec
15
15
  end
16
16
 
17
17
  def method_missing(name, *args, &block)
18
- output.send(name, *args, &block)
18
+ output.__send__(name, *args, &block)
19
19
  end
20
20
 
21
21
  # Redirect calls for IO interface methods
22
22
  IO.instance_methods(false).each do |method|
23
23
  define_method(method) do |*args, &block|
24
- output.send(method, *args, &block)
24
+ output.__send__(method, *args, &block)
25
25
  end
26
26
  end
27
27
  end
@@ -182,7 +182,11 @@ module RSpec
182
182
  exit!(1)
183
183
  else
184
184
  RSpec.world.wants_to_quit = true
185
- $stderr.puts "\nRSpec is shutting down and will print the summary report... Interrupt again to force quit."
185
+
186
+ $stderr.puts(
187
+ "\nRSpec is shutting down and will print the summary report... Interrupt again to force quit " \
188
+ "(warning: at_exit hooks will be skipped if you force quit)."
189
+ )
186
190
  end
187
191
  end
188
192
 
@@ -3,7 +3,7 @@ module RSpec
3
3
  # Version information for RSpec Core.
4
4
  module Version
5
5
  # Current version of RSpec Core, in semantic versioning format.
6
- STRING = '3.12.2'
6
+ STRING = '3.13.0'
7
7
  end
8
8
  end
9
9
  end
@@ -1,5 +1,21 @@
1
1
  ### Development
2
- [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.3...3-12-maintenance)
2
+ [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.3...main)
3
+
4
+ ### 3.13.0 / 2024-02-04
5
+ [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.4...v3.13.0)
6
+
7
+ Enhancements:
8
+
9
+ * Update `eq` and `eql` matchers to better highlight difference in string encoding.
10
+ (Alan Foster, #1425)
11
+
12
+ ### 3.12.4 / 2024-02-04
13
+ [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.3...v3.12.4)
14
+
15
+ Bug Fixes:
16
+
17
+ * Fix the diff for redefined `actual` and reassigned `@actual` in compound
18
+ expectations failure messages. (Phil Pirozhkov, #1440)
3
19
 
4
20
  ### 3.12.3 / 2023-04-20
5
21
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.2...v3.12.3)
@@ -30,7 +30,7 @@ module RSpec
30
30
  "appropriate failure_message[_when_negated] method to return a string?"
31
31
  end
32
32
 
33
- message = ::RSpec::Matchers::ExpectedsForMultipleDiffs.from(expected).message_with_diff(message, differ, actual)
33
+ message = ::RSpec::Matchers::MultiMatcherDiff.from(expected, actual).message_with_diff(message, differ)
34
34
 
35
35
  RSpec::Support.notify_failure(RSpec::Expectations::ExpectationNotMetError.new message)
36
36
  end
@@ -2,7 +2,7 @@ module RSpec
2
2
  module Expectations
3
3
  # @private
4
4
  module Version
5
- STRING = '3.12.3'
5
+ STRING = '3.13.0'
6
6
  end
7
7
  end
8
8
  end
@@ -161,6 +161,47 @@ module RSpec
161
161
 
162
162
  include HashFormatting
163
163
 
164
+ # @private
165
+ module StringEncodingFormatting
166
+ # @api private
167
+ # @return [Boolean] True if the actual and expected string encoding are different.
168
+ # i.e. the failure may be related to encoding differences and the encoding
169
+ # should be shown to the user. false otherwise.
170
+ if String.method_defined?(:encoding)
171
+ def string_encoding_differs?
172
+ actual.is_a?(String) && expected.is_a?(String) && actual.encoding != expected.encoding
173
+ end
174
+ else
175
+ # @api private
176
+ # @return [Boolean] False always as the curent Ruby version does not support String encoding
177
+ def string_encoding_differs?
178
+ false
179
+ end
180
+ end
181
+ module_function :string_encoding_differs?
182
+
183
+ if String.method_defined?(:encoding)
184
+ # @api private
185
+ # Formats a String's encoding as a human readable string
186
+ # @param value [String]
187
+ # @return [String]
188
+ def format_encoding(value)
189
+ "#<Encoding:#{value.encoding.name}>"
190
+ end
191
+ else
192
+ # @api private
193
+ # Formats a String's encoding as a human readable string
194
+ # @param _value [String]
195
+ # @return [nil] nil as the curent Ruby version does not support String encoding
196
+ def format_encoding(_value)
197
+ nil
198
+ end
199
+ end
200
+ module_function :format_encoding
201
+ end
202
+
203
+ include StringEncodingFormatting
204
+
164
205
  # @api private
165
206
  # Provides default implementations of failure messages, based on the `description`.
166
207
  module DefaultFailureMessages
@@ -51,10 +51,10 @@ module RSpec
51
51
  end
52
52
 
53
53
  # @api private
54
- # @return [RSpec::Matchers::ExpectedsForMultipleDiffs]
54
+ # @return [RSpec::Matchers::MultiMatcherDiff]
55
55
  def expected
56
56
  return nil unless evaluator
57
- ::RSpec::Matchers::ExpectedsForMultipleDiffs.for_many_matchers(diffable_matcher_list)
57
+ ::RSpec::Matchers::MultiMatcherDiff.for_many_matchers(diffable_matcher_list)
58
58
  end
59
59
 
60
60
  protected
@@ -8,7 +8,11 @@ module RSpec
8
8
  # @api private
9
9
  # @return [String]
10
10
  def failure_message
11
- "\nexpected: #{expected_formatted}\n got: #{actual_formatted}\n\n(compared using ==)\n"
11
+ if string_encoding_differs?
12
+ "\nexpected: #{format_encoding(expected)} #{expected_formatted}\n got: #{format_encoding(actual)} #{actual_formatted}\n\n(compared using ==)\n"
13
+ else
14
+ "\nexpected: #{expected_formatted}\n got: #{actual_formatted}\n\n(compared using ==)\n"
15
+ end
12
16
  end
13
17
 
14
18
  # @api private
@@ -8,7 +8,11 @@ module RSpec
8
8
  # @api private
9
9
  # @return [String]
10
10
  def failure_message
11
- "\nexpected: #{expected_formatted}\n got: #{actual_formatted}\n\n(compared using eql?)\n"
11
+ if string_encoding_differs?
12
+ "\nexpected: #{format_encoding(expected)} #{expected_formatted}\n got: #{format_encoding(actual)} #{actual_formatted}\n\n(compared using eql?)\n"
13
+ else
14
+ "\nexpected: #{expected_formatted}\n got: #{actual_formatted}\n\n(compared using eql?)\n"
15
+ end
12
16
  end
13
17
 
14
18
  # @api private
@@ -0,0 +1,61 @@
1
+ module RSpec
2
+ module Matchers
3
+ # Provides a base class with as little methods as possible, so that
4
+ # most methods can be delegated via `method_missing`.
5
+ #
6
+ # On Ruby 2.0+ BasicObject could be used for this purpose, but it
7
+ # introduce some extra complexity with constant resolution, so the
8
+ # BlankSlate pattern was prefered.
9
+ # @private
10
+ class BaseDelegator
11
+ kept_methods = [
12
+ # Methods that raise warnings if removed.
13
+ :__id__, :__send__, :object_id,
14
+
15
+ # Methods that are explicitly undefined in some subclasses.
16
+ :==, :===,
17
+
18
+ # Methods we keep on purpose.
19
+ :class, :respond_to?, :__method__, :method, :dup,
20
+ :clone, :initialize_dup, :initialize_copy, :initialize_clone,
21
+ ]
22
+ instance_methods.each do |method|
23
+ unless kept_methods.include?(method.to_sym)
24
+ undef_method(method)
25
+ end
26
+ end
27
+ end
28
+
29
+ # Provides the necessary plumbing to wrap a matcher with a decorator.
30
+ # @private
31
+ class MatcherDelegator < BaseDelegator
32
+ include Composable
33
+ attr_reader :base_matcher
34
+
35
+ def initialize(base_matcher)
36
+ @base_matcher = base_matcher
37
+ end
38
+
39
+ def method_missing(*args, &block)
40
+ base_matcher.__send__(*args, &block)
41
+ end
42
+
43
+ if ::RUBY_VERSION.to_f > 1.8
44
+ def respond_to_missing?(name, include_all=false)
45
+ super || base_matcher.respond_to?(name, include_all)
46
+ end
47
+ else
48
+ # :nocov:
49
+ def respond_to?(name, include_all=false)
50
+ super || base_matcher.respond_to?(name, include_all)
51
+ end
52
+ # :nocov:
53
+ end
54
+
55
+ def initialize_copy(other)
56
+ @base_matcher = @base_matcher.clone
57
+ super
58
+ end
59
+ end
60
+ end
61
+ end
@@ -1,9 +1,9 @@
1
1
  module RSpec
2
2
  module Matchers
3
3
  # @api private
4
- # Handles list of expected values when there is a need to render
5
- # multiple diffs. Also can handle one value.
6
- class ExpectedsForMultipleDiffs
4
+ # Handles list of expected and actual value pairs when there is a need
5
+ # to render multiple diffs. Also can handle one pair.
6
+ class MultiMatcherDiff
7
7
  # @private
8
8
  # Default diff label when there is only one matcher in diff
9
9
  # output
@@ -19,22 +19,23 @@ module RSpec
19
19
 
20
20
  # @api private
21
21
  # Wraps provided expected value in instance of
22
- # ExpectedForMultipleDiffs. If provided value is already an
23
- # ExpectedForMultipleDiffs then it just returns it.
22
+ # MultiMatcherDiff. If provided value is already an
23
+ # MultiMatcherDiff then it just returns it.
24
24
  # @param [Any] expected value to be wrapped
25
- # @return [RSpec::Matchers::ExpectedsForMultipleDiffs]
26
- def self.from(expected)
25
+ # @param [Any] actual value
26
+ # @return [RSpec::Matchers::MultiMatcherDiff]
27
+ def self.from(expected, actual)
27
28
  return expected if self === expected
28
- new([[expected, DEFAULT_DIFF_LABEL]])
29
+ new([[expected, DEFAULT_DIFF_LABEL, actual]])
29
30
  end
30
31
 
31
32
  # @api private
32
33
  # Wraps provided matcher list in instance of
33
- # ExpectedForMultipleDiffs.
34
+ # MultiMatcherDiff.
34
35
  # @param [Array<Any>] matchers list of matchers to wrap
35
- # @return [RSpec::Matchers::ExpectedsForMultipleDiffs]
36
+ # @return [RSpec::Matchers::MultiMatcherDiff]
36
37
  def self.for_many_matchers(matchers)
37
- new(matchers.map { |m| [m.expected, diff_label_for(m)] })
38
+ new(matchers.map { |m| [m.expected, diff_label_for(m), m.actual] })
38
39
  end
39
40
 
40
41
  # @api private
@@ -42,10 +43,9 @@ module RSpec
42
43
  # factory and actual value if there are any
43
44
  # @param [String] message original failure message
44
45
  # @param [Proc] differ
45
- # @param [Any] actual value
46
46
  # @return [String]
47
- def message_with_diff(message, differ, actual)
48
- diff = diffs(differ, actual)
47
+ def message_with_diff(message, differ)
48
+ diff = diffs(differ)
49
49
  message = "#{message}\n#{diff}" unless diff.empty?
50
50
  message
51
51
  end
@@ -65,8 +65,8 @@ module RSpec
65
65
  end
66
66
  end
67
67
 
68
- def diffs(differ, actual)
69
- @expected_list.map do |(expected, diff_label)|
68
+ def diffs(differ)
69
+ @expected_list.map do |(expected, diff_label, actual)|
70
70
  diff = differ.diff(actual, expected)
71
71
  next if diff.strip.empty?
72
72
  if diff == "\e[0m\n\e[0m"
@@ -10,7 +10,7 @@ RSpec::Support.define_optimized_require_for_rspec(:matchers) { |f| require_relat
10
10
  dsl
11
11
  matcher_delegator
12
12
  aliased_matcher
13
- expecteds_for_multiple_diffs
13
+ multi_matcher_diff
14
14
  ].each { |file| RSpec::Support.require_rspec_matchers(file) }
15
15
 
16
16
  # RSpec's top level namespace. All of rspec-expectations is contained
@@ -1,5 +1,19 @@
1
1
  ### Development
2
- [Full Changelog](http://github.com/rspec/rspec-mocks/compare/v3.12.6...3-12-maintenance)
2
+ [Full Changelog](http://github.com/rspec/rspec-mocks/compare/v3.13.0...main)
3
+
4
+ ### 3.13.0 / 2024-02-04
5
+ [Full Changelog](http://github.com/rspec/rspec-mocks/compare/v3.12.7...v3.13.0)
6
+
7
+ Enhancements:
8
+
9
+ * Add an `array_excluding` matcher for arguments. (Zane Wolfgang Pickett, #1528)
10
+
11
+ ### 3.12.7 / 2024-02-04
12
+ [Full Changelog](http://github.com/rspec/rspec-mocks/compare/v3.12.6...v3.12.7)
13
+
14
+ Bug Fixes:
15
+
16
+ * Reduce allocations from "any_instance" style mocks. (Carlos Palhares, #1479)
3
17
 
4
18
  ### 3.12.6 / 2023-07-11
5
19
  [Full Changelog](http://github.com/rspec/rspec-mocks/compare/v3.12.5...v3.12.6)
@@ -278,6 +278,8 @@ expect(double).to receive(:msg).with(1, duck_type(:abs, :div), "b") #2nd argumen
278
278
  expect(double).to receive(:msg).with(hash_including(:a => 5)) # first arg is a hash with a: 5 as one of the key-values
279
279
  expect(double).to receive(:msg).with(array_including(5)) # first arg is an array with 5 as one of the key-values
280
280
  expect(double).to receive(:msg).with(hash_excluding(:a => 5)) # first arg is a hash without a: 5 as one of the key-values
281
+ expect(double).to receive(:msg).with(start_with('a')) # any matcher, custom or from rspec-expectations
282
+ expect(double).to receive(:msg).with(satisfy { |data| data.dig(:a, :b, :c) == 5 }) # assert anything you want
281
283
  ```
282
284
 
283
285
  ## Receive Counts
@@ -156,21 +156,23 @@ module RSpec
156
156
 
157
157
  private
158
158
 
159
- def ancestor_is_an_observer?(method_name)
160
- lambda do |ancestor|
161
- unless ancestor == @klass
162
- ::RSpec::Mocks.space.
163
- any_instance_recorder_for(ancestor).already_observing?(method_name)
164
- end
165
- end
159
+ def ancestor_is_an_observer?(ancestor, method_name)
160
+ return if ancestor == @klass
161
+
162
+ ::RSpec::Mocks.space.
163
+ any_instance_recorder_for(ancestor).already_observing?(method_name)
166
164
  end
167
165
 
168
166
  def super_class_observers_for(method_name)
169
- @klass.ancestors.select(&ancestor_is_an_observer?(method_name))
167
+ @klass.ancestors.select do |ancestor|
168
+ ancestor_is_an_observer?(ancestor, method_name)
169
+ end
170
170
  end
171
171
 
172
172
  def super_class_observing?(method_name)
173
- @klass.ancestors.any?(&ancestor_is_an_observer?(method_name))
173
+ @klass.ancestors.any? do |ancestor|
174
+ ancestor_is_an_observer?(ancestor, method_name)
175
+ end
174
176
  end
175
177
 
176
178
  def normalize_chain(*args)