summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2017-08-14 22:01:16 +0200
committerBram Moolenaar <Bram@vim.org>2017-08-14 22:01:16 +0200
commitc08706135d006453784f85d211c76e27b4f2a6d0 (patch)
treefad6791755645952d62fe533b74b428ac2c0903a
parent51c23687a9298c27d41ad9780b032f434e1e1646 (diff)
patch 8.0.0940: Test_terminal_scrape_multibyte is flakyv8.0.0940
Problem: Test_terminal_scrape_multibyte is flaky. (James McCoy) Solution: Use WaitFor() instead of term_wait().
-rw-r--r--src/testdir/test_terminal.vim31
-rw-r--r--src/version.c2
2 files changed, 16 insertions, 17 deletions
diff --git a/src/testdir/test_terminal.vim b/src/testdir/test_terminal.vim
index b311c3629e..e77be352f6 100644
--- a/src/testdir/test_terminal.vim
+++ b/src/testdir/test_terminal.vim
@@ -189,15 +189,10 @@ func Test_terminal_scrape_multibyte()
else
let cmd = "cat Xtext"
endif
- let buf = term_start(cmd)
-
- call term_wait(buf)
- if has('win32')
- " TODO: this should not be needed
- sleep 100m
- endif
+ let g:buf = term_start(cmd)
- let l = term_scrape(buf, 1)
+ call WaitFor('term_scrape(g:buf, 1)[0].chars == "l"')
+ let l = term_scrape(g:buf, 1)
call assert_true(len(l) >= 7)
call assert_equal('l', l[0].chars)
call assert_equal('é', l[1].chars)
@@ -209,11 +204,12 @@ func Test_terminal_scrape_multibyte()
call assert_equal('r', l[5].chars)
call assert_equal('s', l[6].chars)
- let g:job = term_getjob(buf)
+ let g:job = term_getjob(g:buf)
call WaitFor('job_status(g:job) == "dead"')
- call term_wait(buf)
+ call term_wait(g:buf)
- exe buf . 'bwipe'
+ exe g:buf . 'bwipe'
+ unlet g:buf
call delete('Xtext')
endfunc
@@ -409,16 +405,17 @@ func Test_terminal_env()
if !has('unix')
return
endif
- let buf = Run_shell_in_terminal({'env': {'TESTENV': 'correct'}})
+ let g:buf = Run_shell_in_terminal({'env': {'TESTENV': 'correct'}})
" Wait for the shell to display a prompt
- call WaitFor('term_getline(1) != ""')
- call term_sendkeys(buf, "echo $TESTENV\r")
- call term_wait(buf)
- call Stop_shell_in_terminal(buf)
+ call WaitFor('term_getline(g:buf, 1) != ""')
+ call term_sendkeys(g:buf, "echo $TESTENV\r")
+ call term_wait(g:buf)
+ call Stop_shell_in_terminal(g:buf)
call WaitFor('getline(2) == "correct"')
call assert_equal('correct', getline(2))
- exe buf . 'bwipe'
+ exe g:buf . 'bwipe'
+ unlet g:buf
endfunc
" must be last, we can't go back from GUI to terminal
diff --git a/src/version.c b/src/version.c
index 4978e87722..f399dc780b 100644
--- a/src/version.c
+++ b/src/version.c
@@ -770,6 +770,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 940,
+/**/
939,
/**/
938,