From aa8b832ef61ada31176d248e716074ff22bb9dee Mon Sep 17 00:00:00 2001 From: Jarred Sumner Date: Sat, 8 Jul 2023 14:26:19 -0700 Subject: Implement `process.on("beforeExit", cb)` and `process.on("exit", cb)` (#3576) * Support `process.on('beforeExit')` and `process.on('exit')` * [bun:sqlite] Always call sqlite3_close on exit * Update process.test.js --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> --- test/js/node/process/process-onBeforeExit-keepAlive.js | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 test/js/node/process/process-onBeforeExit-keepAlive.js (limited to 'test/js/node/process/process-onBeforeExit-keepAlive.js') diff --git a/test/js/node/process/process-onBeforeExit-keepAlive.js b/test/js/node/process/process-onBeforeExit-keepAlive.js new file mode 100644 index 000000000..45b20b763 --- /dev/null +++ b/test/js/node/process/process-onBeforeExit-keepAlive.js @@ -0,0 +1,18 @@ +let counter = 0; +process.on("beforeExit", () => { + if (process._exiting) { + throw new Error("process._exiting should be undefined"); + } + + console.log("beforeExit:", counter); + if (!counter++) { + setTimeout(() => {}, 1); + } +}); + +process.on("exit", () => { + if (!process._exiting) { + throw new Error("process.on('exit') called with process._exiting false"); + } + console.log("exit:", counter); +}); -- cgit v1.2.3