// deno-fmt-ignore-file // deno-lint-ignore-file // Copyright Joyent and Node contributors. All rights reserved. MIT license. // Taken from Node 20.11.1 // This file is automatically generated by `tests/node_compat/runner/setup.ts`. Do not modify this file manually. 'use strict'; const common = require('../common'); const dc = require('diagnostics_channel'); const assert = require('assert'); const input = { foo: 'bar' }; const channel = dc.channel('fail'); const error = new Error('nope'); process.on('uncaughtException', common.mustCall((err) => { assert.strictEqual(err, error); })); channel.subscribe(common.mustCall((message, name) => { throw error; })); // The failing subscriber should not stop subsequent subscribers from running channel.subscribe(common.mustCall()); // Publish should continue without throwing const fn = common.mustCall(); channel.publish(input); fn();