" Takes a short while for the server to be active.
call WaitFor('serverlist() =~ "' . name . '"')
- call assert_match(name, serverlist())
" Wait for the server to be up and answering requests. One second is not
" always sufficient.
call WaitFor('remote_expr("' . name . '", "v:version", "", 2) != ""')
- " Clear the *-register of this vim instance.
- let @* = ''
-
- " Try to change the *-register of the server.
+ " Clear the *-register of this vim instance and wait for it to be picked up
+ " by the server.
+ let @* = 'no'
call remote_foreground(name)
+ call WaitFor('remote_expr("' . name . '", "@*", "", 1) == "no"', 3000)
+
+ " Set the * register on the server.
call remote_send(name, ":let @* = 'yes'\<CR>")
- call WaitFor('remote_expr("' . name . '", "@*", "", 1) == "yes"')
- call assert_equal('yes', remote_expr(name, "@*", "", 2))
+ call WaitFor('remote_expr("' . name . '", "@*", "", 1) == "yes"', 3000)
" Check that the *-register of this vim instance is changed as expected.
- call WaitFor('@* == "yes"')
- call assert_equal('yes', @*)
+ call WaitFor('@* == "yes"', 3000)
" Handle the large selection over 262040 byte.
let length = 262044