summaryrefslogtreecommitdiff
path: root/test/reline/test_key_actor_emacs.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/reline/test_key_actor_emacs.rb')
-rw-r--r--test/reline/test_key_actor_emacs.rb76
1 files changed, 76 insertions, 0 deletions
diff --git a/test/reline/test_key_actor_emacs.rb b/test/reline/test_key_actor_emacs.rb
index 4194659631..04edf6b31f 100644
--- a/test/reline/test_key_actor_emacs.rb
+++ b/test/reline/test_key_actor_emacs.rb
@@ -903,6 +903,82 @@ class Reline::KeyActor::Emacs::Test < Reline::TestCase
assert_cursor_max(18)
end
+ def test_ed_transpose_words_with_one_word
+ input_keys('abc ')
+ assert_line('abc ')
+ assert_byte_pointer_size('abc ')
+ assert_cursor(5)
+ assert_cursor_max(5)
+ input_keys("\M-t", false)
+ assert_line('abc ')
+ assert_byte_pointer_size('abc ')
+ assert_cursor(5)
+ assert_cursor_max(5)
+ input_keys("\C-b", false)
+ assert_line('abc ')
+ assert_byte_pointer_size('abc ')
+ assert_cursor(4)
+ assert_cursor_max(5)
+ input_keys("\M-t", false)
+ assert_line('abc ')
+ assert_byte_pointer_size('abc ')
+ assert_cursor(4)
+ assert_cursor_max(5)
+ input_keys("\C-b" * 2, false)
+ assert_line('abc ')
+ assert_byte_pointer_size('ab')
+ assert_cursor(2)
+ assert_cursor_max(5)
+ input_keys("\M-t", false)
+ assert_line('abc ')
+ assert_byte_pointer_size('ab')
+ assert_cursor(2)
+ assert_cursor_max(5)
+ input_keys("\M-t", false)
+ assert_line('abc ')
+ assert_byte_pointer_size('ab')
+ assert_cursor(2)
+ assert_cursor_max(5)
+ end
+
+ def test_ed_transpose_words_with_one_word_for_mbchar
+ input_keys('あいう ')
+ assert_line('あいう ')
+ assert_byte_pointer_size('あいう ')
+ assert_cursor(8)
+ assert_cursor_max(8)
+ input_keys("\M-t", false)
+ assert_line('あいう ')
+ assert_byte_pointer_size('あいう ')
+ assert_cursor(8)
+ assert_cursor_max(8)
+ input_keys("\C-b", false)
+ assert_line('あいう ')
+ assert_byte_pointer_size('あいう ')
+ assert_cursor(7)
+ assert_cursor_max(8)
+ input_keys("\M-t", false)
+ assert_line('あいう ')
+ assert_byte_pointer_size('あいう ')
+ assert_cursor(7)
+ assert_cursor_max(8)
+ input_keys("\C-b" * 2, false)
+ assert_line('あいう ')
+ assert_byte_pointer_size('あい')
+ assert_cursor(4)
+ assert_cursor_max(8)
+ input_keys("\M-t", false)
+ assert_line('あいう ')
+ assert_byte_pointer_size('あい')
+ assert_cursor(4)
+ assert_cursor_max(8)
+ input_keys("\M-t", false)
+ assert_line('あいう ')
+ assert_byte_pointer_size('あい')
+ assert_cursor(4)
+ assert_cursor_max(8)
+ end
+
def test_ed_digit
input_keys('0123')
assert_byte_pointer_size('0123')