WebCore:
[WebKit-https.git] / LayoutTests / plugins / jsobjc-dom-wrappers.html
1 <html>
2 <head><title> wrappers.html </title>
3 <style>
4     BODY { font: 11px 'Lucida Grande'; width: 90%; padding: 10px; }
5     .box { border: 1px solid gray; background-color: #EEE; margin: 10px; }
6 </style>
7 <script>
8 function print(message) {
9     var paragraph = document.createElement('p');
10     paragraph.appendChild(document.createTextNode(message));
11     document.getElementById('console').appendChild(paragraph);
12 }
13 function check(exp, value) {
14     var obj = eval(exp);
15     var name = objc.classNameOfObject_(obj);
16     var result = (name == value) ? 'PASS' : 'FAIL';
17     print('' + exp + ' == ' + value + ' ? -> ' + result);
18 }
19 function test() {
20     if (window.layoutTestController)
21         layoutTestController.dumpAsText();
22     if (!window.objCPlugin)
23         return print('FAIL - no objCPlugin');
24     objCPlugin.removeBridgeRestrictions_(window);
25     if (!window.objc)
26         return print('FAIL - no window.objc');
27     
28     check('document.childNodes', 'DOMNodeList');
29     check('document.body.attributes', 'DOMNamedNodeMap');
30     check('document.styleSheets', 'DOMStyleSheetList');
31     check('document.styleSheets[0]', 'DOMCSSStyleSheet');
32     check('document.styleSheets[0].media', 'DOMMediaList');
33     check('document.styleSheets[0].cssRules', 'DOMCSSRuleList');
34     check('document.styleSheets[0].cssRules[0]', 'DOMCSSStyleRule');
35     check('document.styleSheets[0].cssRules[0].style', 'DOMCSSStyleDeclaration');
36     check('document.styleSheets[0].cssRules[0].style.getPropertyCSSValue("font")', 'DOMCSSValue');
37     check('document.styleSheets[0].cssRules[0].style.getPropertyCSSValue("width")', 'DOMCSSPrimitiveValue');
38     
39 }
40 </script>
41 </head>
42 <body onload="test();">
43 <div id='console'/>
44 </body>
45 </html>