neovim / node-client

Nvim Node.js client and plugin host
https://neovim.io/node-client/
MIT License
464 stars 49 forks source link

unreliable test: `emits "disconnect" after quit` #314

Open justinmk opened 4 months ago

justinmk commented 4 months ago
FAIL src/attach/attach.test.ts (5.62 s)
  ● Nvim API › emits "disconnect" after quit

    thrown: "Exceeded timeout of 5000 ms for a test while waiting for `done()` to be called.
    Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."

      1[36](https://github.com/neovim/node-client/actions/runs/8328199355/job/22787637114?pr=336#step:11:37) |   });
      1[37](https://github.com/neovim/node-client/actions/runs/8328199355/job/22787637114?pr=336#step:11:38) |
    > 1[38](https://github.com/neovim/node-client/actions/runs/8328199355/job/22787637114?pr=336#step:11:39) |   it('emits "disconnect" after quit', done => {
          |   ^
      1[39](https://github.com/neovim/node-client/actions/runs/8328199355/job/22787637114?pr=336#step:11:40) |     const disconnectMock = jest.fn();
      1[40](https://github.com/neovim/node-client/actions/runs/8328199355/job/22787637114?pr=336#step:11:41) |     nvim.on('disconnect', disconnectMock);
      1[41](https://github.com/neovim/node-client/actions/runs/8328199355/job/22787637114?pr=336#step:11:42) |     nvim.quit();

      at it (src/attach/attach.test.ts:138:3)
      at Object.describe (src/attach/attach.test.ts:6:1)

A worker process has failed to exit gracefully and has been force exited. This is likely caused by tests leaking due to improper teardown. Try running with --detectOpenHandles to find leaks. Active timers can also cause this, ensure that .unref() was called on them.