// Flags: --no-warnings // The flag suppresses stderr output but the warning event will still emit 'use strict'; const common = require('../common'); const events = require('events'); const assert = require('assert'); const e = new events.EventEmitter(); e.setMaxListeners(1); process.on('warning', common.mustCall((warning) => { assert.ok(warning instanceof Error); assert.strictEqual(warning.name, 'MaxListenersExceededWarning'); assert.strictEqual(warning.emitter, e); assert.strictEqual(warning.count, 2); assert.strictEqual(warning.type, 'event-type'); assert.ok(warning.message.includes('2 event-type listeners added.')); })); e.on('event-type', () => {}); e.on('event-type', () => {}); // Trigger warning. e.on('event-type', () => {}); // Verify that warning is emitted only once.