diff options
Diffstat (limited to 'js/xpconnect/tests/idl')
-rw-r--r-- | js/xpconnect/tests/idl/xpctest_utils.idl | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/js/xpconnect/tests/idl/xpctest_utils.idl b/js/xpconnect/tests/idl/xpctest_utils.idl index db135fcbe1..3379a5253c 100644 --- a/js/xpconnect/tests/idl/xpctest_utils.idl +++ b/js/xpconnect/tests/idl/xpctest_utils.idl @@ -18,25 +18,29 @@ interface nsIXPCTestUtils : nsISupports { nsIXPCTestFunctionInterface doubleWrapFunction(in nsIXPCTestFunctionInterface f); }; -/* - * Test that non-[scriptable] interfaces and [noscript] members are not - * generated for TypeScript bindings. +/** + * TypeScript bindings specific tests. */ +// Typedefs with a TSNoncompat underlying type are not defined. +typedef voidPtr Noncompat; + +// Not [scriptable] interfaces are not generated. [uuid(ddf64cfb-668a-4571-a900-0fe2babb6249)] interface nsIXPCTestNotScriptable : nsISupports { // Empty. }; [scriptable, uuid(1bbfe703-c67d-4995-b061-564c8a1c39d7)] -interface nsIXPCTestNoScriptMembers : nsISupports { - [noscript] - attribute long noscriptProp; - +interface nsIXPCTestTypeScript : nsISupports { attribute long exposedProp; + void exposedMethod(in long arg); - [noscript] - void noscriptMethod(in long arg); + // Members referencing TSNoncompat typedefs are not exposed. + [noscript] attribute Noncompat noncompatProp; + [noscript] void noncompatMethod(in Noncompat arg); - void exposedMethod(in long arg); + // [noscript] attributes and methods are not exposed. + [noscript] attribute long noscriptProp; + [noscript] void noscriptMethod(in long arg); }; |