From e6fa7c35445a60598dbe816b46a41e41ed6898d8 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Sun, 6 Oct 2024 01:47:49 +0900 Subject: [PATCH] [ruby/reline] Hash#inspect style has changed in ruby 3.4 [[Bug #20433]](https://bugs.ruby-lang.org/issues/20433) https://github.com/ruby/reline/commit/ca457ffb70 --- test/reline/yamatanooroti/test_rendering.rb | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/test/reline/yamatanooroti/test_rendering.rb b/test/reline/yamatanooroti/test_rendering.rb index 6503ea325b..a9523991b7 100644 --- a/test/reline/yamatanooroti/test_rendering.rb +++ b/test/reline/yamatanooroti/test_rendering.rb @@ -115,14 +115,13 @@ begin def test_finish_autowrapped_line start_terminal(10, 40, %W{ruby -I#{@pwd}/lib #{@pwd}/test/reline/yamatanooroti/multiline_repl}, startup_message: 'Multiline REPL.') write("[{'user'=>{'email'=>'a@a', 'id'=>'ABC'}, 'version'=>4, 'status'=>'succeeded'}]\n") + expected = [{'user'=>{'email'=>'a@a', 'id'=>'ABC'}, 'version'=>4, 'status'=>'succeeded'}].inspect assert_screen(<<~EOC) Multiline REPL. prompt> [{'user'=>{'email'=>'a@a', 'id'= >'ABC'}, 'version'=>4, 'status'=>'succee ded'}] - => [{"user"=>{"email"=>"a@a", "id"=>"ABC - "}, "version"=>4, "status"=>"succeeded"} - ] + #{fold_multiline("=> " + expected, 40)} prompt> EOC close @@ -132,16 +131,14 @@ begin start_terminal(20, 30, %W{ruby -I#{@pwd}/lib #{@pwd}/test/reline/yamatanooroti/multiline_repl}, startup_message: 'Multiline REPL.') write("[{'user'=>{'email'=>'abcdef@abcdef', 'id'=>'ABC'}, 'version'=>4, 'status'=>'succeeded'}]#{"\C-b"*7}") write("\n") + expected = [{'user'=>{'email'=>'abcdef@abcdef', 'id'=>'ABC'}, 'version'=>4, 'status'=>'succeeded'}].inspect assert_screen(<<~EOC) Multiline REPL. prompt> [{'user'=>{'email'=>'a bcdef@abcdef', 'id'=>'ABC'}, ' version'=>4, 'status'=>'succee ded'}] - => [{"user"=>{"email"=>"abcdef - @abcdef", "id"=>"ABC"}, "versi - on"=>4, "status"=>"succeeded"} - ] + #{fold_multiline("=> " + expected, 30)} prompt> EOC close @@ -1824,6 +1821,10 @@ begin f.write content end end + + def fold_multiline(str, width) + str.scan(/.{1,#{width}}/).each(&:rstrip!).join("\n") + end end rescue LoadError, NameError # On Ruby repository, this test suit doesn't run because Ruby repo doesn't