1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-19 05:45:09 -05:00
denoland-deno/tests/node_compat/test/parallel/test-diagnostics-channel-safe-subscriber-errors.js
Yoshiya Hinosawa fb24fd37c9
test: add node compat test cases (#27134)
This PR enables node compat test cases found passing by using the tool
added in #27122

The percentage of passing test case increases from 16.16% to 30.43% by
this change.
2024-12-04 11:37:20 +09:00

36 lines
899 B
JavaScript

// 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();