diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-08-14 22:01:16 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-08-14 22:01:16 +0200 |
commit | c08706135d006453784f85d211c76e27b4f2a6d0 (patch) | |
tree | fad6791755645952d62fe533b74b428ac2c0903a | |
parent | 51c23687a9298c27d41ad9780b032f434e1e1646 (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.vim | 31 | ||||
-rw-r--r-- | src/version.c | 2 |
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, |