Commit Graph
4 Commits
Author SHA1 Message Date
Christopher Willis-Ford d8fc81a8b5 test(execute): try to make 'execute' test more reliable 2022-06-07 14:55:38 -07:00
Christopher Willis-Ford 840ffb5df0 test: don't use process.exit to end tests
Newer versions of `tap` run more asynchronously, so sometimes using `process.nextTick(process.exit)`
to end a test would prevent the test from completing correctly. Removing all instances of
`process.nextTick(process.exit)` put tests into three categories:
* the test still worked correctly -- no fixup needed.
* the test would hang because the VM's `_steppingInterval` was keeping
  Node alive. These tests call a new `quit()` method which ends the
  stepping interval.
* the `load-extensions` test needed special attention because the "Video
  Sensing" extension starts its own loop using `setTimeout`. I added a
  `_stopLoop()` method on the extension and directly call that from the
  test. I'm not completely happy with this solution but anything more
  general would likely require a change to the extension spec, so I'm
  leaving that as a followup task.
2022-06-07 11:44:06 -07:00
Michael "Z" Goddard 18c565794e support execute integration tests with monitor threads
Do not count monitor threads towards the "active" number of threads.
The test is complete when there are no non-monitor threads running.
2018-09-11 15:10:14 -04:00
Michael "Z" Goddard dbe548eb18 Move execute integration fixtures into test/fixtures 2018-05-02 15:54:54 -04:00