Reviewed by Same and Darin
authoroliver <oliver@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Sep 2007 18:42:01 +0000 (18:42 +0000)
committeroliver <oliver@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Sep 2007 18:42:01 +0000 (18:42 +0000)
        Split the wrapper test into seperate Obj-C and JS tests so the we can use the JS tests on other platforms.

        * fast/dom/resources/wrapper-identity-base.js: Added -- This provides the basic utility functions and
          variables needed for the wrapper tests
        * fast/dom/wrapper-identity-expected.txt: Added.
        * fast/dom/wrapper-identity.html: Added.
        * platform/mac/fast/dom/objc-wrapper-identity-expected.txt: Copied from platform/mac/fast/dom/wrapper-identity-expected.txt.
        * platform/mac/fast/dom/objc-wrapper-identity.html: Copied from platform/mac/fast/dom/wrapper-identity.html.
        * platform/mac/fast/dom/wrapper-identity-expected.txt: Removed.
        * platform/mac/fast/dom/wrapper-identity.html: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@25392 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/fast/dom/resources/wrapper-identity-base.js [moved from LayoutTests/platform/mac/fast/dom/wrapper-identity.html with 74% similarity]
LayoutTests/fast/dom/wrapper-identity-expected.txt [new file with mode: 0644]
LayoutTests/fast/dom/wrapper-identity.html [new file with mode: 0644]
LayoutTests/platform/mac/fast/dom/objc-wrapper-identity-expected.txt [moved from LayoutTests/platform/mac/fast/dom/wrapper-identity-expected.txt with 50% similarity]
LayoutTests/platform/mac/fast/dom/objc-wrapper-identity.html [new file with mode: 0644]

index 03692134339c2902131738e4ab09df2092137aae..261361f2922b77e86f4d2203e31accb6785af6ad 100644 (file)
@@ -1,3 +1,18 @@
+2007-09-05  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Same and Darin
+        
+        Split the wrapper test into seperate Obj-C and JS tests so the we can use the JS tests on other platforms.
+
+        * fast/dom/resources/wrapper-identity-base.js: Added -- This provides the basic utility functions and
+          variables needed for the wrapper tests
+        * fast/dom/wrapper-identity-expected.txt: Added.
+        * fast/dom/wrapper-identity.html: Added.
+        * platform/mac/fast/dom/objc-wrapper-identity-expected.txt: Copied from platform/mac/fast/dom/wrapper-identity-expected.txt.
+        * platform/mac/fast/dom/objc-wrapper-identity.html: Copied from platform/mac/fast/dom/wrapper-identity.html.
+        * platform/mac/fast/dom/wrapper-identity-expected.txt: Removed.
+        * platform/mac/fast/dom/wrapper-identity.html: Removed.
+
 2007-09-06  Sam Weinig  <sam@webkit.org>
 
         Reviewed by Adam Roben.
similarity index 74%
rename from LayoutTests/platform/mac/fast/dom/wrapper-identity.html
rename to LayoutTests/fast/dom/resources/wrapper-identity-base.js
index c14148937fbe7d65d79b2c9074c4849cdcd9a2d5..42b190e041d27d882edb8e4fcf1c921e50bb184a 100644 (file)
@@ -1,19 +1,3 @@
-<html>
-<head>
-<link rel="stylesheet" href="../../../../fast/js/resources/js-test-style.css">
-<script src="../../../../fast/js/resources/js-test-pre.js"></script>
-<style id="style" media="screen">
-.non-existent-class {
-    color: black;
-    clip: rect(0, 0, 1, 1);
-    content: counter(dummy, square);
-}
-</style>
-</head>
-<body>
-<p id="description"></p>
-<div id="console"></div>
-<script>
 // We use a static list of window properties to avoid breaking when new properties are added.
 var staticWindowProperties = [
     'CSSPrimitiveValue',
@@ -178,6 +162,7 @@ var staticWindowProperties = [
     'window'
 ];
 
+
 function isEqualJS(a, b)
 {
     return a === b;
@@ -197,33 +182,3 @@ function testObjC(s)
 {
     shouldBeTrue("var object = " + s + "; isEqualObjC(object, object);");
 }
-
-function runTest()
-{
-    description("This tests wrapper identity for both JavaScript and Objective-C.");
-    if (!window.layoutTestController)
-        debug("The ObjC tests only work in DumpRenderTree.\n");
-    
-    var tests = [ ];
-    tests.push("[ ]");
-    tests.push("{ }");
-    tests.push("new Array()");
-    tests.push("new RegExp()");
-    tests.push("new String()");
-    for (var i = 0; i < staticWindowProperties.length; i++) //>
-        tests.push("window['" + staticWindowProperties[i] + "']");
-        
-    for (var i = 0; i < tests.length; i++) //>
-        testJS(tests[i]);
-
-    for (var i = 0; i < tests.length; i++) //>
-        testObjC(tests[i]);
-        
-    // Not yet tested -- most interesting parts of the DOM, like the tests in
-    // wrapper-classes.html.
-}
-
-window.onload = runTest;
-</script>
-</body>
-</html>
diff --git a/LayoutTests/fast/dom/wrapper-identity-expected.txt b/LayoutTests/fast/dom/wrapper-identity-expected.txt
new file mode 100644 (file)
index 0000000..6897749
--- /dev/null
@@ -0,0 +1,171 @@
+This tests wrapper identity for JavaScript
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS var object = [ ]; isEqualJS(object, object); is true
+PASS var object = { }; isEqualJS(object, object); is true
+PASS var object = new Array(); isEqualJS(object, object); is true
+PASS var object = new RegExp(); isEqualJS(object, object); is true
+PASS var object = new String(); isEqualJS(object, object); is true
+PASS var object = window['CSSPrimitiveValue']; isEqualJS(object, object); is true
+PASS var object = window['CSSRule']; isEqualJS(object, object); is true
+PASS var object = window['CSSStyleDeclaration']; isEqualJS(object, object); is true
+PASS var object = window['CSSValue']; isEqualJS(object, object); is true
+PASS var object = window['DOMException']; isEqualJS(object, object); is true
+PASS var object = window['DOMParser']; isEqualJS(object, object); is true
+PASS var object = window['Document']; isEqualJS(object, object); is true
+PASS var object = window['DocumentFragment']; isEqualJS(object, object); is true
+PASS var object = window['Element']; isEqualJS(object, object); is true
+PASS var object = window['EvalError']; isEqualJS(object, object); is true
+PASS var object = window['Event']; isEqualJS(object, object); is true
+PASS var object = window['HTMLAnchorElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLAppletElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLAreaElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLBRElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLBaseElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLBaseFontElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLBodyElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLButtonElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLCanvasElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLDListElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLDirectoryElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLDivElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLDocument']; isEqualJS(object, object); is true
+PASS var object = window['HTMLElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLFieldSetElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLFontElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLFormElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLHRElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLHeadElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLHeadingElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLHtmlElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLImageElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLInputElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLIsIndexElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLLIElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLLabelElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLLegendElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLLinkElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLMapElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLMenuElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLMetaElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLModElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLOListElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLOptGroupElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLOptionElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLParagraphElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLParamElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLPreElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLQuoteElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLScriptElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLSelectElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLStyleElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLTextAreaElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLTitleElement']; isEqualJS(object, object); is true
+PASS var object = window['HTMLUListElement']; isEqualJS(object, object); is true
+PASS var object = window['Image']; isEqualJS(object, object); is true
+PASS var object = window['MutationEvent']; isEqualJS(object, object); is true
+PASS var object = window['Node']; isEqualJS(object, object); is true
+PASS var object = window['NodeFilter']; isEqualJS(object, object); is true
+PASS var object = window['Option']; isEqualJS(object, object); is true
+PASS var object = window['Range']; isEqualJS(object, object); is true
+PASS var object = window['RangeError']; isEqualJS(object, object); is true
+PASS var object = window['RangeException']; isEqualJS(object, object); is true
+PASS var object = window['ReferenceError']; isEqualJS(object, object); is true
+PASS var object = window['SyntaxError']; isEqualJS(object, object); is true
+PASS var object = window['TypeError']; isEqualJS(object, object); is true
+PASS var object = window['URIError']; isEqualJS(object, object); is true
+PASS var object = window['XMLDocument']; isEqualJS(object, object); is true
+PASS var object = window['XMLHttpRequest']; isEqualJS(object, object); is true
+PASS var object = window['XMLSerializer']; isEqualJS(object, object); is true
+PASS var object = window['XPathEvaluator']; isEqualJS(object, object); is true
+PASS var object = window['XPathResult']; isEqualJS(object, object); is true
+PASS var object = window['XSLTProcessor']; isEqualJS(object, object); is true
+PASS var object = window['addEventListener']; isEqualJS(object, object); is true
+PASS var object = window['alert']; isEqualJS(object, object); is true
+PASS var object = window['atob']; isEqualJS(object, object); is true
+PASS var object = window['blur']; isEqualJS(object, object); is true
+PASS var object = window['btoa']; isEqualJS(object, object); is true
+PASS var object = window['captureEvents']; isEqualJS(object, object); is true
+PASS var object = window['clearInterval']; isEqualJS(object, object); is true
+PASS var object = window['clearTimeout']; isEqualJS(object, object); is true
+PASS var object = window['clientInformation']; isEqualJS(object, object); is true
+PASS var object = window['close']; isEqualJS(object, object); is true
+PASS var object = window['closed']; isEqualJS(object, object); is true
+PASS var object = window['confirm']; isEqualJS(object, object); is true
+PASS var object = window['console']; isEqualJS(object, object); is true
+PASS var object = window['crypto']; isEqualJS(object, object); is true
+PASS var object = window['defaultStatus']; isEqualJS(object, object); is true
+PASS var object = window['defaultstatus']; isEqualJS(object, object); is true
+PASS var object = window['document']; isEqualJS(object, object); is true
+PASS var object = window['event']; isEqualJS(object, object); is true
+PASS var object = window['find']; isEqualJS(object, object); is true
+PASS var object = window['focus']; isEqualJS(object, object); is true
+PASS var object = window['frameElement']; isEqualJS(object, object); is true
+PASS var object = window['frames']; isEqualJS(object, object); is true
+PASS var object = window['getComputedStyle']; isEqualJS(object, object); is true
+PASS var object = window['getMatchedCSSRules']; isEqualJS(object, object); is true
+PASS var object = window['getSelection']; isEqualJS(object, object); is true
+PASS var object = window['history']; isEqualJS(object, object); is true
+PASS var object = window['location']; isEqualJS(object, object); is true
+PASS var object = window['locationbar']; isEqualJS(object, object); is true
+PASS var object = window['log']; isEqualJS(object, object); is true
+PASS var object = window['menubar']; isEqualJS(object, object); is true
+PASS var object = window['moveBy']; isEqualJS(object, object); is true
+PASS var object = window['moveTo']; isEqualJS(object, object); is true
+PASS var object = window['name']; isEqualJS(object, object); is true
+PASS var object = window['navigator']; isEqualJS(object, object); is true
+PASS var object = window['offscreenBuffering']; isEqualJS(object, object); is true
+PASS var object = window['onabort']; isEqualJS(object, object); is true
+PASS var object = window['onbeforeunload']; isEqualJS(object, object); is true
+PASS var object = window['onblur']; isEqualJS(object, object); is true
+PASS var object = window['onchange']; isEqualJS(object, object); is true
+PASS var object = window['onclick']; isEqualJS(object, object); is true
+PASS var object = window['ondblclick']; isEqualJS(object, object); is true
+PASS var object = window['onerror']; isEqualJS(object, object); is true
+PASS var object = window['onfocus']; isEqualJS(object, object); is true
+PASS var object = window['onkeydown']; isEqualJS(object, object); is true
+PASS var object = window['onkeypress']; isEqualJS(object, object); is true
+PASS var object = window['onkeyup']; isEqualJS(object, object); is true
+PASS var object = window['onload']; isEqualJS(object, object); is true
+PASS var object = window['onmousedown']; isEqualJS(object, object); is true
+PASS var object = window['onmousemove']; isEqualJS(object, object); is true
+PASS var object = window['onmouseout']; isEqualJS(object, object); is true
+PASS var object = window['onmouseover']; isEqualJS(object, object); is true
+PASS var object = window['onmouseup']; isEqualJS(object, object); is true
+PASS var object = window['onmousewheel']; isEqualJS(object, object); is true
+PASS var object = window['onreset']; isEqualJS(object, object); is true
+PASS var object = window['onresize']; isEqualJS(object, object); is true
+PASS var object = window['onscroll']; isEqualJS(object, object); is true
+PASS var object = window['onsearch']; isEqualJS(object, object); is true
+PASS var object = window['onselect']; isEqualJS(object, object); is true
+PASS var object = window['onsubmit']; isEqualJS(object, object); is true
+PASS var object = window['onunload']; isEqualJS(object, object); is true
+PASS var object = window['open']; isEqualJS(object, object); is true
+PASS var object = window['opener']; isEqualJS(object, object); is true
+PASS var object = window['parent']; isEqualJS(object, object); is true
+PASS var object = window['personalbar']; isEqualJS(object, object); is true
+PASS var object = window['print']; isEqualJS(object, object); is true
+PASS var object = window['prompt']; isEqualJS(object, object); is true
+PASS var object = window['releaseEvents']; isEqualJS(object, object); is true
+PASS var object = window['removeEventListener']; isEqualJS(object, object); is true
+PASS var object = window['resizeBy']; isEqualJS(object, object); is true
+PASS var object = window['resizeTo']; isEqualJS(object, object); is true
+PASS var object = window['screen']; isEqualJS(object, object); is true
+PASS var object = window['scroll']; isEqualJS(object, object); is true
+PASS var object = window['scrollBy']; isEqualJS(object, object); is true
+PASS var object = window['scrollTo']; isEqualJS(object, object); is true
+PASS var object = window['scrollbars']; isEqualJS(object, object); is true
+PASS var object = window['self']; isEqualJS(object, object); is true
+PASS var object = window['setInterval']; isEqualJS(object, object); is true
+PASS var object = window['setTimeout']; isEqualJS(object, object); is true
+PASS var object = window['showModalDialog']; isEqualJS(object, object); is true
+PASS var object = window['status']; isEqualJS(object, object); is true
+PASS var object = window['statusbar']; isEqualJS(object, object); is true
+PASS var object = window['stop']; isEqualJS(object, object); is true
+PASS var object = window['test']; isEqualJS(object, object); is true
+PASS var object = window['toolbar']; isEqualJS(object, object); is true
+PASS var object = window['top']; isEqualJS(object, object); is true
+PASS var object = window['window']; isEqualJS(object, object); is true
+
diff --git a/LayoutTests/fast/dom/wrapper-identity.html b/LayoutTests/fast/dom/wrapper-identity.html
new file mode 100644 (file)
index 0000000..ecb30e5
--- /dev/null
@@ -0,0 +1,45 @@
+<html>
+<head>
+<link rel="stylesheet" href="../js/resources/js-test-style.css">
+<script src="../js/resources/js-test-pre.js"></script>
+<script src="resources/wrapper-identity-base.js"></script>
+
+<style id="style" media="screen">
+.non-existent-class {
+    color: black;
+    clip: rect(0, 0, 1, 1);
+    content: counter(dummy, square);
+}
+</style>
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script>
+
+function runTest()
+{
+    description("This tests wrapper identity for JavaScript");
+    if (!window.layoutTestController)
+        debug("The ObjC tests only work in DumpRenderTree.\n");
+    
+    var tests = [ ];
+    tests.push("[ ]");
+    tests.push("{ }");
+    tests.push("new Array()");
+    tests.push("new RegExp()");
+    tests.push("new String()");
+    for (var i = 0; i < staticWindowProperties.length; i++) //>
+        tests.push("window['" + staticWindowProperties[i] + "']");
+        
+    for (var i = 0; i < tests.length; i++) //>
+        testJS(tests[i]);
+        
+    // Not yet tested -- most interesting parts of the DOM, like the tests in
+    // wrapper-classes.html.
+}
+
+window.onload = runTest;
+</script>
+</body>
+</html>
similarity index 50%
rename from LayoutTests/platform/mac/fast/dom/wrapper-identity-expected.txt
rename to LayoutTests/platform/mac/fast/dom/objc-wrapper-identity-expected.txt
index 75f823fc5fc13ad5f38f140b4f5f2a8a5d050c2b..c418fe64bdd1713139c9c89fcaa4f563dafaae5e 100644 (file)
@@ -1,173 +1,8 @@
-This tests wrapper identity for both JavaScript and Objective-C.
+This tests wrapper identity for Objective-C.
 
 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
 
 
-PASS var object = [ ]; isEqualJS(object, object); is true
-PASS var object = { }; isEqualJS(object, object); is true
-PASS var object = new Array(); isEqualJS(object, object); is true
-PASS var object = new RegExp(); isEqualJS(object, object); is true
-PASS var object = new String(); isEqualJS(object, object); is true
-PASS var object = window['CSSPrimitiveValue']; isEqualJS(object, object); is true
-PASS var object = window['CSSRule']; isEqualJS(object, object); is true
-PASS var object = window['CSSStyleDeclaration']; isEqualJS(object, object); is true
-PASS var object = window['CSSValue']; isEqualJS(object, object); is true
-PASS var object = window['DOMException']; isEqualJS(object, object); is true
-PASS var object = window['DOMParser']; isEqualJS(object, object); is true
-PASS var object = window['Document']; isEqualJS(object, object); is true
-PASS var object = window['DocumentFragment']; isEqualJS(object, object); is true
-PASS var object = window['Element']; isEqualJS(object, object); is true
-PASS var object = window['EvalError']; isEqualJS(object, object); is true
-PASS var object = window['Event']; isEqualJS(object, object); is true
-PASS var object = window['HTMLAnchorElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLAppletElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLAreaElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLBRElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLBaseElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLBaseFontElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLBodyElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLButtonElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLCanvasElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLDListElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLDirectoryElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLDivElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLDocument']; isEqualJS(object, object); is true
-PASS var object = window['HTMLElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLFieldSetElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLFontElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLFormElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLHRElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLHeadElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLHeadingElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLHtmlElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLImageElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLInputElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLIsIndexElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLLIElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLLabelElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLLegendElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLLinkElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLMapElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLMenuElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLMetaElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLModElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLOListElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLOptGroupElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLOptionElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLParagraphElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLParamElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLPreElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLQuoteElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLScriptElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLSelectElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLStyleElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLTextAreaElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLTitleElement']; isEqualJS(object, object); is true
-PASS var object = window['HTMLUListElement']; isEqualJS(object, object); is true
-PASS var object = window['Image']; isEqualJS(object, object); is true
-PASS var object = window['MutationEvent']; isEqualJS(object, object); is true
-PASS var object = window['Node']; isEqualJS(object, object); is true
-PASS var object = window['NodeFilter']; isEqualJS(object, object); is true
-PASS var object = window['Option']; isEqualJS(object, object); is true
-PASS var object = window['Range']; isEqualJS(object, object); is true
-PASS var object = window['RangeError']; isEqualJS(object, object); is true
-PASS var object = window['RangeException']; isEqualJS(object, object); is true
-PASS var object = window['ReferenceError']; isEqualJS(object, object); is true
-PASS var object = window['SyntaxError']; isEqualJS(object, object); is true
-PASS var object = window['TypeError']; isEqualJS(object, object); is true
-PASS var object = window['URIError']; isEqualJS(object, object); is true
-PASS var object = window['XMLDocument']; isEqualJS(object, object); is true
-PASS var object = window['XMLHttpRequest']; isEqualJS(object, object); is true
-PASS var object = window['XMLSerializer']; isEqualJS(object, object); is true
-PASS var object = window['XPathEvaluator']; isEqualJS(object, object); is true
-PASS var object = window['XPathResult']; isEqualJS(object, object); is true
-PASS var object = window['XSLTProcessor']; isEqualJS(object, object); is true
-PASS var object = window['addEventListener']; isEqualJS(object, object); is true
-PASS var object = window['alert']; isEqualJS(object, object); is true
-PASS var object = window['atob']; isEqualJS(object, object); is true
-PASS var object = window['blur']; isEqualJS(object, object); is true
-PASS var object = window['btoa']; isEqualJS(object, object); is true
-PASS var object = window['captureEvents']; isEqualJS(object, object); is true
-PASS var object = window['clearInterval']; isEqualJS(object, object); is true
-PASS var object = window['clearTimeout']; isEqualJS(object, object); is true
-PASS var object = window['clientInformation']; isEqualJS(object, object); is true
-PASS var object = window['close']; isEqualJS(object, object); is true
-PASS var object = window['closed']; isEqualJS(object, object); is true
-PASS var object = window['confirm']; isEqualJS(object, object); is true
-PASS var object = window['console']; isEqualJS(object, object); is true
-PASS var object = window['crypto']; isEqualJS(object, object); is true
-PASS var object = window['defaultStatus']; isEqualJS(object, object); is true
-PASS var object = window['defaultstatus']; isEqualJS(object, object); is true
-PASS var object = window['document']; isEqualJS(object, object); is true
-PASS var object = window['event']; isEqualJS(object, object); is true
-PASS var object = window['find']; isEqualJS(object, object); is true
-PASS var object = window['focus']; isEqualJS(object, object); is true
-PASS var object = window['frameElement']; isEqualJS(object, object); is true
-PASS var object = window['frames']; isEqualJS(object, object); is true
-PASS var object = window['getComputedStyle']; isEqualJS(object, object); is true
-PASS var object = window['getMatchedCSSRules']; isEqualJS(object, object); is true
-PASS var object = window['getSelection']; isEqualJS(object, object); is true
-PASS var object = window['history']; isEqualJS(object, object); is true
-PASS var object = window['location']; isEqualJS(object, object); is true
-PASS var object = window['locationbar']; isEqualJS(object, object); is true
-PASS var object = window['log']; isEqualJS(object, object); is true
-PASS var object = window['menubar']; isEqualJS(object, object); is true
-PASS var object = window['moveBy']; isEqualJS(object, object); is true
-PASS var object = window['moveTo']; isEqualJS(object, object); is true
-PASS var object = window['name']; isEqualJS(object, object); is true
-PASS var object = window['navigator']; isEqualJS(object, object); is true
-PASS var object = window['offscreenBuffering']; isEqualJS(object, object); is true
-PASS var object = window['onabort']; isEqualJS(object, object); is true
-PASS var object = window['onbeforeunload']; isEqualJS(object, object); is true
-PASS var object = window['onblur']; isEqualJS(object, object); is true
-PASS var object = window['onchange']; isEqualJS(object, object); is true
-PASS var object = window['onclick']; isEqualJS(object, object); is true
-PASS var object = window['ondblclick']; isEqualJS(object, object); is true
-PASS var object = window['onerror']; isEqualJS(object, object); is true
-PASS var object = window['onfocus']; isEqualJS(object, object); is true
-PASS var object = window['onkeydown']; isEqualJS(object, object); is true
-PASS var object = window['onkeypress']; isEqualJS(object, object); is true
-PASS var object = window['onkeyup']; isEqualJS(object, object); is true
-PASS var object = window['onload']; isEqualJS(object, object); is true
-PASS var object = window['onmousedown']; isEqualJS(object, object); is true
-PASS var object = window['onmousemove']; isEqualJS(object, object); is true
-PASS var object = window['onmouseout']; isEqualJS(object, object); is true
-PASS var object = window['onmouseover']; isEqualJS(object, object); is true
-PASS var object = window['onmouseup']; isEqualJS(object, object); is true
-PASS var object = window['onmousewheel']; isEqualJS(object, object); is true
-PASS var object = window['onreset']; isEqualJS(object, object); is true
-PASS var object = window['onresize']; isEqualJS(object, object); is true
-PASS var object = window['onscroll']; isEqualJS(object, object); is true
-PASS var object = window['onsearch']; isEqualJS(object, object); is true
-PASS var object = window['onselect']; isEqualJS(object, object); is true
-PASS var object = window['onsubmit']; isEqualJS(object, object); is true
-PASS var object = window['onunload']; isEqualJS(object, object); is true
-PASS var object = window['open']; isEqualJS(object, object); is true
-PASS var object = window['opener']; isEqualJS(object, object); is true
-PASS var object = window['parent']; isEqualJS(object, object); is true
-PASS var object = window['personalbar']; isEqualJS(object, object); is true
-PASS var object = window['print']; isEqualJS(object, object); is true
-PASS var object = window['prompt']; isEqualJS(object, object); is true
-PASS var object = window['releaseEvents']; isEqualJS(object, object); is true
-PASS var object = window['removeEventListener']; isEqualJS(object, object); is true
-PASS var object = window['resizeBy']; isEqualJS(object, object); is true
-PASS var object = window['resizeTo']; isEqualJS(object, object); is true
-PASS var object = window['screen']; isEqualJS(object, object); is true
-PASS var object = window['scroll']; isEqualJS(object, object); is true
-PASS var object = window['scrollBy']; isEqualJS(object, object); is true
-PASS var object = window['scrollTo']; isEqualJS(object, object); is true
-PASS var object = window['scrollbars']; isEqualJS(object, object); is true
-PASS var object = window['self']; isEqualJS(object, object); is true
-PASS var object = window['setInterval']; isEqualJS(object, object); is true
-PASS var object = window['setTimeout']; isEqualJS(object, object); is true
-PASS var object = window['showModalDialog']; isEqualJS(object, object); is true
-PASS var object = window['status']; isEqualJS(object, object); is true
-PASS var object = window['statusbar']; isEqualJS(object, object); is true
-PASS var object = window['stop']; isEqualJS(object, object); is true
-PASS var object = window['test']; isEqualJS(object, object); is true
-PASS var object = window['toolbar']; isEqualJS(object, object); is true
-PASS var object = window['top']; isEqualJS(object, object); is true
-PASS var object = window['window']; isEqualJS(object, object); is true
 PASS var object = [ ]; isEqualObjC(object, object); is true
 PASS var object = { }; isEqualObjC(object, object); is true
 PASS var object = new Array(); isEqualObjC(object, object); is true
diff --git a/LayoutTests/platform/mac/fast/dom/objc-wrapper-identity.html b/LayoutTests/platform/mac/fast/dom/objc-wrapper-identity.html
new file mode 100644 (file)
index 0000000..821ea2e
--- /dev/null
@@ -0,0 +1,45 @@
+<html>
+<head>
+<link rel="stylesheet" href="../../../../fast/js/resources/js-test-style.css">
+<script src="../../../../fast/js/resources/js-test-pre.js"></script>
+<script src="../../../../fast/dom/resources/wrapper-identity-base.js"></script>
+
+<style id="style" media="screen">
+.non-existent-class {
+    color: black;
+    clip: rect(0, 0, 1, 1);
+    content: counter(dummy, square);
+}
+</style>
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script>
+
+function runTest()
+{
+    description("This tests wrapper identity for Objective-C.");
+    if (!window.layoutTestController)
+        debug("The ObjC tests only work in DumpRenderTree.\n");
+    
+    var tests = [ ];
+    tests.push("[ ]");
+    tests.push("{ }");
+    tests.push("new Array()");
+    tests.push("new RegExp()");
+    tests.push("new String()");
+    for (var i = 0; i < staticWindowProperties.length; i++) //>
+        tests.push("window['" + staticWindowProperties[i] + "']");
+
+    for (var i = 0; i < tests.length; i++) //>
+        testObjC(tests[i]);
+        
+    // Not yet tested -- most interesting parts of the DOM, like the tests in
+    // wrapper-classes.html.
+}
+
+window.onload = runTest;
+</script>
+</body>
+</html>