MIRROR: javascript for 馃悳's, a tiny runtime with big ambitions
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at master 46 lines 1.4 kB view raw
1const processEvents = []; 2 3function first() { 4 processEvents.push('first'); 5} 6 7function second() { 8 processEvents.push('second'); 9} 10 11process.removeAllListeners('codex-process-api'); 12process.on('codex-process-api', first); 13process.prependListener('codex-process-api', second); 14 15const listeners = process.listeners('codex-process-api'); 16if (!Array.isArray(listeners) || listeners.length !== 2) { 17 console.log('FAIL: process.listeners should return the registered listeners'); 18 process.exit(1); 19} 20 21if (listeners[0] !== second || listeners[1] !== first) { 22 console.log('FAIL: process.prependListener should place the listener first'); 23 process.exit(1); 24} 25 26const rawListeners = process.rawListeners('codex-process-api'); 27if (!Array.isArray(rawListeners) || rawListeners.length !== 2) { 28 console.log('FAIL: process.rawListeners should mirror process.listeners for direct listeners'); 29 process.exit(1); 30} 31 32const eventNames = process.eventNames(); 33if (!Array.isArray(eventNames) || eventNames.indexOf('codex-process-api') === -1) { 34 console.log('FAIL: process.eventNames should include active events'); 35 process.exit(1); 36} 37 38process.emit('codex-process-api'); 39 40if (processEvents.join(',') !== 'second,first') { 41 console.log('FAIL: process.emit should honor prepended listener order'); 42 process.exit(1); 43} 44 45process.removeAllListeners('codex-process-api'); 46console.log('PASS');