mirror of
https://github.com/oven-sh/bun
synced 2026-02-09 10:28:47 +00:00
42 lines
828 B
JavaScript
42 lines
828 B
JavaScript
import { expect } from "bun:test";
|
|
|
|
let monitorCalled = false;
|
|
setTimeout(() => {
|
|
// uncaughtExceptionMonitor should be called
|
|
if (!monitorCalled) {
|
|
process.exit(1);
|
|
}
|
|
// timeouts should be processed
|
|
process.exit(42);
|
|
}, 100);
|
|
|
|
const hello = Math.random().toFixed(1);
|
|
|
|
process.on("uncaughtExceptionMonitor", err => {
|
|
// Ensure this is not zero or another invalid argument
|
|
Object.getOwnPropertyNames(err);
|
|
String(err);
|
|
|
|
monitorCalled = true;
|
|
if (!err) {
|
|
process.exit(1);
|
|
}
|
|
});
|
|
|
|
process.on("uncaughtException", err => {
|
|
// Ensure this is not zero or another invalid argument
|
|
Object.getOwnPropertyNames(err);
|
|
String(err);
|
|
|
|
// there should be an error
|
|
if (!err) {
|
|
process.exit(1);
|
|
}
|
|
|
|
expect(Bun.inspect(err)).toContain(hello);
|
|
});
|
|
|
|
setTimeout(() => {
|
|
throw new Error(hello);
|
|
}, 1);
|