# HG changeset patch # User Christian Brabandt # Date 1490043604 -3600 # Node ID 466657ab73406a1f90091e5f2a4dd1239b7c3f00 # Parent 486e00f7258249800673463e1b338b5807cf614e patch 8.0.0495: quotestar test uses timer instead of timeout commit https://github.com/vim/vim/commit/f5610da7a8a5908e747d1ae39dbed1408bbd2644 Author: Bram Moolenaar Date: Mon Mar 20 21:47:16 2017 +0100 patch 8.0.0495: quotestar test uses timer instead of timeout Problem: The quotestar test uses a timer instead of a timeout, thus it cannot be rerun like a flaky test. Solution: Remove the timer and add a timeout. (Kazunobu Kuriyama) diff --git a/src/testdir/test_quotestar.vim b/src/testdir/test_quotestar.vim --- a/src/testdir/test_quotestar.vim +++ b/src/testdir/test_quotestar.vim @@ -6,12 +6,6 @@ endif source shared.vim -let s:where = 0 -func Abort(id) - call assert_report('Test timed out at ' . s:where) - call FinishTesting() -endfunc - func Do_test_quotestar_for_macunix() if empty(exepath('pbcopy')) || empty(exepath('pbpaste')) return 'Test requires pbcopy(1) and pbpaste(1)' @@ -46,10 +40,6 @@ func Do_test_quotestar_for_x11() return 'GetVimCommand() failed' endif - " Some of these commands may hang when failing. - call timer_start(10000, 'Abort') - - let s:where = 1 let name = 'XVIMCLIPBOARD' let cmd .= ' --servername ' . name let g:job = job_start(cmd, {'stoponexit': 'kill', 'out_io': 'null'}) @@ -58,25 +48,19 @@ func Do_test_quotestar_for_x11() call assert_report('Cannot run the Vim server') return '' endif - let s:where = 2 " Takes a short while for the server to be active. call WaitFor('serverlist() =~ "' . name . '"') call assert_match(name, serverlist()) - let s:where = 3 " Clear the *-register of this vim instance. let @* = '' " Try to change the *-register of the server. call remote_foreground(name) - let s:where = 4 call remote_send(name, ":let @* = 'yes'\") - let s:where = 5 - call WaitFor('remote_expr("' . name . '", "@*") == "yes"') - let s:where = 6 - call assert_equal('yes', remote_expr(name, "@*")) - let s:where = 7 + call WaitFor('remote_expr("' . name . '", "@*", "", 1) == "yes"') + call assert_equal('yes', remote_expr(name, "@*", "", 2)) " Check that the *-register of this vim instance is changed as expected. call assert_equal('yes', @*) @@ -94,22 +78,18 @@ func Do_test_quotestar_for_x11() else call remote_send(name, ":gui -f\") endif - let s:where = 8 - sleep 500m + " Wait for the server to be up and answering requests. + call WaitFor('remote_expr("' . name . '", "v:version", "", 1) != ""') + call remote_send(name, ":let @* = 'maybe'\") - let s:where = 9 - call WaitFor('remote_expr("' . name . '", "@*") == "maybe"') - let s:where = 10 - call assert_equal('maybe', remote_expr(name, "@*")) - let s:where = 11 + call WaitFor('remote_expr("' . name . '", "@*", "", 1) == "maybe"') + call assert_equal('maybe', remote_expr(name, "@*", "", 2)) call assert_equal('maybe', @*) endif call remote_send(name, ":qa!\") - let s:where = 12 call WaitFor('job_status(g:job) == "dead"') - let s:where = 13 if job_status(g:job) != 'dead' call assert_report('Server did not exit') call job_stop(g:job, 'kill') diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -765,6 +765,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 495, +/**/ 494, /**/ 493,