Bug 793151 - Change the length property of a WebIDL method to the mimimum number of arguments, instead of the maximum; r=bz

This commit is contained in:
Ms2ger 2012-12-22 09:04:17 +01:00
parent dea04ce698
commit 80914b261f
7 changed files with 8 additions and 33 deletions

View File

@ -1136,11 +1136,16 @@ class PropertyDefiner:
return arrays
# The length of a method is the maximum of the lengths of the
# The length of a method is the minimum of the lengths of the
# argument lists of all its overloads.
def overloadLength(arguments):
i = len(arguments)
while i > 0 and arguments[i - 1].optional:
i -= 1
return i
def methodLength(method):
signatures = method.signatures()
return max([len(arguments) for (retType, arguments) in signatures])
return min(overloadLength(arguments) for (retType, arguments) in signatures)
class MethodDefiner(PropertyDefiner):
"""

View File

@ -17,7 +17,6 @@ DIRS = \
failures/webapps/DOMCore/tests/submissions/Opera \
failures/webapps/WebStorage/tests/submissions/Infraware \
failures/webapps/WebStorage/tests/submissions/Ms2ger \
failures/webapps/XMLHttpRequest/tests/submissions/Ms2ger \
$(NULL)
include $(srcdir)/editing.mk

View File

@ -60,8 +60,6 @@
"Stringification of new CustomEvent(\"foo\")": "debug",
"Event interface: new CustomEvent(\"foo\") must inherit property \"timeStamp\" with the proper type (14)": true,
"Event interface: calling initEvent(DOMString,boolean,boolean) on new CustomEvent(\"foo\") with too few arguments must throw TypeError": true,
"EventTarget interface: operation addEventListener(DOMString,EventListener,boolean)": true,
"EventTarget interface: operation removeEventListener(DOMString,EventListener,boolean)": true,
"EventListener interface: existence and properties of interface object": true,
"EventListener interface: existence and properties of interface prototype object": true,
"EventListener interface: existence and properties of interface prototype object's \"constructor\" property": true,
@ -70,7 +68,6 @@
"MutationCallback interface: existence and properties of interface prototype object": true,
"MutationCallback interface: existence and properties of interface prototype object's \"constructor\" property": true,
"MutationCallback interface: operation handleEvent(MutationRecord,MutationObserver)": true,
"Node interface: operation cloneNode(boolean)": true,
"Document interface: existence and properties of interface object": true,
"Document interface constructor": true,
"Document interface: existence and properties of interface prototype object": true,

View File

@ -1,19 +0,0 @@
# THIS FILE IS AUTOGENERATED BY parseFailures.py - DO NOT EDIT
DEPTH := @DEPTH@
topsrcdir := @top_srcdir@
srcdir := @srcdir@
VPATH := @srcdir@
relativesrcdir := @relativesrcdir@
include $(DEPTH)/config/autoconf.mk
DIRS := \
$(NULL)
MOCHITEST_FILES := \
test_interfaces.html.json \
$(NULL)
include $(topsrcdir)/config/rules.mk

View File

@ -1,6 +0,0 @@
{
"XMLHttpRequest interface constructor": true,
"XMLHttpRequest interface: operation open(DOMString,DOMString,boolean,DOMString,DOMString)": true,
"XMLHttpRequest interface: operation send(union)": true,
"FormData interface constructor": true
}

View File

@ -91,7 +91,7 @@ interface EventListener {
[Constructor(MutationCallback callback)]
interface MutationObserver {
void observe(Node target, MutationObserverInit options);
void observe(Node target, optional MutationObserverInit options);
void disconnect();
};

View File

@ -763,7 +763,6 @@ if [ "$ENABLE_TESTS" ]; then
dom/imptests/failures/webapps/DOMCore/tests/submissions/Opera/Makefile
dom/imptests/failures/webapps/WebStorage/tests/submissions/Infraware/Makefile
dom/imptests/failures/webapps/WebStorage/tests/submissions/Ms2ger/Makefile
dom/imptests/failures/webapps/XMLHttpRequest/tests/submissions/Ms2ger/Makefile
dom/imptests/html/tests/submission/Mozilla/Makefile
dom/imptests/html/tests/submission/Opera/microdata/Makefile
dom/imptests/webapps/DOMCore/tests/approved/Makefile