cybrid_api_organization_ruby 0.113.118 → 0.113.119

Sign up to get free protection for your applications and to get access to all the features.
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)