summaryrefslogtreecommitdiff
path: root/includes/external/matrix/node_modules/events/tests/prepend.js
diff options
context:
space:
mode:
Diffstat (limited to 'includes/external/matrix/node_modules/events/tests/prepend.js')
-rw-r--r--includes/external/matrix/node_modules/events/tests/prepend.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/includes/external/matrix/node_modules/events/tests/prepend.js b/includes/external/matrix/node_modules/events/tests/prepend.js
new file mode 100644
index 0000000..79afde0
--- /dev/null
+++ b/includes/external/matrix/node_modules/events/tests/prepend.js
@@ -0,0 +1,31 @@
+'use strict';
+
+var common = require('./common');
+var EventEmitter = require('../');
+var assert = require('assert');
+
+var myEE = new EventEmitter();
+var m = 0;
+// This one comes last.
+myEE.on('foo', common.mustCall(function () {
+ assert.strictEqual(m, 2);
+}));
+
+// This one comes second.
+myEE.prependListener('foo', common.mustCall(function () {
+ assert.strictEqual(m++, 1);
+}));
+
+// This one comes first.
+myEE.prependOnceListener('foo',
+ common.mustCall(function () {
+ assert.strictEqual(m++, 0);
+ }));
+
+myEE.emit('foo');
+
+// Verify that the listener must be a function
+assert.throws(function () {
+ var ee = new EventEmitter();
+ ee.prependOnceListener('foo', null);
+}, 'TypeError: The "listener" argument must be of type Function. Received type object');