summaryrefslogtreecommitdiff
path: root/test/reline/test_key_actor_emacs.rb
diff options
context:
space:
mode:
authoraycabta <aycabta@gmail.com>2019-12-27 16:07:30 +0900
committeraycabta <aycabta@gmail.com>2019-12-27 16:07:52 +0900
commit4db898284db1f02829abf412ae4f584220a2bcba (patch)
tree8b517e9139ececf2a7f816b82921ed4a81c6f992 /test/reline/test_key_actor_emacs.rb
parent778634f778a029476fb85463462848c0341f8e6b (diff)
Add test_completion_with_indent_and_completer_quote_characters
This is for 8a705245e55575d4d310a2e956b89a36a5931971.
Diffstat (limited to 'test/reline/test_key_actor_emacs.rb')
-rw-r--r--test/reline/test_key_actor_emacs.rb31
1 files changed, 31 insertions, 0 deletions
diff --git a/test/reline/test_key_actor_emacs.rb b/test/reline/test_key_actor_emacs.rb
index 97ff654506..120f51453e 100644
--- a/test/reline/test_key_actor_emacs.rb
+++ b/test/reline/test_key_actor_emacs.rb
@@ -1325,6 +1325,37 @@ class Reline::KeyActor::Emacs::Test < Reline::TestCase
assert_line('foo_ba')
end
+ def test_completion_with_indent_and_completer_quote_characters
+ @line_editor.completion_proc = proc { |word|
+ %w{
+ "".foo_foo
+ "".foo_bar
+ "".foo_baz
+ "".qux
+ }.map { |i|
+ i.encode(@encoding)
+ }
+ }
+ input_keys(' "".foo_')
+ assert_byte_pointer_size(' "".foo_')
+ assert_cursor(9)
+ assert_cursor_max(9)
+ assert_line(' "".foo_')
+ assert_equal(nil, @line_editor.instance_variable_get(:@menu_info))
+ input_keys("\C-i", false)
+ assert_byte_pointer_size(' "".foo_')
+ assert_cursor(9)
+ assert_cursor_max(9)
+ assert_line(' "".foo_')
+ assert_equal(nil, @line_editor.instance_variable_get(:@menu_info))
+ input_keys("\C-i", false)
+ assert_byte_pointer_size(' "".foo_')
+ assert_cursor(9)
+ assert_cursor_max(9)
+ assert_line(' "".foo_')
+ assert_equal(%w{"".foo_foo "".foo_bar "".foo_baz}, @line_editor.instance_variable_get(:@menu_info).list)
+ end
+
def test_completion_with_perfect_match
@line_editor.completion_proc = proc { |word|
%w{