From 4d1faefa10518ada452d5a85f4e43a8bfda847cc Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Mon, 31 Oct 2022 11:25:43 +0900 Subject: Merge reline-0.3.1 --- test/reline/test_key_actor_emacs.rb | 22 +++++++++++++++++ test/reline/test_reline.rb | 2 +- test/reline/test_terminfo.rb | 30 ++++++++++++++++++++---- test/reline/yamatanooroti/termination_checker.rb | 2 +- test/reline/yamatanooroti/test_rendering.rb | 1 + 5 files changed, 51 insertions(+), 6 deletions(-) (limited to 'test') diff --git a/test/reline/test_key_actor_emacs.rb b/test/reline/test_key_actor_emacs.rb index a5fdf247c8..40b26e5058 100644 --- a/test/reline/test_key_actor_emacs.rb +++ b/test/reline/test_key_actor_emacs.rb @@ -2329,4 +2329,26 @@ class Reline::KeyActor::Emacs::Test < Reline::TestCase assert_cursor(1) assert_cursor_max(1) end + + def test_unix_line_discard + input_keys("\C-u", false) + assert_byte_pointer_size('') + assert_cursor(0) + assert_cursor_max(0) + assert_line('') + input_keys('abc') + assert_byte_pointer_size('abc') + assert_cursor(3) + assert_cursor_max(3) + input_keys("\C-b\C-u", false) + assert_byte_pointer_size('') + assert_cursor(0) + assert_cursor_max(1) + assert_line('c') + input_keys("\C-f\C-u", false) + assert_byte_pointer_size('') + assert_cursor(0) + assert_cursor_max(0) + assert_line('') + end end diff --git a/test/reline/test_reline.rb b/test/reline/test_reline.rb index 03e663bcdd..662f91e589 100644 --- a/test/reline/test_reline.rb +++ b/test/reline/test_reline.rb @@ -137,7 +137,7 @@ class Reline::Test < Reline::TestCase end def test_completion_proc - skip unless Reline.completion_proc == nil + omit unless Reline.completion_proc == nil # Another test can set Reline.completion_proc # assert_equal(nil, Reline.completion_proc) diff --git a/test/reline/test_terminfo.rb b/test/reline/test_terminfo.rb index f1bf197931..8aa1f56c71 100644 --- a/test/reline/test_terminfo.rb +++ b/test/reline/test_terminfo.rb @@ -9,24 +9,46 @@ class Reline::Terminfo::Test < Reline::TestCase def test_tigetstr assert Reline::Terminfo.tigetstr('khome') rescue Reline::Terminfo::TerminfoError => e - skip e.message + omit e.message end def test_tiparm assert Reline::Terminfo.tigetstr('khome').tiparm rescue Reline::Terminfo::TerminfoError => e - skip e.message + omit e.message end def test_tigetstr_with_param assert Reline::Terminfo.tigetstr('cuu').include?('%p1%d') rescue Reline::Terminfo::TerminfoError => e - skip e.message + omit e.message end def test_tiparm_with_param assert Reline::Terminfo.tigetstr('cuu').tiparm(4649).include?('4649') rescue Reline::Terminfo::TerminfoError => e - skip e.message + omit e.message + end + + def test_tigetflag + assert_instance_of Integer, Reline::Terminfo.tigetflag('xenl') + rescue Reline::Terminfo::TerminfoError => e + omit e.message + end + + def test_tigetflag_with_error + assert_raise(Reline::Terminfo::TerminfoError) { Reline::Terminfo.tigetflag('cuu') } + assert_raise(Reline::Terminfo::TerminfoError) { Reline::Terminfo.tigetflag('unknown') } + end + + def test_tigetnum + assert_instance_of Integer, Reline::Terminfo.tigetnum('colors') + rescue Reline::Terminfo::TerminfoError => e + omit e.message + end + + def test_tigetnum_with_error + assert_raise(Reline::Terminfo::TerminfoError) { Reline::Terminfo.tigetnum('cuu') } + assert_raise(Reline::Terminfo::TerminfoError) { Reline::Terminfo.tigetnum('unknown') } end end if Reline::Terminfo.enabled? diff --git a/test/reline/yamatanooroti/termination_checker.rb b/test/reline/yamatanooroti/termination_checker.rb index 9c2c3ae740..24fb24c4b1 100644 --- a/test/reline/yamatanooroti/termination_checker.rb +++ b/test/reline/yamatanooroti/termination_checker.rb @@ -4,7 +4,7 @@ require 'irb/ruby-lex' class TerminationChecker < RubyLex def terminated?(code) code.gsub!(/\n*$/, '').concat("\n") - @tokens = Ripper.lex(code) + @tokens = self.class.ripper_lex_without_warning(code) continue = process_continue code_block_open = check_code_block(code) indent = process_nesting_level diff --git a/test/reline/yamatanooroti/test_rendering.rb b/test/reline/yamatanooroti/test_rendering.rb index 43c24f6412..849fb9faad 100644 --- a/test/reline/yamatanooroti/test_rendering.rb +++ b/test/reline/yamatanooroti/test_rendering.rb @@ -121,6 +121,7 @@ begin end def test_finish_autowrapped_line_in_the_middle_of_multilines + omit if RUBY_VERSION < '2.7' start_terminal(30, 16, %W{ruby -I#{@pwd}/lib #{@pwd}/test/reline/yamatanooroti/multiline_repl}, startup_message: 'Multiline REPL.') write("<<~EOM\n ABCDEFG\nEOM\n") close -- cgit v1.2.3