/* * This file is meant to provide common infrastructure for several consumers. * The consumer is expected to define the following things: * * 1) A verifyPromiseGlobal function which does whatever test the consumer * wants. This function is passed a promise and the global whose * TestFunctions was used to get the promise. * 2) A expectedExceptionGlobal function which is handed the global whose * TestFunctions was used to trigger the exception and should return the * global the exception is expected to live in. * 3) A subframe (frames[0]) which can be used as a second global for creating * promises.
*/
/* global verifyPromiseGlobal, expectedExceptionGlobal */
var label = "parent";
function testThrownException(global) { var p = global.TestFunctions.throwToRejectPromise();
verifyPromiseGlobal(p, global, "throwToRejectPromise return value"); return p
.then(() => {})
.catch(err => { var expected = expectedExceptionGlobal(global);
is(
SpecialPowers.unwrap(SpecialPowers.Cu.getGlobalForObject(err)),
expected, "Should have an exception object from the right global too"
);
ok(
err instanceof expected.DOMException, "Should have a DOMException here"
);
is(
Object.getPrototypeOf(err),
expected.DOMException.prototype, "Should have a DOMException from the right global"
);
is(err.name, "InvalidStateError", "Should have the right DOMException");
});
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.