Source: ruby-diff-lcs, ruby-rspec Control: found -1 ruby-diff-lcs/1.4.4-1 Control: found -1 ruby-rspec/3.9.0c1e0m1s2-1 Severity: serious Tags: sid bullseye X-Debbugs-CC: debian...@lists.debian.org User: debian...@lists.debian.org Usertags: breaks needs-update
Dear maintainer(s), With a recent upload of ruby-diff-lcs the autopkgtest of ruby-rspec fails in testing when that autopkgtest is run with the binary packages of ruby-diff-lcs from unstable. It passes when run with only packages from testing. In tabular form: pass fail ruby-diff-lcs from testing 1.4.4-1 ruby-rspec from testing 3.9.0c1e0m1s2-1 all others from testing from testing I copied some of the output at the bottom of this report. Currently this regression is blocking the migration of ruby-diff-lcs to testing [1]. Due to the nature of this issue, I filed this bug report against both packages. Can you please investigate the situation and reassign the bug to the right package? More information about this bug and the reason for filing it can be found on https://wiki.debian.org/ContinuousIntegration/RegressionEmailInformation Paul [1] https://qa.debian.org/excuses.php?package=ruby-diff-lcs https://ci.debian.net/data/autopkgtest/testing/amd64/r/ruby-rspec/6662952/log.gz autopkgtest [15:36:33]: test gem2deb-test-runner: [----------------------- ┌──────────────────────────────────────────────────────────────────────────────┐ │ Checking Rubygems dependency resolution on ruby2.7 │ └──────────────────────────────────────────────────────────────────────────────┘ GEM_PATH= ruby2.7 -e gem\ \"rspec\" GEM_PATH= ruby2.7 -e gem\ \"rspec-core\" GEM_PATH= ruby2.7 -e gem\ \"rspec-expectations\" GEM_PATH= ruby2.7 -e gem\ \"rspec-mocks\" GEM_PATH= ruby2.7 -e gem\ \"rspec-support\" ┌──────────────────────────────────────────────────────────────────────────────┐ │ Run tests for ruby2.7 from debian/ruby-tests.rb │ └──────────────────────────────────────────────────────────────────────────────┘ RUBYLIB=. GEM_PATH= ruby2.7 debian/ruby-tests.rb cd rspec-core mv lib lib.off ∙∙∙∙∙∙∙∙∙∙∙∙∙∙ ∙ rspec-core ∙ ∙∙∙∙∙∙∙∙∙∙∙∙∙∙ /usr/bin/ruby2.7 -S rspec spec/integration/order_spec.rb spec/integration/suite_hooks_errors_spec.rb spec/integration/output_stream_spec.rb spec/integration/filtering_spec.rb spec/integration/bisect_spec.rb spec/integration/bisect_runners_spec.rb spec/integration/fail_if_no_examples_spec.rb spec/integration/spec_file_load_errors_spec.rb spec/integration/persistence_failures_spec.rb spec/integration/failed_line_detection_spec.rb spec/rspec/core/suite_hooks_spec.rb spec/rspec/core/metadata_filter_spec.rb spec/rspec/core/hooks_filtering_spec.rb spec/rspec/core/shared_example_group_spec.rb spec/rspec/core/hooks_spec.rb spec/rspec/core/formatters/helpers_spec.rb spec/rspec/core/formatters/failure_list_formatter_spec.rb spec/rspec/core/formatters/profile_formatter_spec.rb spec/rspec/core/formatters/syntax_highlighter_spec.rb spec/rspec/core/formatters/console_codes_spec.rb spec/rspec/core/formatters/html_snippet_extractor_spec.rb spec/rspec/core/formatters/base_text_formatter_spec.rb spec/rspec/core/formatters/progress_formatter_spec.rb spec/rspec/core/formatters/snippet_extractor_spec.rb spec/rspec/core/formatters/documentation_formatter_spec.rb spec/rspec/core/formatters/fallback_message_formatter_spec.rb spec/rspec/core/formatters/json_formatter_spec.rb spec/rspec/core/formatters/deprecation_formatter_spec.rb spec/rspec/core/formatters/html_formatter_spec.rb spec/rspec/core/formatters/exception_presenter_spec.rb spec/rspec/core/configuration/only_failures_support_spec.rb spec/rspec/core/ruby_project_spec.rb spec/rspec/core/formatters_spec.rb spec/rspec/core/drb_spec.rb spec/rspec/core/option_parser_spec.rb spec/rspec/core/ordering_spec.rb spec/rspec/core/set_spec.rb spec/rspec/core/project_initializer_spec.rb spec/rspec/core/example_status_persister_spec.rb spec/rspec/core/pending_spec.rb spec/rspec/core/rspec_matchers_spec.rb spec/rspec/core/pending_example_spec.rb spec/rspec/core/example_spec.rb spec/rspec/core/profiler_spec.rb spec/rspec/core/metadata_spec.rb spec/rspec/core/filter_manager_spec.rb spec/rspec/core/did_you_mean_spec.rb spec/rspec/core/backtrace_formatter_spec.rb spec/rspec/core/output_wrapper_spec.rb spec/rspec/core/reporter_spec.rb spec/rspec/core/example_execution_result_spec.rb spec/rspec/core/memoized_helpers_spec.rb spec/rspec/core/invocations_spec.rb spec/rspec/core/dsl_spec.rb spec/rspec/core/warnings_spec.rb spec/rspec/core/aggregate_failures_spec.rb spec/rspec/core/filterable_item_repository_spec.rb spec/rspec/core/rake_task_spec.rb spec/rspec/core/example_group_constants_spec.rb spec/rspec/core/resources/a_spec.rb spec/rspec/core/resources/acceptance/foo_spec.rb spec/rspec/core/runner_spec.rb spec/rspec/core/world_spec.rb spec/rspec/core/configuration_options_spec.rb spec/rspec/core/shared_context_spec.rb spec/rspec/core/bisect/server_spec.rb spec/rspec/core/bisect/utilities_spec.rb spec/rspec/core/bisect/shell_runner_spec.rb spec/rspec/core/bisect/example_minimizer_spec.rb spec/rspec/core/bisect/shell_command_spec.rb spec/rspec/core/bisect/coordinator_spec.rb spec/rspec/core/failed_example_notification_spec.rb spec/rspec/core/example_group_spec.rb spec/rspec/core/notifications_spec.rb Run options: exclude {:ruby=>#<Proc: ./spec/spec_helper.rb:99>} Randomized with seed 28432 ..........................................................................................................................................................................................................................................*............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................*................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................*......................................................................................................................................................................................................................................................................................................................................................................................................................................................... Pending: (Failures listed here are expected and do not affect your suite's status) 1) RSpec::Core::Formatters::Helpers format duration with mathn loaded returns 'x minutes xx.x seconds' formatted string # lib/mathn.rb is deprecated in Ruby 2.2 # ./spec/rspec/core/formatters/helpers_spec.rb:64 2) RSpec::Core::Formatters::HtmlFormatter produced HTML with mathn loaded is identical to the one we designed manually # lib/mathn.rb is deprecated in Ruby 2.2 # ./spec/rspec/core/formatters/html_formatter_spec.rb:68 3) RSpec::Core::Metadata for an example points :example_group to the same hash object as other examples in the same group # Cannot maintain this and provide full `:example_group` backwards compatibility (see GH #1490):( Failure/Error: expect(b[:description]).to eq("new description") expected: "new description" got: "group" (compared using ==) # ./spec/rspec/core/metadata_spec.rb:140:in `block (3 levels) in <module:Core>' # ./spec/support/sandboxing.rb:16:in `block (3 levels) in <top (required)>' # ./spec/support/sandboxing.rb:7:in `block (2 levels) in <top (required)>' Finished in 10.21 seconds (files took 0.76061 seconds to load) 1810 examples, 0 failures, 3 pending Randomized with seed 28432 mv lib.off lib cd - cd rspec-expectations mv lib lib.off ∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙ ∙ rspec-expectations ∙ ∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙ /usr/bin/ruby2.7 -S rspec spec/rspec/matchers/english_phrasing_spec.rb spec/rspec/matchers/expecteds_for_multiple_diffs_spec.rb spec/rspec/matchers/aliases_spec.rb spec/rspec/matchers/legacy_spec.rb spec/rspec/matchers/composable_spec.rb spec/rspec/matchers/define_negated_matcher_spec.rb spec/rspec/matchers/dsl_spec.rb spec/rspec/matchers/built_in/be_instance_of_spec.rb spec/rspec/matchers/built_in/be_spec.rb spec/rspec/matchers/built_in/throw_symbol_spec.rb spec/rspec/matchers/built_in/start_and_end_with_spec.rb spec/rspec/matchers/built_in/include_spec.rb spec/rspec/matchers/built_in/be_kind_of_spec.rb spec/rspec/matchers/built_in/satisfy_spec.rb spec/rspec/matchers/built_in/all_spec.rb spec/rspec/matchers/built_in/exist_spec.rb spec/rspec/matchers/built_in/equal_spec.rb spec/rspec/matchers/built_in/eq_spec.rb spec/rspec/matchers/built_in/respond_to_spec.rb spec/rspec/matchers/built_in/captures_spec.rb spec/rspec/matchers/built_in/contain_exactly_spec.rb spec/rspec/matchers/built_in/base_matcher_spec.rb spec/rspec/matchers/built_in/have_attributes_spec.rb spec/rspec/matchers/built_in/compound_spec.rb spec/rspec/matchers/built_in/be_between_spec.rb spec/rspec/matchers/built_in/raise_error_spec.rb spec/rspec/matchers/built_in/match_spec.rb spec/rspec/matchers/built_in/cover_spec.rb spec/rspec/matchers/built_in/be_within_spec.rb spec/rspec/matchers/built_in/output_spec.rb spec/rspec/matchers/built_in/eql_spec.rb spec/rspec/matchers/built_in/yield_spec.rb spec/rspec/matchers/built_in/has_spec.rb spec/rspec/matchers/built_in/change_spec.rb spec/rspec/matchers/built_in/operators_spec.rb spec/rspec/matchers/aliased_matcher_spec.rb spec/rspec/matchers/description_generation_spec.rb spec/rspec/matchers_spec.rb spec/rspec/expectations_spec.rb spec/rspec/expectations/expectation_target_spec.rb spec/rspec/expectations/handler_spec.rb spec/rspec/expectations/minitest_integration_spec.rb spec/rspec/expectations/fail_with_spec.rb spec/rspec/expectations/extensions/kernel_spec.rb spec/rspec/expectations/failure_aggregator_spec.rb spec/rspec/expectations/block_snippet_extractor_spec.rb spec/rspec/expectations/configuration_spec.rb spec/rspec/expectations/syntax_spec.rb Randomized with seed 14832 .....................................F.......................................................F...........................................................................................................................................................................................................................................................................................................................fatal: not a git repository (or any of the parent directories): .git ......................................................................F..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................F.......................................................................................................................................................................................................................................................................................................................................................F..........................*****......................F.........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................F.................F......................................... Pending: (Failures listed here are expected and do not affect your suite's status) 1) #include matcher expect(...).to include(with_one_arg) for a target that can pass for a hash behaves like a Hash target fails if target does not include expected # around hook at ./spec/rspec/matchers/built_in/include_spec.rb:218 did not execute the example # ./spec/rspec/matchers/built_in/include_spec.rb:58 2) #include matcher expect(...).to include(with_one_arg) for a target that can pass for a hash behaves like a Hash target provides a valid diff # around hook at ./spec/rspec/matchers/built_in/include_spec.rb:218 did not execute the example # ./spec/rspec/matchers/built_in/include_spec.rb:77 3) #include matcher expect(...).to include(with_one_arg) for a target that can pass for a hash behaves like a Hash target fails if target doesn't have a key and we expect nil # around hook at ./spec/rspec/matchers/built_in/include_spec.rb:218 did not execute the example # ./spec/rspec/matchers/built_in/include_spec.rb:65 4) #include matcher expect(...).to include(with_one_arg) for a target that can pass for a hash behaves like a Hash target works even when an entry in the hash overrides #send # around hook at ./spec/rspec/matchers/built_in/include_spec.rb:218 did not execute the example # ./spec/rspec/matchers/built_in/include_spec.rb:71 5) #include matcher expect(...).to include(with_one_arg) for a target that can pass for a hash behaves like a Hash target passes if target has the expected as a key # around hook at ./spec/rspec/matchers/built_in/include_spec.rb:218 did not execute the example # ./spec/rspec/matchers/built_in/include_spec.rb:54 Failures: 1) RSpec::Expectations#fail_with with --color tells the differ to use color Failure/Error: expect { RSpec::Expectations.fail_with "message", actual, expected }.to fail_with("message\nDiff:#{expected_diff}") expected RSpec::Expectations::ExpectationNotMetError with "message\nDiff:\e[0m\n\e[0m\e[34m@@ -1,2 +1,2 @@\n\e[0m\e[31m-foo bang baz\n\e[0m\e[32m+foo bar baz\n\e[0m", got #<RSpec::Expectations::ExpectationNotMetError: message Diff:[0m [0m[34m@@ -1 +1 @@ [0m[31m-foo bang baz [0m[32m+foo bar baz [0m> with backtrace: # ./spec/rspec/expectations/fail_with_spec.rb:68:in `block (3 levels) in <top (required)>' # ./spec/rspec/expectations/fail_with_spec.rb:67:in `block (2 levels) in <top (required)>' # ./spec/rspec/expectations/fail_with_spec.rb:67:in `block (2 levels) in <top (required)>' 2) RSpec::Matchers::DSL::Matcher handles multiline string diffs Failure/Error: expect(diff).to eq "Diff:\n@@ -1,3 +1,3 @@\n-line1\n+LINE1\nline2\n" expected: "Diff:\n@@ -1,3 +1,3 @@\n-line1\n+LINE1\nline2\n" got: "Diff:\n@@ -1 +1 @@\n-line1\n+LINE1\n" (compared using ==) Diff: @@ -1,6 +1,5 @@ Diff: -@@ -1,3 +1,3 @@ +@@ -1 +1 @@ -line1 +LINE1 -line2 # ./spec/rspec/matchers/dsl_spec.rb:476:in `block (2 levels) in <module:DSL>' 3) RSpec::Expectations#fail_with with matchers uses matcher descriptions in place of matchers in diffs Failure/Error: expect { RSpec::Expectations.fail_with "message", actual, expected }.to fail_with("message\nDiff:#{expected_diff}") expected RSpec::Expectations::ExpectationNotMetError with "message\nDiff:\n@@ -1,2 +1,2 @@\n-[\"poo\", \"car\"]\n+[(a string matching /foo/), (a string matching /bar/)]\n", got #<RSpec::Expectations::ExpectationNotMetError: message Diff: @@ -1 +1 @@ -["poo", "car"] +[(a string matching /foo/), (a string matching /bar/)] > with backtrace: # ./spec/rspec/expectations/fail_with_spec.rb:52:in `block (3 levels) in <top (required)>' # ./spec/rspec/expectations/fail_with_spec.rb:51:in `block (2 levels) in <top (required)>' # ./spec/rspec/expectations/fail_with_spec.rb:51:in `block (2 levels) in <top (required)>' 4) expect(...).to match(expected) provides a diff on failure Failure/Error: expect { expect("foo").to match(/bar/) }.to fail_with(failure_message_that_includes_diff) expected RSpec::Expectations::ExpectationNotMetError with message matching / \s*Diff: \s*@@ -1,2 \+1,2 @@ \s*-\/bar\/ \s*\+"foo"/, got #<RSpec::Expectations::ExpectationNotMetError: expected "foo" to match /bar/ Diff: @@ -1 +1 @@ -/bar/ +"foo" > with backtrace: # ./spec/rspec/matchers/built_in/match_spec.rb:75:in `block (3 levels) in <top (required)>' # ./spec/rspec/matchers/built_in/match_spec.rb:75:in `block (2 levels) in <top (required)>' # ./spec/rspec/matchers/built_in/match_spec.rb:75:in `block (2 levels) in <top (required)>' 5) #include matcher expect(...).to include(with_one_arg) for a hash target behaves like a Hash target provides a valid diff Failure/Error: expect { expect(build_target(:foo => 1, :bar => 2)).to include(:foo => 1, :bar => 3) }.to fail_including(failure_string) expected RSpec::Expectations::ExpectationNotMetError with a string including "Diff:\n@@ -1,3 +1,3 @@\n-:bar => 3,\n+:bar => 2,\n :foo => 1,", got #<RSpec::Expectations::ExpectationNotMetError: expected {:bar => 2, :foo => 1} to include {:bar => 3} Diff: @@ -1 +1 @@ -:bar => 3, +:bar => 2, > with backtrace: # ./spec/rspec/matchers/built_in/include_spec.rb:100:in `block (4 levels) in <top (required)>' # ./spec/rspec/matchers/built_in/include_spec.rb:99:in `block (3 levels) in <top (required)>' Shared Example Group: "a Hash target" called from ./spec/rspec/matchers/built_in/include_spec.rb:196 # ./spec/rspec/matchers/built_in/include_spec.rb:99:in `block (3 levels) in <top (required)>' 6) #include matcher expect(...).to include(with, multiple, args) for an array target correctly diffs lists of hashes Failure/Error: expect { expect([ { :number => 1 }, { :number => 2 }, { :number => 3 } ]).to include( { :number => 1 }, { :number => 0 }, { :number => 3 } ) expected RSpec::Expectations::ExpectationNotMetError with a string including "Diff:\n@@ -1,2 +1,2 @@\n-[{:number => 1}, {:number => 0}, {:number => 3}]\n+[{:number => 1}, {:number => 2}, {:number => 3}]", got #<RSpec::Expectations::ExpectationNotMetError: expected [{:number => 1}, {:number => 2}, {:number => ...@ -1 +1 @@ -[{:number=>1}, {:number=>0}, {:number=>3}] +[{:number=>1}, {:number=>2}, {:number=>3}] > with backtrace: # ./spec/rspec/matchers/built_in/include_spec.rb:289:in `block (5 levels) in <top (required)>' # ./spec/rspec/matchers/built_in/include_spec.rb:288:in `block (4 levels) in <top (required)>' # ./spec/rspec/matchers/built_in/include_spec.rb:288:in `block (4 levels) in <top (required)>' 7) #have_attributes matcher expect(...).to have_attributes(with_one_attribute) diffs the attributes received with those expected Failure/Error: expect { expect(person).to have_attributes(:name => wrong_name) }.to fail_including(expected_diff) expected RSpec::Expectations::ExpectationNotMetError with a string including "@@ -1,2 +1,2 @@\n-:name => \"Wrong Name\",\n+:name => \"Correct name\",", got #<RSpec::Expectations::ExpectationNotMetError: expected #<struct Person name="Correct name", age=33> ...utes {:name => "Correct name"} Diff: @@ -1 +1 @@ -:name => "Wrong Name", +:name => "Correct name", > with backtrace: # ./spec/rspec/matchers/built_in/have_attributes_spec.rb:61:in `block (4 levels) in <top (required)>' # ./spec/rspec/matchers/built_in/have_attributes_spec.rb:60:in `block (3 levels) in <top (required)>' # ./spec/rspec/matchers/built_in/have_attributes_spec.rb:60:in `block (3 levels) in <top (required)>' 8) #have_attributes matcher expect(...).to have_attributes(with_multiple_attributes) diffs the attributes received with those expected Failure/Error: expect { expect(person).to have_attributes(:name => correct_name, :age => wrong_age) }.to fail_including(expected_diff) expected RSpec::Expectations::ExpectationNotMetError with a string including "@@ -1,3 +1,3 @@\n-:age => 11,\n+:age => 33,\n :name => \"Correct name\",", got #<RSpec::Expectations::ExpectationNotMetError: expected #<struct Person name="Correct name", age=33> ...t had attributes {:age => 33, :name => "Correct name"} Diff: @@ -1 +1 @@ -:age => 11, +:age => 33, > with backtrace: # ./spec/rspec/matchers/built_in/have_attributes_spec.rb:160:in `block (4 levels) in <top (required)>' # ./spec/rspec/matchers/built_in/have_attributes_spec.rb:159:in `block (3 levels) in <top (required)>' # ./spec/rspec/matchers/built_in/have_attributes_spec.rb:159:in `block (3 levels) in <top (required)>' Finished in 2.18 seconds (files took 0.46385 seconds to load) 2262 examples, 8 failures, 5 pending Failed examples: rspec ./spec/rspec/expectations/fail_with_spec.rb:62 # RSpec::Expectations#fail_with with --color tells the differ to use color rspec ./spec/rspec/matchers/dsl_spec.rb:459 # RSpec::Matchers::DSL::Matcher handles multiline string diffs rspec ./spec/rspec/expectations/fail_with_spec.rb:39 # RSpec::Expectations#fail_with with matchers uses matcher descriptions in place of matchers in diffs rspec ./spec/rspec/matchers/built_in/match_spec.rb:66 # expect(...).to match(expected) provides a diff on failure rspec ./spec/rspec/matchers/built_in/include_spec.rb[1:2:7:1:5] # #include matcher expect(...).to include(with_one_arg) for a hash target behaves like a Hash target provides a valid diff rspec ./spec/rspec/matchers/built_in/include_spec.rb:285 # #include matcher expect(...).to include(with, multiple, args) for an array target correctly diffs lists of hashes rspec ./spec/rspec/matchers/built_in/have_attributes_spec.rb:51 # #have_attributes matcher expect(...).to have_attributes(with_one_attribute) diffs the attributes received with those expected rspec ./spec/rspec/matchers/built_in/have_attributes_spec.rb:149 # #have_attributes matcher expect(...).to have_attributes(with_multiple_attributes) diffs the attributes received with those expected Randomized with seed 14832 mv lib.off lib cd - cd rspec-mocks mv lib lib.off ∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙ ∙ rspec-mocks ∙ ∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙ /usr/bin/ruby2.7 -S rspec spec/rspec/mocks/hash_including_matcher_spec.rb spec/rspec/mocks/stash_spec.rb spec/rspec/mocks/mutate_const_spec.rb spec/rspec/mocks/stubbed_message_expectations_spec.rb spec/rspec/mocks/syntax_agnostic_message_matchers_spec.rb spec/rspec/mocks/multiple_return_value_spec.rb spec/rspec/mocks/reraising_eager_raises_spec.rb spec/rspec/mocks/matchers/have_received_spec.rb spec/rspec/mocks/matchers/receive_messages_spec.rb spec/rspec/mocks/matchers/receive_message_chain_spec.rb spec/rspec/mocks/matchers/receive_spec.rb spec/rspec/mocks/space_spec.rb spec/rspec/mocks/to_ary_spec.rb spec/rspec/mocks/standalone_spec.rb spec/rspec/mocks/failure_notification_spec.rb spec/rspec/mocks/order_group_spec.rb spec/rspec/mocks/test_double_spec.rb spec/rspec/mocks/mock_expectation_error_spec.rb spec/rspec/mocks/nil_expectation_warning_spec.rb spec/rspec/mocks/partial_double_spec.rb spec/rspec/mocks/at_least_spec.rb spec/rspec/mocks/argument_matchers_spec.rb spec/rspec/mocks/any_instance/message_chains_spec.rb spec/rspec/mocks/double_spec.rb spec/rspec/mocks/mock_ordering_spec.rb spec/rspec/mocks/twice_counts_spec.rb spec/rspec/mocks/null_object_double_spec.rb spec/rspec/mocks/combining_implementation_instructions_spec.rb spec/rspec/mocks/message_expectation_string_representation_spec.rb spec/rspec/mocks/partial_double_using_mocks_directly_spec.rb spec/rspec/mocks/modifying_invoked_expectations_spec.rb spec/rspec/mocks/marshal_extension_spec.rb spec/rspec/mocks/expiration_spec.rb spec/rspec/mocks/and_return_spec.rb spec/rspec/mocks/and_wrap_original_spec.rb spec/rspec/mocks/formatting_spec.rb spec/rspec/mocks/precise_counts_spec.rb spec/rspec/mocks/at_most_spec.rb spec/rspec/mocks/and_yield_spec.rb spec/rspec/mocks/stub_spec.rb spec/rspec/mocks/configuration_spec.rb spec/rspec/mocks/and_call_original_spec.rb spec/rspec/mocks/error_generator_spec.rb spec/rspec/mocks/thrice_counts_spec.rb spec/rspec/mocks/before_all_spec.rb spec/rspec/mocks/array_including_matcher_spec.rb spec/rspec/mocks/once_counts_spec.rb spec/rspec/mocks/stub_chain_spec.rb spec/rspec/mocks/verifying_doubles/class_double_with_class_loaded_spec.rb spec/rspec/mocks/verifying_doubles/instance_double_with_class_not_loaded_spec.rb spec/rspec/mocks/verifying_doubles/instance_double_with_class_loaded_spec.rb spec/rspec/mocks/verifying_doubles/method_visibility_spec.rb spec/rspec/mocks/verifying_doubles/naming_spec.rb spec/rspec/mocks/verifying_doubles/object_double_spec.rb spec/rspec/mocks/verifying_doubles/construction_spec.rb spec/rspec/mocks/verifying_doubles/expected_arg_verification_spec.rb spec/rspec/mocks/verifying_doubles/class_double_with_class_not_loaded_spec.rb spec/rspec/mocks/any_instance_spec.rb spec/rspec/mocks/syntax_spec.rb spec/rspec/mocks/stub_implementation_spec.rb spec/rspec/mocks/example_methods_spec.rb spec/rspec/mocks/should_syntax_spec.rb spec/rspec/mocks/spy_spec.rb spec/rspec/mocks/diffing_spec.rb spec/rspec/mocks/instance_method_stasher_spec.rb spec/rspec/mocks/hash_excluding_matcher_spec.rb spec/rspec/mocks/serialization_spec.rb spec/rspec/mocks/methods_spec.rb spec/rspec/mocks/block_return_value_spec.rb spec/rspec/mocks_spec.rb Run options: exclude {:ordered_and_vague_counts_unsupported=>true} Randomized with seed 15277 ............................................................................................................................................................................................................................................................................................................................................................................................*..................F....................*.....................................................................................FFF.F.....F..................................................................................................................................................................*...........................................................................................................................................................................................................................................*...................*................................................fatal: not a git repository (or any of the parent directories): .git ............................................................................................................................................................................................................................................................................................................................................................................................................................................**............................................................................................................................................................................................................................................................................................ Pending: (Failures listed here are expected and do not affect your suite's status) 1) RSpec::Mocks::Double#and_yield with eval context as block argument and yielded arguments that are optional yields the default argument when the argument is not given # Not sure how to achieve this yet. See rspec/rspec-mocks#714 and rspec/rspec-support#85. Got 2 failures: 1.1) Failure/Error: eval("object.a_message { |receiver=default_arg| receiver.bar }") #<Object:0x0000562dd512c5b0> yielded || to block with arity of 1 # (eval):1:in `block (6 levels) in <top (required)>' # ./spec/rspec/mocks/and_yield_spec.rb:111:in `eval' # ./spec/rspec/mocks/and_yield_spec.rb:111:in `block (6 levels) in <top (required)>' 1.2) Failure/Error: expect(default_arg).to receive(:bar) (#<Object:0x0000562dd512c5d8>).bar(*(any args)) expected: 1 time with any arguments received: 0 times with any arguments # ./spec/rspec/mocks/and_yield_spec.rb:109:in `block (6 levels) in <top (required)>' 2) Reraising eager raises during the verify step when an expectation is called out of order reraises during verification # Says bar was called 0 times when it was, see: http://git.io/pjTq Failure/Error: expect { verify_all }.to fail_with(/received :bar out of order/) expected RSpec::Mocks::MockExpectationError with message matching /received :bar out of order/ but nothing was raised # ./spec/rspec/mocks/reraising_eager_raises_spec.rb:105:in `block (4 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/reraising_eager_raises_spec.rb:100:in `block (3 levels) in <top (required)>' 3) RSpec::Mocks::Matchers::Receive expect_any_instance_of(...).to receive behaves like an expect syntax expectation reports the line number of expectation of unreceived message # No reason given Failure/Error: expect { verify_all }.to raise_error { |e| expect(e.backtrace.first).to match(/#{File.basename(__FILE__)}:#{expected_error_line}/) } expected "/usr/share/rubygems-integration/all/gems/rspec-support-3.9.2/lib/rspec/support.rb:97:in `block in <module:Support>'" to match /receive_spec.rb:165/ Diff: @@ -1 +1 @@ -/receive_spec.rb:165/ +"/usr/share/rubygems-integration/all/gems/rspec-support-3.9.2/lib/rspec/support.rb:97:in `block in <module:Support>'" Shared Example Group: "an expect syntax expectation" called from ./spec/rspec/mocks/matchers/receive_spec.rb:464 # ./spec/rspec/mocks/matchers/receive_spec.rb:167:in `block (3 levels) in <module:Mocks>' 4) receive_message_chain with only the expect syntax enabled works with and_call_original # See https://github.com/rspec/rspec-mocks/pull/467#issuecomment-28631621 Got 2 failures: 4.1) Failure/Error: expect(list).to receive_message_chain(:to_a, :length).and_call_original #<Double (anonymous)> is a pure test double. `and_call_original` is only available on a partial double. # ./spec/rspec/mocks/matchers/receive_message_chain_spec.rb:69:in `block (3 levels) in <module:Matchers>' 4.2) Failure/Error: expect(list).to receive_message_chain(:to_a, :length).and_call_original ([1, 2, 3]).to_a(*(any args)) expected: 1 time with any arguments received: 0 times with any arguments # ./spec/rspec/mocks/matchers/receive_message_chain_spec.rb:69:in `block (3 levels) in <module:Matchers>' 5) receive_message_chain with only the expect syntax enabled fails with and_call_original when the entire chain is not called # See https://github.com/rspec/rspec-mocks/pull/467#issuecomment-28631621 Got 2 failures: 5.1) Failure/Error: expect(list).to receive_message_chain(:to_a, :length).and_call_original #<Double (anonymous)> is a pure test double. `and_call_original` is only available on a partial double. # ./spec/rspec/mocks/matchers/receive_message_chain_spec.rb:75:in `block (3 levels) in <module:Matchers>' 5.2) Failure/Error: expect(list).to receive_message_chain(:to_a, :length).and_call_original ([1, 2, 3]).to_a(*(any args)) expected: 1 time with any arguments received: 0 times with any arguments # ./spec/rspec/mocks/matchers/receive_message_chain_spec.rb:75:in `block (3 levels) in <module:Matchers>' 6) #any_instance invocation order when setting a message expectation raises an error if 'with' follows 'and_return' # see Github issue #42 Got 2 failures: 6.1) Failure/Error: expect { expect_any_instance_of(klass).to receive(:foo).and_return(1).with("1") }.to raise_error(NoMethodError) expected NoMethodError but nothing was raised # ./spec/rspec/mocks/any_instance_spec.rb:80:in `block (4 levels) in <module:Mocks>' 6.2) Failure/Error: DEFAULT_FAILURE_NOTIFIER = lambda { |failure, _opts| raise failure } Exactly one instance should have received the following message(s) but didn't: foo # /usr/share/rubygems-integration/all/gems/rspec-support-3.9.2/lib/rspec/support.rb:97:in `block in <module:Support>' # /usr/share/rubygems-integration/all/gems/rspec-support-3.9.2/lib/rspec/support.rb:106:in `notify_failure' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/error_generator.rb:327:in `notify' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/error_generator.rb:311:in `__raise' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/error_generator.rb:7:in `raise_second_instance_received_message_error' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/recorder.rb:100:in `verify' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/space.rb:75:in `block in verify_all' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/space.rb:75:in `each_value' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/space.rb:75:in `verify_all' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks.rb:45:in `verify' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/mocking_adapters/rspec.rb:23:in `verify_mocks_for_rspec' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:517:in `verify_mocks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:511:in `run_after_example' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:276:in `block in run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:503:in `block in with_around_and_singleton_context_hooks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:460:in `block in with_around_example_hooks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:472:in `block in run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:610:in `run_around_example_hooks_for' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:472:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:460:in `with_around_example_hooks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:503:in `with_around_and_singleton_context_hooks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:254:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:633:in `block in run_examples' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:629:in `map' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:629:in `run_examples' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:595:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `block in run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `map' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `block in run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `map' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `map' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/configuration.rb:2031:in `with_suite_hooks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:116:in `block in run_specs' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/reporter.rb:74:in `report' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:115:in `run_specs' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:89:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:71:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:45:in `invoke' # /usr/bin/rspec:4:in `<main>' # # Showing full backtrace because every line was filtered out. # See docs for RSpec::Configuration#backtrace_exclusion_patterns and # RSpec::Configuration#backtrace_inclusion_patterns for more information. 7) #any_instance invocation order when setting a message expectation raises an error if 'with' follows 'and_raise' # see Github issue #42 Got 2 failures: 7.1) Failure/Error: expect { expect_any_instance_of(klass).to receive(:foo).and_raise(1).with("1") }.to raise_error(NoMethodError) expected NoMethodError but nothing was raised # ./spec/rspec/mocks/any_instance_spec.rb:85:in `block (4 levels) in <module:Mocks>' 7.2) Failure/Error: DEFAULT_FAILURE_NOTIFIER = lambda { |failure, _opts| raise failure } Exactly one instance should have received the following message(s) but didn't: foo # /usr/share/rubygems-integration/all/gems/rspec-support-3.9.2/lib/rspec/support.rb:97:in `block in <module:Support>' # /usr/share/rubygems-integration/all/gems/rspec-support-3.9.2/lib/rspec/support.rb:106:in `notify_failure' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/error_generator.rb:327:in `notify' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/error_generator.rb:311:in `__raise' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/error_generator.rb:7:in `raise_second_instance_received_message_error' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/recorder.rb:100:in `verify' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/space.rb:75:in `block in verify_all' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/space.rb:75:in `each_value' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks/space.rb:75:in `verify_all' # /usr/share/rubygems-integration/all/gems/rspec-mocks-3.9.1/lib/rspec/mocks.rb:45:in `verify' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/mocking_adapters/rspec.rb:23:in `verify_mocks_for_rspec' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:517:in `verify_mocks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:511:in `run_after_example' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:276:in `block in run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:503:in `block in with_around_and_singleton_context_hooks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:460:in `block in with_around_example_hooks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:472:in `block in run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:610:in `run_around_example_hooks_for' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:472:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:460:in `with_around_example_hooks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:503:in `with_around_and_singleton_context_hooks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:254:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:633:in `block in run_examples' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:629:in `map' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:629:in `run_examples' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:595:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `block in run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `map' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `block in run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `map' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `map' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/configuration.rb:2031:in `with_suite_hooks' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:116:in `block in run_specs' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/reporter.rb:74:in `report' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:115:in `run_specs' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:89:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:71:in `run' # /usr/share/rubygems-integration/all/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:45:in `invoke' # /usr/bin/rspec:4:in `<main>' # # Showing full backtrace because every line was filtered out. # See docs for RSpec::Configuration#backtrace_exclusion_patterns and # RSpec::Configuration#backtrace_inclusion_patterns for more information. Failures: 1) Test doubles format well in failure messages formats the doubles when they appear in data structures and diffs Failure/Error: expect { expect([foo]).to include(bar) }.to fail_with(<<-EOS.gsub(/^\s+\|/, '')) |expected [#<Double "Foo">] to include #<Double "Bar"> |Diff: |@@ -1,2 +1,2 @@ |-[#<Double "Bar">] |+[#<Double "Foo">] EOS expected RSpec::Expectations::ExpectationNotMetError with "expected [#<Double \"Foo\">] to include #<Double \"Bar\">\nDiff:\n@@ -1,2 +1,2 @@\n-[#<Double \"Bar\">]\n+[#<Double \"Foo\">]\n", got #<RSpec::Expectations::ExpectationNotMetError: expected [#<Double "Foo">] to include #<Double "Bar"> Diff: @@ -1 +1 @@ -[#<Double "Bar">] +[#<Double "Foo">] > with backtrace: # ./spec/rspec/mocks/formatting_spec.rb:100:in `block (3 levels) in <top (required)>' # ./spec/rspec/mocks/formatting_spec.rb:99:in `block (2 levels) in <top (required)>' # ./spec/rspec/mocks/formatting_spec.rb:99:in `block (2 levels) in <top (required)>' 2) Diffs printed when arguments don't match with a matcher object that does not define #description for a matcher object that does not implement #description Failure/Error: expect { d.foo([:a, :b]) }.to fail_with("#<Double \"double\"> received :foo with unexpected arguments\n" \ " expected: (#{collab_inspect})\n" \ " got: ([:a, :b])\nDiff:\n@@ -1,2 +1,2 @@\n-[#{collab_pp}]\n+[[:a, :b]]\n") expected RSpec::Mocks::MockExpectationError with "#<Double \"double\"> received :foo with unexpected arguments\n expected: (#<MyCollab>)\n got: ([:a, :b])\nDiff:\n@@ -1,2 +1,2 @@\n-[#<MyCollab>]\n+[[:a, :b]]\n", got #<RSpec::Mocks::MockExpectationError: #<Double "double"> received :foo with unexpected arguments expected: (#<MyCollab>) got: ([:a, :b]) Diff: @@ -1 +1 @@ -[#<MyCollab>] +[[:a, :b]] > with backtrace: # ./spec/rspec/mocks/diffing_spec.rb:164:in `block (6 levels) in <top (required)>' # ./spec/rspec/mocks/diffing_spec.rb:163:in `block (5 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/diffing_spec.rb:146:in `block (4 levels) in <top (required)>' # ./spec/rspec/mocks/diffing_spec.rb:163:in `block (5 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/diffing_spec.rb:146:in `block (4 levels) in <top (required)>' 3) Diffs printed when arguments don't match with a matcher object that defines #description uses the object's description Failure/Error: expect { d.foo([:a, :b]) }.to fail_with("#<Double \"double\"> received :foo with unexpected arguments\n" \ " expected: (#{collab_description})\n" \ " got: ([:a, :b])\nDiff:\n@@ -1,2 +1,2 @@\n-[\"#{collab_description}\"]\n+[[:a, :b]]\n") expected RSpec::Mocks::MockExpectationError with "#<Double \"double\"> received :foo with unexpected arguments\n expected: (fake_matcher_description)\n got: ([:a, :b])\nDiff:\n@@ -1,2 +1,2 @@\n-[\"fake_matcher_description\"]\n+[[:a, :b]]\n", got #<RSpec::Mocks::MockExpectationError: #<Double "double"> received :foo with unexpected arguments ex...er_description) got: ([:a, :b]) Diff: @@ -1 +1 @@ -["fake_matcher_description"] +[[:a, :b]] > with backtrace: # ./spec/rspec/mocks/diffing_spec.rb:136:in `block (6 levels) in <top (required)>' # ./spec/rspec/mocks/diffing_spec.rb:135:in `block (5 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/diffing_spec.rb:129:in `block (4 levels) in <top (required)>' # ./spec/rspec/mocks/diffing_spec.rb:135:in `block (5 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/diffing_spec.rb:129:in `block (4 levels) in <top (required)>' 4) Diffs printed when arguments don't match with a non matcher object prints a diff with hash args Failure/Error: expect { d.foo(:bad => :hash) }.to fail_with(/\A#<Double "double"> received :foo with unexpected arguments\n expected: \(#{hash_regex_inspect expected_hash}\)\n got: \(#{hash_regex_inspect actual_hash}\)\nDiff:\n@@ \-1\,2 \+1\,2 @@\n\-\[#{hash_regex_inspect expected_hash}\]\n\+\[#{hash_regex_inspect actual_hash}\]\n\z/) expected RSpec::Mocks::MockExpectationError with message matching /\A#<Double "double"> received :foo with unexpected arguments\n expected: \(\{:baz=>:quz,\ :foo=>:ba...:hash\}\)\nDiff:\n@@ \-1\,2 \+1\,2 @@\n\-\[\{:baz=>:quz,\ :foo=>:bar\}\]\n\+\[\{:bad=>:hash\}\]\n\z/, got #<RSpec::Mocks::MockExpectationError: #<Double "double"> received :foo with unexpected arguments ex...>:bar}) got: ({:bad=>:hash}) Diff: @@ -1 +1 @@ -[{:baz=>:quz, :foo=>:bar}] +[{:bad=>:hash}] > with backtrace: # ./spec/rspec/mocks/diffing_spec.rb:70:in `block (5 levels) in <top (required)>' # ./spec/rspec/mocks/diffing_spec.rb:69:in `block (4 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/diffing_spec.rb:67:in `block (3 levels) in <top (required)>' # ./spec/rspec/mocks/diffing_spec.rb:69:in `block (4 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/diffing_spec.rb:67:in `block (3 levels) in <top (required)>' 5) Diffs printed when arguments don't match with a non matcher object prints a diff with array args Failure/Error: expect { d.foo([]) }.to fail_with("#<Double \"double\"> received :foo with unexpected arguments\n expected: ([:a, :b, :c])\n got: ([])\nDiff:\n@@ -1,2 +1,2 @@\n-[[:a, :b, :c]]\n+[[]]\n") expected RSpec::Mocks::MockExpectationError with "#<Double \"double\"> received :foo with unexpected arguments\n expected: ([:a, :b, :c])\n got: ([])\nDiff:\n@@ -1,2 +1,2 @@\n-[[:a, :b, :c]]\n+[[]]\n", got #<RSpec::Mocks::MockExpectationError: #<Double "double"> received :foo with unexpected arguments expected: ([:a, :b, :c]) got: ([]) Diff: @@ -1 +1 @@ -[[:a, :b, :c]] +[[]] > with backtrace: # ./spec/rspec/mocks/diffing_spec.rb:103:in `block (5 levels) in <top (required)>' # ./spec/rspec/mocks/diffing_spec.rb:102:in `block (4 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/diffing_spec.rb:100:in `block (3 levels) in <top (required)>' # ./spec/rspec/mocks/diffing_spec.rb:102:in `block (4 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/diffing_spec.rb:100:in `block (3 levels) in <top (required)>' 6) Diffs printed when arguments don't match with a non matcher object that defines #description does not use the object's description for a non-matcher object that implements #description Failure/Error: expect { d.foo([]) }.to fail_with("#<Double \"double\"> received :foo with unexpected arguments\n" \ " expected: (#{collab_inspect})\n" \ " got: ([])\nDiff:\n@@ -1,2 +1,2 @@\n-[#{collab_inspect}]\n+[[]]\n") expected RSpec::Mocks::MockExpectationError with "#<Double \"double\"> received :foo with unexpected arguments\n expected: (#<Double :collab>)\n got: ([])\nDiff:\n@@ -1,2 +1,2 @@\n-[#<Double :collab>]\n+[[]]\n", got #<RSpec::Mocks::MockExpectationError: #<Double "double"> received :foo with unexpected arguments expected: (#<Double :collab>) got: ([]) Diff: @@ -1 +1 @@ -[#<Double :collab>] +[[]] > with backtrace: # ./spec/rspec/mocks/diffing_spec.rb:117:in `block (6 levels) in <top (required)>' # ./spec/rspec/mocks/diffing_spec.rb:116:in `block (5 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/diffing_spec.rb:110:in `block (4 levels) in <top (required)>' # ./spec/rspec/mocks/diffing_spec.rb:116:in `block (5 levels) in <top (required)>' # ./spec/spec_helper.rb:45:in `with_unfulfilled_double' # ./spec/rspec/mocks/diffing_spec.rb:110:in `block (4 levels) in <top (required)>' Finished in 1.15 seconds (files took 0.44479 seconds to load) 1698 examples, 6 failures, 7 pending Failed examples: rspec ./spec/rspec/mocks/formatting_spec.rb:93 # Test doubles format well in failure messages formats the doubles when they appear in data structures and diffs rspec ./spec/rspec/mocks/diffing_spec.rb:145 # Diffs printed when arguments don't match with a matcher object that does not define #description for a matcher object that does not implement #description rspec ./spec/rspec/mocks/diffing_spec.rb:128 # Diffs printed when arguments don't match with a matcher object that defines #description uses the object's description rspec ./spec/rspec/mocks/diffing_spec.rb:66 # Diffs printed when arguments don't match with a non matcher object prints a diff with hash args rspec ./spec/rspec/mocks/diffing_spec.rb:99 # Diffs printed when arguments don't match with a non matcher object prints a diff with array args rspec ./spec/rspec/mocks/diffing_spec.rb:109 # Diffs printed when arguments don't match with a non matcher object that defines #description does not use the object's description for a non-matcher object that implements #description Randomized with seed 15277 mv lib.off lib cd - cd rspec-support mv lib lib.off ∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙ ∙ rspec-support ∙ ∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙ /usr/bin/ruby2.7 -S rspec spec/rspec/support_spec.rb spec/rspec/support/source/node_spec.rb spec/rspec/support/source/token_spec.rb spec/rspec/support/object_formatter_spec.rb spec/rspec/support/matcher_definition_spec.rb spec/rspec/support/spec/shell_out_spec.rb spec/rspec/support/spec/stderr_splitter_spec.rb spec/rspec/support/spec/with_isolated_std_err_spec.rb spec/rspec/support/spec/in_sub_process_spec.rb spec/rspec/support/encoded_string_spec.rb spec/rspec/support/directory_maker_spec.rb spec/rspec/support/reentrant_mutex_spec.rb spec/rspec/support/recursive_const_methods_spec.rb spec/rspec/support/ruby_features_spec.rb spec/rspec/support/comparable_version_spec.rb spec/rspec/support/warnings_spec.rb spec/rspec/support/differ_spec.rb spec/rspec/support/fuzzy_matcher_spec.rb spec/rspec/support/source_spec.rb spec/rspec/support/method_signature_verifier_spec.rb Randomized with seed 10545 ..F.FF.....F.F.F....F.F.F..FFFF.FF..................................................................................................*...................................................fatal: not a git repository (or any of the parent directories): .git .................................................................................................................................................................................................................................................................................................................................................... Pending: (Failures listed here are expected and do not affect your suite's status) 1) RSpec::Support::ShellOut can shell out to ruby with the current load path # Need to investigate why this is failing -- see https://travis-ci.org/rspec/rspec-core/jobs/60327106 and https://travis-ci.org/rspec/rspec-support/jobs/60296920 for examples # ./spec/rspec/support/spec/shell_out_spec.rb:22 Failures: 1) RSpec::Support::Differ#diff outputs unified diff message of two hashes with object keys Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-[\"a\", \"c\"] => \"b\",\n+[\"d\", \"c\"] => \"b\",\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-[\"a\", \"c\"] => \"b\",\n+[\"d\", \"c\"] => \"b\",\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 91, 34, 97, 34, 44, 32, 34, 99, 34, 93, 32, 61, 62, 32, 34, 98, 34, 44, 10, 43, 91, 34, 100, 34, 44, 32, 34, 99, 34, 93, 32, 61, 62, 32, 34, 98, 34, 44, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 91, 34, 97, 34, 44, 32, 34, 99, 34, 93, 32, 61, 62, 32, 34, 98, 34, 44, 10, 43, 91, 34, 100, 34, 44, 32, 34, 99, 34, 93, 32, 61, 62, 32, 34, 98, 34, 44, 10] # ./spec/rspec/support/differ_spec.rb:293:in `block (3 levels) in <module:Support>' 2) RSpec::Support::Differ#diff outputs unified diff message of two hashes with encoding different to key encoding Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-:a => \"a\",\n+\"한글\" => \"한글2\",\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-:a => \"a\",\n+\"한글\" => \"한글2\",\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 58, 97, 32, 61, 62, 32, 34, 97, 34, 44, 10, 43, 34, 237, 149, 156, 234, 184, 128, 34, 32, 61, 62, 32, 34, 237, 149, 156, 234, 184, 128, 50, 34, 44, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 58, 97, 32, 61, 62, 32, 34, 97, 34, 44, 10, 43, 34, 237, 149, 156, 234, 184, 128, 34, 32, 61, 62, 32, 34, 237, 149, 156, 234, 184, 128, 50, 34, 44, 10] # ./spec/rspec/support/differ_spec.rb:282:in `block (3 levels) in <module:Support>' 3) RSpec::Support::Differ#diff outputs a unified diff message for an array which flatten recurses Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-[]\n+[<BrokenObject>]\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-[]\n+[<BrokenObject>]\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 91, 93, 10, 43, 91, 60, 66, 114, 111, 107, 101, 110, 79, 98, 106, 101, 99, 116, 62, 93, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 91, 93, 10, 43, 91, 60, 66, 114, 111, 107, 101, 110, 79, 98, 106, 101, 99, 116, 62, 93, 10] # ./spec/rspec/support/differ_spec.rb:209:in `block (3 levels) in <module:Support>' 4) RSpec::Support::Differ#diff handles differently encoded strings that are compatible Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-abc\n+강인철\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-abc\n+강인철\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 97, 98, 99, 10, 43, 234, 176, 149, 236, 157, 184, 236, 178, 160, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 97, 98, 99, 10, 43, 234, 176, 149, 236, 157, 184, 236, 178, 160, 10] # ./spec/rspec/support/differ_spec.rb:111:in `block (3 levels) in <module:Support>' 5) RSpec::Support::Differ#diff outputs unified diff message of strings in arrays Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-a\\r\\nc\n+a\\r\\nb\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-a\\r\\nc\n+a\\r\\nb\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 97, 92, 114, 92, 110, 99, 10, 43, 97, 92, 114, 92, 110, 98, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 97, 92, 114, 92, 110, 99, 10, 43, 97, 92, 114, 92, 110, 98, 10] # ./spec/rspec/support/differ_spec.rb:220:in `block (3 levels) in <module:Support>' 6) RSpec::Support::Differ#diff uses the default external encoding when the two strings have incompatible encodings Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-Tu avec carte {count} item has\n+Tu avec carté {count} itém has\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-Tu avec carte {count} item has\n+Tu avec carté {count} itém has\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 84, 117, 32, 97, 118, 101, 99, 32, 99, 97, 114, 116, 101, 32, 123, 99, 111, 117, 110, 116, 125, 32, 105, 116, 101, 109, 32, 104, 97, 115, 10, 43, 84, 117, 32, 97, 118, 101, 99, 32, 99, 97, 114, 116, 195, 169, 32, 123, 99, 111, 117, 110, 116, 125, 32, 105, 116, 195, 169, 109, 32, 104, 97, 115, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 84, 117, 32, 97, 118, 101, 99, 32, 99, 97, 114, 116, 101, 32, 123, 99, 111, 117, 110, 116, 125, 32, 105, 116, 101, 109, 32, 104, 97, 115, 10, 43, 84, 117, 32, 97, 118, 101, 99, 32, 99, 97, 114, 116, 195, 169, 32, 123, 99, 111, 117, 110, 116, 125, 32, 105, 116, 195, 169, 109, 32, 104, 97, 115, 10] # ./spec/rspec/support/differ_spec.rb:120:in `block (3 levels) in <module:Support>' 7) RSpec::Support::Differ#diff includes object delegation information in the diff output Failure/Error: expect(diff).to eq(expected_diff) expected: "\n@@ -1,2 +1,2 @@\n-[#<SimpleDelegator(#<Object:0x0000564e160b37f8>)>]\n+[#<Object:0x0000564e160b37f8>]\n" got: "\n@@ -1 +1 @@\n-[#<SimpleDelegator(#<Object:0x0000564e160b37f8>)>]\n+[#<Object:0x0000564e160b37f8>]\n" (compared using ==) Diff: @@ -1,5 +1,5 @@ -@@ -1,2 +1,2 @@ +@@ -1 +1 @@ -[#<SimpleDelegator(#<Object:0x0000564e160b37f8>)>] +[#<Object:0x0000564e160b37f8>] # ./spec/rspec/support/differ_spec.rb:444:in `block (4 levels) in <module:Support>' # ./spec/rspec/support/differ_spec.rb:429:in `block (3 levels) in <module:Support>' 8) RSpec::Support::Differ#diff outputs unified diff message of two hashes with differing encoding Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-\"a\" => \"a\",\n+\"ö\" => \"ö\",\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-\"a\" => \"a\",\n+\"ö\" => \"ö\",\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 34, 97, 34, 32, 61, 62, 32, 34, 97, 34, 44, 10, 43, 34, 195, 182, 34, 32, 61, 62, 32, 34, 195, 182, 34, 44, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 34, 97, 34, 32, 61, 62, 32, 34, 97, 34, 44, 10, 43, 34, 195, 182, 34, 32, 61, 62, 32, 34, 195, 182, 34, 44, 10] # ./spec/rspec/support/differ_spec.rb:271:in `block (3 levels) in <module:Support>' 9) RSpec::Support::Differ#diff copes with encoded strings Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-Tu avec carte {count} item has\n+Tu avec cart\u00E9 {count} it\u00E9m has\n" (UTF-16LE) to be identical to "\n@@ -1,2 +1,2 @@\n-Tu avec carte {count} item has\n+Tu avec cart\u00E9 {count} it\u00E9m has\n" (UTF-16LE) The exact bytes are printed below for more detail: [10, 0, 64, 0, 64, 0, 32, 0, 45, 0, 49, 0, 32, 0, 43, 0, 49, 0, 32, 0, 64, 0, 64, 0, 10, 0, 45, 0, 84, 0, 117, 0, 32, 0, 97, 0, 118, 0, 101, 0, 99, 0, 32, 0, 99, 0, 97, 0, 114, 0, 116, 0, 101, 0, 32, 0, 123, 0, 99, 0, 111, 0, 117, 0, 110, 0, 116, 0, 125, 0, 32, 0, 105, 0, 116, 0, 101, 0, 109, 0, 32, 0, 104, 0, 97, 0, 115, 0, 10, 0, 43, 0, 84, 0, 117, 0, 32, 0, 97, 0, 118, 0, 101, 0, 99, 0, 32, 0, 99, 0, 97, 0, 114, 0, 116, 0, 233, 0, 32, 0, 123, 0, 99, 0, 111, 0, 117, 0, 110, 0, 116, 0, 125, 0, 32, 0, 105, 0, 116, 0, 233, 0, 109, 0, 32, 0, 104, 0, 97, 0, 115, 0, 10, 0] [10, 0, 64, 0, 64, 0, 32, 0, 45, 0, 49, 0, 44, 0, 50, 0, 32, 0, 43, 0, 49, 0, 44, 0, 50, 0, 32, 0, 64, 0, 64, 0, 10, 0, 45, 0, 84, 0, 117, 0, 32, 0, 97, 0, 118, 0, 101, 0, 99, 0, 32, 0, 99, 0, 97, 0, 114, 0, 116, 0, 101, 0, 32, 0, 123, 0, 99, 0, 111, 0, 117, 0, 110, 0, 116, 0, 125, 0, 32, 0, 105, 0, 116, 0, 101, 0, 109, 0, 32, 0, 104, 0, 97, 0, 115, 0, 10, 0, 43, 0, 84, 0, 117, 0, 32, 0, 97, 0, 118, 0, 101, 0, 99, 0, 32, 0, 99, 0, 97, 0, 114, 0, 116, 0, 233, 0, 32, 0, 123, 0, 99, 0, 111, 0, 117, 0, 110, 0, 116, 0, 125, 0, 32, 0, 105, 0, 116, 0, 233, 0, 109, 0, 32, 0, 104, 0, 97, 0, 115, 0, 10, 0] # ./spec/rspec/support/differ_spec.rb:103:in `block (3 levels) in <module:Support>' 10) RSpec::Support::Differ#diff with :object_preparer option set uses the output of object_preparer for diffing Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-\"oop\"\n+\"oof\"\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-\"oop\"\n+\"oof\"\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 34, 111, 111, 112, 34, 10, 43, 34, 111, 111, 102, 34, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 34, 111, 111, 112, 34, 10, 43, 34, 111, 111, 102, 34, 10] # ./spec/rspec/support/differ_spec.rb:466:in `block (4 levels) in <module:Support>' 11) RSpec::Support::Differ#diff with :color option set outputs colored diffs Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\e[0m\n\e[0m\e[34m@@ -1 +1 @@\n\e[0m\e[31m-foo bang baz\n\e[0m\e[32m+foo bar baz\n\e[0m" (UTF-8) to be identical to "\e[0m\n\e[0m\e[34m@@ -1,2 +1,2 @@\n\e[0m\e[31m-foo bang baz\n\e[0m\e[32m+foo bar baz\n\e[0m" (UTF-8) The exact bytes are printed below for more detail: [27, 91, 48, 109, 10, 27, 91, 48, 109, 27, 91, 51, 52, 109, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 27, 91, 48, 109, 27, 91, 51, 49, 109, 45, 102, 111, 111, 32, 98, 97, 110, 103, 32, 98, 97, 122, 10, 27, 91, 48, 109, 27, 91, 51, 50, 109, 43, 102, 111, 111, 32, 98, 97, 114, 32, 98, 97, 122, 10, 27, 91, 48, 109] [27, 91, 48, 109, 10, 27, 91, 48, 109, 27, 91, 51, 52, 109, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 27, 91, 48, 109, 27, 91, 51, 49, 109, 45, 102, 111, 111, 32, 98, 97, 110, 103, 32, 98, 97, 122, 10, 27, 91, 48, 109, 27, 91, 51, 50, 109, 43, 102, 111, 111, 32, 98, 97, 114, 32, 98, 97, 122, 10, 27, 91, 48, 109] # ./spec/rspec/support/differ_spec.rb:479:in `block (4 levels) in <module:Support>' 12) RSpec::Support::Differ#diff when special-case objects are inside hashes outputs unified diff message of two hashes with hashes inside them Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-\"b\" => {\"key_1\"=>1969-12-31 19:01:40.000101000 +0000},\n+\"c\" => {\"key_1\"=>1969-12-31 19:01:40.000101000 +0000},\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-\"b\" => {\"key_1\"=>1969-12-31 19:01:40.000101000 +0000},\n+\"c\" => {\"key_1\"=>1969-12-31 19:01:40.000101000 +0000},\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 34, 98, 34, 32, 61, 62, 32, 123, 34, 107, 101, 121, 95, 49, 34, 61, 62, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 125, 44, 10, 43, 34, 99, 34, 32, 61, 62, 32, 123, 34, 107, 101, 121, 95, 49, 34, 61, 62, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 125, 44, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 34, 98, 34, 32, 61, 62, 32, 123, 34, 107, 101, 121, 95, 49, 34, 61, 62, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 125, 44, 10, 43, 34, 99, 34, 32, 61, 62, 32, 123, 34, 107, 101, 121, 95, 49, 34, 61, 62, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 125, 44, 10] # ./spec/rspec/support/differ_spec.rb:321:in `block (4 levels) in <module:Support>' 13) RSpec::Support::Differ#diff when special-case objects are inside hashes outputs unified diff message of two hashes with Time object keys Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-1969-12-31 19:01:40.000101000 +0000 => \"b\",\n+1969-12-31 19:01:40.000101000 +0000 => \"c\",\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-1969-12-31 19:01:40.000101000 +0000 => \"b\",\n+1969-12-31 19:01:40.000101000 +0000 => \"c\",\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 32, 61, 62, 32, 34, 98, 34, 44, 10, 43, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 32, 61, 62, 32, 34, 99, 34, 44, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 32, 61, 62, 32, 34, 98, 34, 44, 10, 43, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 32, 61, 62, 32, 34, 99, 34, 44, 10] # ./spec/rspec/support/differ_spec.rb:308:in `block (4 levels) in <module:Support>' 14) RSpec::Support::Differ#diff when special-case objects are inside arrays outputs unified diff message of two arrays with Time object keys Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-[1969-12-31 19:01:40.000101000 +0000, \"b\"]\n+[1969-12-31 19:01:40.000101000 +0000, \"c\"]\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-[1969-12-31 19:01:40.000101000 +0000, \"b\"]\n+[1969-12-31 19:01:40.000101000 +0000, \"c\"]\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 91, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 44, 32, 34, 98, 34, 93, 10, 43, 91, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 44, 32, 34, 99, 34, 93, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 91, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 44, 32, 34, 98, 34, 93, 10, 43, 91, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 44, 32, 34, 99, 34, 93, 10] # ./spec/rspec/support/differ_spec.rb:337:in `block (4 levels) in <module:Support>' 15) RSpec::Support::Differ#diff when special-case objects are inside arrays outputs unified diff message of two arrays with hashes inside them Failure/Error: expect(diff).to be_diffed_as(expected_diff) expected "\n@@ -1 +1 @@\n-[{\"b\"=>1969-12-31 19:01:40.000101000 +0000}, \"c\"]\n+[{\"a\"=>1969-12-31 19:01:40.000101000 +0000}, \"c\"]\n" (UTF-8) to be identical to "\n@@ -1,2 +1,2 @@\n-[{\"b\"=>1969-12-31 19:01:40.000101000 +0000}, \"c\"]\n+[{\"a\"=>1969-12-31 19:01:40.000101000 +0000}, \"c\"]\n" (UTF-8) The exact bytes are printed below for more detail: [10, 64, 64, 32, 45, 49, 32, 43, 49, 32, 64, 64, 10, 45, 91, 123, 34, 98, 34, 61, 62, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 125, 44, 32, 34, 99, 34, 93, 10, 43, 91, 123, 34, 97, 34, 61, 62, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 125, 44, 32, 34, 99, 34, 93, 10] [10, 64, 64, 32, 45, 49, 44, 50, 32, 43, 49, 44, 50, 32, 64, 64, 10, 45, 91, 123, 34, 98, 34, 61, 62, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 125, 44, 32, 34, 99, 34, 93, 10, 43, 91, 123, 34, 97, 34, 61, 62, 49, 57, 54, 57, 45, 49, 50, 45, 51, 49, 32, 49, 57, 58, 48, 49, 58, 52, 48, 46, 48, 48, 48, 49, 48, 49, 48, 48, 48, 32, 43, 48, 48, 48, 48, 125, 44, 32, 34, 99, 34, 93, 10] # ./spec/rspec/support/differ_spec.rb:350:in `block (4 levels) in <module:Support>' Finished in 0.7561 seconds (files took 0.22958 seconds to load) 524 examples, 15 failures, 1 pending Failed examples: rspec ./spec/rspec/support/differ_spec.rb:285 # RSpec::Support::Differ#diff outputs unified diff message of two hashes with object keys rspec ./spec/rspec/support/differ_spec.rb:274 # RSpec::Support::Differ#diff outputs unified diff message of two hashes with encoding different to key encoding rspec ./spec/rspec/support/differ_spec.rb:191 # RSpec::Support::Differ#diff outputs a unified diff message for an array which flatten recurses rspec ./spec/rspec/support/differ_spec.rb:106 # RSpec::Support::Differ#diff handles differently encoded strings that are compatible rspec ./spec/rspec/support/differ_spec.rb:212 # RSpec::Support::Differ#diff outputs unified diff message of strings in arrays rspec ./spec/rspec/support/differ_spec.rb:114 # RSpec::Support::Differ#diff uses the default external encoding when the two strings have incompatible encodings rspec ./spec/rspec/support/differ_spec.rb:428 # RSpec::Support::Differ#diff includes object delegation information in the diff output rspec ./spec/rspec/support/differ_spec.rb:263 # RSpec::Support::Differ#diff outputs unified diff message of two hashes with differing encoding rspec ./spec/rspec/support/differ_spec.rb:92 # RSpec::Support::Differ#diff copes with encoded strings rspec ./spec/rspec/support/differ_spec.rb:453 # RSpec::Support::Differ#diff with :object_preparer option set uses the output of object_preparer for diffing rspec ./spec/rspec/support/differ_spec.rb:473 # RSpec::Support::Differ#diff with :color option set outputs colored diffs rspec ./spec/rspec/support/differ_spec.rb:311 # RSpec::Support::Differ#diff when special-case objects are inside hashes outputs unified diff message of two hashes with hashes inside them rspec ./spec/rspec/support/differ_spec.rb:300 # RSpec::Support::Differ#diff when special-case objects are inside hashes outputs unified diff message of two hashes with Time object keys rspec ./spec/rspec/support/differ_spec.rb:329 # RSpec::Support::Differ#diff when special-case objects are inside arrays outputs unified diff message of two arrays with Time object keys rspec ./spec/rspec/support/differ_spec.rb:340 # RSpec::Support::Differ#diff when special-case objects are inside arrays outputs unified diff message of two arrays with hashes inside them Randomized with seed 10545 mv lib.off lib cd - Failed: rspec-expectations, rspec-mocks, rspec-support autopkgtest [15:36:52]: test gem2deb-test-runner: -----------------------]
signature.asc
Description: OpenPGP digital signature