diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2016-12-31 08:59:44 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-31 08:59:44 -0500 |
commit | c6a50ca82c9cc014416a51aa20f778292e3bf7ed (patch) | |
tree | 07bfb56f5fe88d342c7a84bc70936446b8c8c752 | |
parent | d2998a0a49957fc8b01878a0d325f310dd1c5a0c (diff) | |
download | rneovim-c6a50ca82c9cc014416a51aa20f778292e3bf7ed.tar.gz rneovim-c6a50ca82c9cc014416a51aa20f778292e3bf7ed.tar.bz2 rneovim-c6a50ca82c9cc014416a51aa20f778292e3bf7ed.zip |
test: jobclose(): Avoid indeterminism. (#5851)
stdout activity may reach the queue before `exit`; just discard it.
Observed on Travis CI, ubuntu "trusty" beta image:
[ RUN ] ...is/build/neovim/neovim/test/functional/core/job_spec.lua @ 509: jobs running tty-test program jobclose() sends SIGHUP
...is/build/neovim/neovim/test/functional/core/job_spec.lua:511: Expected objects to be the same.
Passed in:
(table) {
[1] = 'notification'
*[2] = 'stdout'
[3] = {
[1] = 0
[2] = {
[1] = '
'
[2] = '' } } }
Expected:
(table) {
[1] = 'notification'
*[2] = 'exit'
[3] = {
[1] = 0
[2] = 42 } }
stack traceback:
...is/build/neovim/neovim/test/functional/core/job_spec.lua:511: in function <...is/build/neovim/neovim/test/functional/core/job_spec.lua:509>
[ FAILED ] ...is/build/neovim/neovim/test/functional/core/job_spec.lua @ 509: jobs running tty-test program jobclose() sends SIGHUP (2.81 ms)
-rw-r--r-- | test/functional/core/job_spec.lua | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/test/functional/core/job_spec.lua b/test/functional/core/job_spec.lua index e4b6621ff9..75b50aad0a 100644 --- a/test/functional/core/job_spec.lua +++ b/test/functional/core/job_spec.lua @@ -508,7 +508,9 @@ describe('jobs', function() it('jobclose() sends SIGHUP', function() nvim('command', 'call jobclose(j)') - eq({'notification', 'exit', {0, 42}}, next_msg()) + local msg = next_msg() + msg = (msg[2] == 'stdout') and next_msg() or msg -- Skip stdout, if any. + eq({'notification', 'exit', {0, 42}}, msg) end) end) end) |