Files
palemoon27/dom/webidl/TestInterfaceJS.webidl
T
roytam1 b4028f07d5 import changes from `dev' branch of rmottola/Arctic-Fox:
- rough apply of Bug 1154275 - Remove ise() in favor of is(); r=Ms2ger (34cf63726)
- Bug 1174954 part 1. Stop throwing DOMErrors from JS-implemented webidBug 1174954 part 1. Stop throwing DOMErrors from JS-implemented webid (ff7b25af0)
- Bug 1173593. Make it possible to throw TypeError (or, in fact, any other Error from the content compartment) from js-implemented webidl. r=bholley (328c181a6)
- Bug 1174954 part 2. Remove the special-casing of DOMError in JS-implemented webidl code. r=bholley (d8784c655)
- Bug 1174954 part 3. Remove ReportJSExceptionFromJSImplementation, since it no longer does anything interesting. r=bholley (e5e6360df)
- Bug 1170716 - Part 1: Add js shell functions to get last warning. r=jandem (391a75cfa)
- Bug 1170716 - Part 2: Report unreachable code after return statement as JSEXN_NONE. r=jandem (5396c950a)
- Bug 1170716 - Part 3: Use getLastWarning in test for warning with JSEXN_NONE. r=jandem (20453ed86)
- Bug 1173787. The column number of an exception populated via PopulateReportBlame should be 1-based. r=fitzgen (ccc3d63f6)
- Bug 1148593 - Create async stack in callback objects. r=bz, r=fitzgen (ec0802480)
- Bug 1170097 - Part 2: Add originAttributesToCookieJar. r=bholley (0358faa1c)
- Bug 1169044 - Patch 2 - Split URLSearchParams parsing logic into non-CCed URLParams. r=baku (2d228a166)
- make qcms support for AltiVec compile-time selected like in TenFourFox and make thus compilation without it work (a343e775a)
2021-04-21 09:28:07 +08:00

82 lines
3.0 KiB
Plaintext

/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/.
*/
dictionary TestInterfaceJSUnionableDictionary {
object objectMember;
any anyMember;
};
[JSImplementation="@mozilla.org/dom/test-interface-js;1",
Pref="dom.expose_test_interfaces",
Constructor(optional any anyArg, optional object objectArg, optional TestInterfaceJSDictionary dictionaryArg)]
interface TestInterfaceJS {
readonly attribute any anyArg;
readonly attribute object objectArg;
[Cached, Pure] readonly attribute TestInterfaceJSDictionary dictionaryArg;
attribute any anyAttr;
attribute object objectAttr;
[Cached, Pure] attribute TestInterfaceJSDictionary dictionaryAttr;
any pingPongAny(any arg);
object pingPongObject(object obj);
any pingPongObjectOrString((object or DOMString) objOrString);
TestInterfaceJSDictionary pingPongDictionary(optional TestInterfaceJSDictionary dict);
long pingPongDictionaryOrLong(optional (TestInterfaceJSUnionableDictionary or long) dictOrLong);
DOMString pingPongMap(MozMap<any> map);
long objectSequenceLength(sequence<object> seq);
long anySequenceLength(sequence<any> seq);
// For testing bug 968335.
DOMString getCallerPrincipal();
DOMString convertSVS(USVString svs);
(TestInterfaceJS or long) pingPongUnion((TestInterfaceJS or long) something);
(DOMString or TestInterfaceJS?) pingPongUnionContainingNull((TestInterfaceJS? or DOMString) something);
(TestInterfaceJS or long)? pingPongNullableUnion((TestInterfaceJS or long)? something);
(Location or TestInterfaceJS) returnBadUnion();
[Cached, Pure]
readonly attribute short cachedAttr;
void setCachedAttr(short n);
void clearCachedAttrCache();
// Test for sequence overloading and union behavior
void testSequenceOverload(sequence<DOMString> arg);
void testSequenceOverload(DOMString arg);
void testSequenceUnion((sequence<DOMString> or DOMString) arg);
// Tests for exception-throwing behavior
[Throws]
void testThrowError();
[Throws]
void testThrowDOMException();
[Throws]
void testThrowTypeError();
[Throws]
void testThrowCallbackError(Function callback);
[Throws]
void testThrowXraySelfHosted();
[Throws]
void testThrowSelfHosted();
// Tests for promise-rejection behavior
Promise<void> testPromiseWithThrowingChromePromiseInit();
Promise<void> testPromiseWithThrowingContentPromiseInit(PromiseInit func);
Promise<void> testPromiseWithDOMExceptionThrowingPromiseInit();
Promise<void> testPromiseWithThrowingChromeThenFunction();
Promise<void> testPromiseWithThrowingContentThenFunction(AnyCallback func);
Promise<void> testPromiseWithDOMExceptionThrowingThenFunction();
Promise<void> testPromiseWithThrowingChromeThenable();
Promise<void> testPromiseWithThrowingContentThenable(object thenable);
Promise<void> testPromiseWithDOMExceptionThrowingThenable();
};