ensure-promise.js
596 Bytes
"use strict";
module.exports = function (t, a) {
var promise;
a.throws(function () {
t();
}, TypeError);
a.throws(function () {
t(null);
}, TypeError);
a.throws(function () {
t("promise");
}, TypeError);
a.throws(function () {
t({});
}, TypeError);
a.throws(function () {
t(function () {});
}, TypeError);
a.throws(function () {
t({ then: {} });
}, TypeError);
promise = { then: function () {} };
a(t(promise), promise);
promise = function () {};
promise.then = {};
a.throws(function () {
t(promise);
}, TypeError);
promise.then = function () {};
a(t(promise), promise);
};