patch 9.0.1129: sporadic Test_range() failure
Problem: Sporadic Test_range() failure.
Solution: Clear typeahead. Move to a separate function. (issue #22771)
diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim
index 6f109e8..99403e2 100644
--- a/src/testdir/test_functions.vim
+++ b/src/testdir/test_functions.vim
@@ -1622,6 +1622,19 @@
call assert_fails('call inputlist(test_null_list())', 'E686:')
endfunc
+func Test_range_inputlist()
+ " flush out any garbage left in the buffer
+ while getchar(0)
+ endwhile
+
+ call feedkeys(":let result = inputlist(range(10))\<CR>1\<CR>", 'x')
+ call assert_equal(1, result)
+ call feedkeys(":let result = inputlist(range(3, 10))\<CR>1\<CR>", 'x')
+ call assert_equal(1, result)
+
+ unlet result
+endfunc
+
func Test_balloon_show()
CheckFeature balloon_eval
@@ -2550,12 +2563,6 @@
call assert_equal(1, index(range(1, 5), 2))
call assert_fails("echo index([1, 2], 1, [])", 'E745:')
- " inputlist()
- call feedkeys(":let result = inputlist(range(10))\<CR>1\<CR>", 'x')
- call assert_equal(1, result)
- call feedkeys(":let result = inputlist(range(3, 10))\<CR>1\<CR>", 'x')
- call assert_equal(1, result)
-
" insert()
call assert_equal([42, 1, 2, 3, 4, 5], insert(range(1, 5), 42))
call assert_equal([42, 1, 2, 3, 4, 5], insert(range(1, 5), 42, 0))