Open maniSHarma7575 opened 9 months ago
require "minitest/autorun" require "json" class DumpTest < Minitest::Test def test_dump_duplicate_key_hash assert_equal "{\"a\":5,\"c\":{\"b\":6}}", JSON.dump({ 'a' => 1, a: 5, c: { 'b' => 2, b: 6 } }) end end
Test case should pass
Run options: --seed 18012 # Running: F Failure: DumpTest#test_dump_duplicate_key_hash [nano-example.rb:7]: --- expected +++ actual @@ -1 +1 @@ -"{\"a\":5,\"c\":{\"b\":6}}" +"{\"a\":1,\"a\":5,\"c\":{\"b\":2,\"b\":6}}" bin/rails test nano-example.rb:6 Finished in 0.007499s, 133.3511 runs/s, 133.3511 assertions/s. 1 runs, 1 assertions, 1 failures, 0 errors, 0 skips
Ruby version: ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23], ruby 3.2.0, ruby 2.7.8
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
ruby 3.2.0
ruby 2.7.8
Same issue got reported in Rails ActiveSupport encode as well. Check it out here: #50481
cc: @byroot @hsbt
Steps to reproduce
Expected behaviour
Test case should pass
Actual behavior
System configuration
Ruby version:
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
,ruby 3.2.0
,ruby 2.7.8
Same issue got reported in Rails ActiveSupport encode as well. Check it out here: #50481
cc: @byroot @hsbt