node.html revision 9d45ad92322b7cd4b0c8d8f87d29b534410c6ddb
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync<script type="text/javascript" src="/build/yui/yui.js"></script>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync width:1000px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync min-height:200px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#get-style {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync background:#ccc;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync float:left;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync font-size:10px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync height:10em;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync padding:15px 0;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync width:200px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync background:#ccc;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync position:absolute;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync overflow:hidden;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync background:green;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync position:absolute;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync height:10px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync width:10px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#test-computed {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync position:relative;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync margin:auto;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync padding:10px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync z-index: 2;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#test-scroll {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync height: 100px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync width: 100px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync overflow:auto;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#test-scroll p {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync height:1000px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync width:1000px;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync display:block;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync.yui-skin-sam .yui-console-entry-pass .yui-console-entry-cat {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync background: #070;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync color: #fff;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync.yui-skin-sam .yui-console-entry-fail .yui-console-entry-cat {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync background: #700;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync color: #fff;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <p>It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using 'Content here, content here', making it look like readable English. Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).</p>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <p>It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using 'Content here, content here', making it look like readable English. Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).</p>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <a href="http://www.yahoo.com/foo" id="link-1">Yahoo!</a>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <a href="foo.html" id="link-2" tabIndex="-1">foo</a>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <form id="test-form" class="test-class" action="#">
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <label for="test-text-value"><em>label</em></label>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <textarea name="test-textarea-value" value="textarea value"></textarea>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <textarea name="test-textarea-textvalue">textarea text</textarea>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <button name="test-button-value" value="button value">button</button>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <button name="test-button-textvalue">button text</button>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <div id="test-prop" tabindex="4">text<em id="test-contains">test<span></span></em><strong>node</strong></div>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <div id="set-style"><div class="bar" id="bar">setStyle</div>foo<div>blah</div></div>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <div id="test-children">foo <span>bar</span> <strong>baz</strong> </div>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync <div id="inline-style" style="color: green">inline style</div>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncYUI({base: '/build/', filter: 'raw'}).use('anim', 'console', 'test', function(Y) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var Assert = Y.Assert,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ArrayAssert = Y.ArrayAssert,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync suite = new Y.Test.Suite("yuisuite");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync new Y.Console({node: '#yui-log', height: '50em' }).render('#yui-log');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var byId = function(id) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync name: 'Y.Node Instance',
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_get: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var node = Y.get('#test-nodes'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes = Y.all('#test-nodes *');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // return null
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.one("a[href$='?t=5']");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isNull(Y.get('#fake-id li'), 'Y.get("#fake-id li") === null');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isNull(Y.get('#fake-id'), 'Y.get("#fake-id") === null');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isNull(Y.get('#fake-id li'), 'Y.get("#fake-id li") === null');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // return zero length collection
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue((Y.all('') instanceof Y.NodeList), 'Y.all("") instanceof NodeList');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue((Y.all('null') instanceof Y.NodeList), 'Y.all("null") instanceof NodeList');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue((Y.all('#foo *') instanceof Y.NodeList), 'Y.all("#foo *") === null');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // return 1
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-nodes').id, Y.get('#test-nodes').get('id'), 'Y.get("#test-nodes")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-nodes'), Y.Node.getDOMNode(Y.get('#test-nodes')), 'Y.get("#test-nodes")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-nodes'), Y.Node.getDOMNode(Y.get('#test-nodes')), 'Y.get("#test-nodes")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('test-nodes', Y.get('#test-nodes').get('id'), 'Y.get("#test-nodes").get("id")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(node, Y.get('#test-nodes'), 'node === Y.get("#test-nodes")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-nodes').getElementsByTagName('li')[0],
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.Node.getDOMNode(Y.get('#test-nodes li:first-child')), 'Y.get("#test-nodes")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-nodes').getElementsByTagName('li')[1],
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.Node.getDOMNode(Y.get('#test-nodes li:nth-child(2)')), 'Y.get("#test-nodes:nth-child(2)")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-nodes').getElementsByTagName('li')[1],
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.Node.getDOMNode(Y.get('#test-nodes li:nth-child(2)')), 'Y.get("#test-nodes:nth-child(2)")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(document.getElementById('form.foo@bar:baz'), Y.Node.getDOMNode(Y.get('[id="form.foo@bar:baz"]')), "[id=form.foo@bar:baz]");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var firstChild = Y.get('body :first-child');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('body').insertBefore(Y.Node.create('<div>foo</div>'), firstChild);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(firstChild._node === Y.get('body :first-child')._node, "wrong node: Y.get('body :first-child')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('body').removeChild(Y.get('body :first-child'));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(Y.Selector.query('body :first-child', null, true), Y.get('body :first-child')._node, "body :first-child === #test-append");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // return more than 1
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ArrayAssert.itemsAreEqual($('#test-select option'), Y.NodeList.getDOMNodes(Y.all('#test-select option')), 'Y.get("#test-select option")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(3, Y.all('#test-select option').size(), 'Y.get("#test-select option").size()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(2, Y.all('form').size(), 'Y.get("form").size()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('FORM', Y.all('form').item(1).get('tagName'), 'Y.get("form").item(1)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(3, Y.all('.bar').size(), 'Y.get(".bar")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areNotEqual(nodes, Y.all('#test-nodes *'), 'nodes === Y.all("#test-nodes")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(nodes.size(), Y.all('#test-nodes *').size(), 'nodes.size() === Y.all("#test-nodes").size()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ArrayAssert.itemsAreEqual(Y.Selector.query('div'), Y.all(Y.Selector.query('div'))._nodes, "Y.all(Y.Selector.query('div'))");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Firefox fails due to Firebug pollutes document.queryAll but not document.getElementsByTagName
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //ArrayAssert.itemsAreEqual(document.getElementsByTagName('div'), Y.all(Y.Selector.query('div'))._nodes, "Y.all(Y.Selector.query('div'))");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ArrayAssert.itemsAreEqual(Y.Selector.query('input[name]'), Y.all(Y.Selector.query('input[name]'))._nodes, "Y.all(Y.Selector.query('input[name]'))");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ArrayAssert.itemsAreEqual(Y.Selector.query('.foo'), Y.all(Y.Selector.query('.foo'))._nodes, "Y.all(Y.Selector.query('.foo'))");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var frameDoc = Y.get('iframe').get('contentWindow.document');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('iframe foo', Y.Lang.trim(frameDoc.query('#demo li').get('innerHTML')),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "frameDoc.query('#demo li').get('innerHTML')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ArrayAssert.itemsAreEqual([document.body], Y.all(document.body)._nodes, "Y.all(document.body)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_each: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var count = 0,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes = Y.all('#test-nodes *'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes.each(function(node, i, list) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(nodes, list, 'nodes === instance');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node instanceof Y.Node, 'node instanceof Y.Node');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(node, this, 'this === node');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(count, nodes.size(), 'node.each(count) === nodes.size()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(nodes.size() - 1, index, 'nodes.size() - 1 === index');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_some: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var nodes = Y.all('#test-nodes *'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync index, instance, isNode;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return true;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }), 'nodes.some(function() { return true; })');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(nodes.some(function(node, i, list) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }), 'nodes.some(function() {})');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_indexOf: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(0, Y.all('body').indexOf(Y.get('body')),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(0, Y.all('div').indexOf(Y.one(document.getElementsByTagName('div')[0])),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.all('div').indexOf(Y.one(document.getElementsByTagName('div')[0]))");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(-1, Y.all('div').indexOf(Y.get('#test-')),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(-1, Y.all('div').indexOf(Y.get('#test-form')),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_getters: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var id = 'test-nodes',
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync element = byId(id),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node = Y.get('#' + id),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes = Y.all('#' + id + ' *');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(null, node.get(''), 'node.get("") === null');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(null, node.get('fake'), 'node.get("fake") === null');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(null, node.get('nodeValue'), 'nodeValue === null');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('DIV', node.get('nodeName'), 'nodeName === "DIV"');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('UL', nodes.get('nodeName')[0], 'nodeName === "UL"');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('LI', nodes.get('nodeName')[nodes.size() - 1], 'nodeName === "LI"');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(element.firstChild.nextSibling.nodeName, node.get('firstChild').get('nextSibling').get('nodeName'), 'node.firstChild.nextSibling.nodeName"');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(element.lastChild.nodeName, node.get('lastChild').get('nodeName'), 'lastChild.nodeName"');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(9, node.get('ownerDocument').get('nodeType'), 'node.ownerDocument.nodeType === 9');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('test-nodes', nodes.get('parentNode').get('id')[0], 'nodes.get(parentNode)[0].get("id") === test-nodes');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(element.firstChild.nodeType, node.get('firstChild').get('nodeType'), 'firstChild.get("nodeType")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(element.offsetWidth, node.get('offsetWidth'), 'offsetWidth === node.offsetWidth');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(element.offsetParent.tagName, node.get('offsetParent').get('tagName'), 'offsetParent.tagName === offsetParent.tagName');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('item 1', Y.Lang.trim(nodes.get('children')[0].get('text')[0]), 'nodes.get("children")[0].get("text")[0]');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('item 1', Y.Lang.trim(nodes.get('children')[0].get('text')[0]), 'nodes.get("children")[0].get("text")[0]');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var textContainer = Y.Node.create('<div>foo</div>');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('foo', textContainer.get('text'), "textContainer.get('text')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync textContainer.set('text', 'bar');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('bar', textContainer.get('text'), "textContainer.set('text', 'bar')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ArrayAssert.itemsAreEqual($('#test-select option'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.NodeList.getDOMNodes(Y.get('#test-select').get('options')),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(2, node.get('children').size(), 'get("children")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(0, Y.one('#test-empty-children').get('children').size(), "Y.one('#test-empty-children').get('children')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(8, Y.all('#' + id + ' li').size(), 'Y.all("#test-nodes li.size()")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // size() is deprecated on Node
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //Assert.areEqual(1, Y.get('#' + id + ' li').size(), 'Y.get("#test-nodes li.size()")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-nodes').childNodes.length, node.get('childNodes').size(), 'node.get("childNodes").size()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-nodes').childNodes.length, node.get('childNodes').get('tagName').length, 'node.get("childNodes")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ArrayAssert.itemsAreEqual(byId('test-nodes').childNodes.length, node.get('childNodes').get('length').length, "node.get('childNodes').get('length')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(element.lastChild.nodeName, node.get('lastChild.nodeName'), 'node.get("lastChild.nodeName")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(element.lastChild.previousSibling.nodeName, node.get('lastChild').get('previousSibling').get('nodeName'), 'node.lastChild.previousSibling.nodeName');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('test', Y.get('#test-prop').get('firstChild.nextSibling.firstChild.nodeValue'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 'node.get("firstChild.nextSibling.firstChild.nodeValue")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-prop').tabIndex, Y.get('#test-prop').get('tabIndex'), 'Y.get("#test-prop").get("tabIndex")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('doc').tabIndex, Y.get('#doc').get('tabIndex'), 'Y.get("#doc".get("tabIndex"))');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('link-1').tabIndex, Y.get('#link-1').get('tabIndex'), 'Y.get("#link1".get("tabIndex"))');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('link-2').tabIndex, Y.get('#link-2').get('tabIndex'), 'Y.get("#link1".get("tabIndex"))');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(undefined, Y.get('form').get('childNodes')._nodes.item, 'convert live list to static');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(Y.all('input').get('parentNode') instanceof Y.NodeList, "Y.all('input').get('parentNode')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_create: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var id = 'test-nodes',
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync element = byId(id),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node = Y.get('#' + id);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('fresh', node.create('<div id="fresh">fresh</div>').get('id'), 'node.create from string)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node = Y.Node.create('<select><option>foo</option></select>');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var option = Y.Node.create('<option>bar</option>').set('selected', 'selected');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(Y.Node.getDOMNode(option).selected, "Y.Node.create('<option>test</option>').set('selected', 'selected'))");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('A', node.get('firstChild.tagName'), html);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync html = 'baz';
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('3', node.get('nodeType'), "node.get('nodeType')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('3', Y.Node.getDOMNode(node).nodeType, "Y.Node.getDOMNode(node).nodeType");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('3', node.get('firstChild.nodeType'), "node.get('firstChild.nodeType')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('3', node.get('firstChild').get('nodeType'), "node.get('firstChild').get('nodeType')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('3', Y.Node.getDOMNode(node.get('firstChild')).nodeType, "Y.Node.getDOMNode(node.get('firstChild')).nodeType");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.insertBefore(Y.Node.create('foo'), node.get('firstChild'));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('foobar', node.get('innerHTML'), "node.get('innerHTML')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('foobar', node.get('text'), "node.get('text')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_setter: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var id = 'test-prop',
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync element = byId(id),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node = Y.get('#' + id),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes = Y.all('#test-nodes *');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var childNodes = Y.get('body').get('childNodes');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync childNodes.set('title', 'foo bar');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(byId('test-nodes').title == 'foo bar', 'Y.get("body").get("childNodes").set("title")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.set('foo', 'foo');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isUndefined(node.get('foo'), 'node.get("foo")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.set('title', 'my title');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('my title', Y.Node.getDOMNode(node).title, 'node.title)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('my title', node.get('title'), 'node.set("title")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes.set('className', 'foo');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('foo', Y.NodeList.getDOMNodes(nodes)[0].className, 'node.className');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('foo', nodes.get('className')[2], 'node.get("className")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('foo', nodes.item(nodes.size() - 2).get('className'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var attrMap = {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync className: 'fooclass',
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync title: 'new title'
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var getAttrs = node.getAttrs(['className', 'title']);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(attrMap.className, getAttrs.className, 'node.setAttrs(attrMap) (get className)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(attrMap.title, getAttrs.title, 'node.setAttrs(attrMap) (get title)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('#test-select').set('selectedIndex', 2);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(2, Y.get('#test-select')._node.selectedIndex,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.get('#test-select').set('selectedIndex', 2)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('body > form').set('test-select.selectedIndex', 2);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(2, byId('test-select').selectedIndex,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 'Y.get("body > form").set("test-select.selectedIndex", 2)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var index = Y.get('#test-select').query('option[value=1]').set('selected', true);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(1, Y.get('#test-select')._node.selectedIndex,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.get('#test-select').set('selectedIndex', 1)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.one('#test-select').set('value', 1);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(1, Y.one('#test-select').get('value'), "Y.one('#test-select').set('value', 1)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.one('#test-select').set('value', 'baz');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('baz', Y.one('#test-select').get('value'), "Y.one('#test-select').set('value', 1)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_dom_methods: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var id = 'test-prop';
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var element = byId(id);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var node = Y.Node.get('#test-prop');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.hasMethod('appendChild'), "node.hasMethod('appendChild')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //Assert.isTrue(element === Y.get(node), 'element === Y.get(node)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(element.getElementsByTagName('em')[0].nodeName, node.getElementsByTagName('em').item(0).get('nodeName'), 'getElementsByTagName');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var insertNode = document.createElement('div');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.stamp(insertNode);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync insertNode.innerHTML = 'inserted node';
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(Y.get('body').get('lastChild').compareTo(Y.get('#test-append')), 'get("body").appendChild(Y.get("#test-append"))');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-append'), Y.Node.getDOMNode(Y.get('body').get('lastChild')), 'get("body").appendChild(Y.get([0]"#test-append"))');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('inserted node', node.appendChild(insertNode).get('innerHTML'), 'appendChild(element input)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('inserted node', node.removeChild(insertNode).get('innerHTML'), 'removeChild(element input)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('inserted node', node.appendChild(Y.get(insertNode)).get('innerHTML'), 'appendChild(Node input)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('inserted node', node.removeChild(Y.get(insertNode)).get('innerHTML'), 'removeChild(Node input)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var clone = node.cloneNode();
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(node === clone, 'node === node.cloneNode()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(1, clone.get('nodeType'), 'cloneNode()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // TODO: test deep clone with bound descendant
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.get('childNodes').size() === node.cloneNode(true).get('childNodes').size(), 'node.get("childNodes").size() === node.cloneNode(true).get("childNodes").size()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(Y.one('.bar').test('.bar'), "Y.one('.bar').test('.bar')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync clone = Y.one('.bar').cloneNode(true);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(clone.hasClass('bar'), "clone.hasClass('bar') (before appending)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.one('body').appendChild(clone);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(clone.test('.bar'), "clone.test('.bar') (after appending)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.Node.create('<div id="foo" class="bar"></div>').test('.bar'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.Node.create('<div id=\"foo\" class=\"bar\"></div>').test('.bar')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.Node.create('<div id="foo" class="bar"></div>').test('#foo.bar'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.Node.create('<div id=\"foo\" class=\"bar\"></div>').test('#foo.bar')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.hasChildNodes(), 'hasChildNodes()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.compareTo(node), 'compareTo(node)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.compareTo(Y.Node.get(node)), 'compareTo(new Y.Node)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(node.compareTo(null), 'compareTo(null)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(node.create('<p>foo</p>').inDoc(), 'node.inDoc()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.contains(byId('test-contains')), 'contains()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.contains(node), 'contains() self');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.contains(element), 'contains() self');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(node.contains(document.getElementsByTagName('div')), 'contains() false positive for collection');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('doc', node.ancestor(function(el) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return el.get('id') === 'doc';
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }).get('id'), 'ancestor');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(node.ancestor(), node.get('parentNode'), "node.ancestor()");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return el.getAttribute('foo') !== '';
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }), 'ancestor');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(node.get('parentNode'), node.ancestor('div'));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('test-class', node.previous().get('id'), 'node.previous()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(Y.get(document.body).inDoc(document));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.inDoc(document), 'node.inDoc(document)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.inDoc(Y.get(document)), 'node.inDoc(Y.get(document))');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(byId('test-contains'), Y.Node.getDOMNode(node.getById('test-contains')), 'node.getById("test-contains")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.hasAttribute('id'), 'node.hasAttribute("id")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.hasAttribute('title'), 'node.hasAttribute("title")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(node.hasAttribute('foo'), 'node.hasAttribute("foo")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.hasAttribute('tabIndex'), 'node.hasAttribute("tabIndex")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(node.hasAttribute('tabIndex'), 'node.hasAttribute("tabIndex") (false)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(node.getAttribute('tabIndex'), node.get('tabIndex'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.getAttribute('tabIndex') === node.get('tabIndex')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(Y.get('body').hasAttribute('title'), 'body.hasAttribute("title")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('0', Y.get('select[name=test-select] option:nth-child(1)').getAttribute('value'), 'option1.getAttribute("value") (from innerText)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('1', Y.get('select[name=test-select] option:nth-child(2)').getAttribute('value'), 'option2.getAttribute("value") (from innerText)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('', Y.get('select[name=test-select] option:nth-child(3)').getAttribute('value'), 'option3.getAttribute("value") (from innerText)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('http://www.yahoo.com/foo', Y.get('#link-1').getAttribute('href'), "Y.get('#link1').getAttribute('href')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('foo.html', Y.get('#link-2').getAttribute('href'), "Y.get('#link1').getAttribute('href')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_fragment: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var frag = Y.get('document').invoke('createDocumentFragment'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync element = byId('test-append');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(element, Y.Node.getDOMNode(frag.get('firstChild')), 'frag.appendChild()');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('body').appendChild(frag);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_screen: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var id = 'test-prop';
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var element = byId(id);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var node = Y.Node.get(element);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var newNode = Y.Node.create('<div id="brand-new-foo">foo</div>');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(document.documentElement.scrollLeft, newNode.get('docScrollX'), 'newNode.get("docScrollX")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(document.documentElement.scrollTop, node.get('docScrollY'), 'node.get("docScrollY")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node = Y.one('#test-xy');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var x = Math.round(xy[0]);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var y = Math.round(xy[1]);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ArrayAssert.itemsAreEqual([100, 100], [x, y], 'Node.getXY("foo", "bar")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_region: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(Y.DOM.inRegion(byId('baz'), byId('doc')), 'DOM.inRegion(domNode, domNode)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(Y.Node.get('#get-style').inRegion(byId('doc')), 'node.inRegion(domNode)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(Y.Node.get('#get-style').inRegion(Y.Node.get('#doc')), 'node.inRegion(Node)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ArrayAssert.itemsAreEqual(Y.DOM.region(Y.DOM.byId('doc')), Y.Node.get('#doc').get('region'), 'node.get("region")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_classes: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var id = 'test-class';
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var element = byId(id);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var node = Y.Node.get(element);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.get('previousSibling').hasClass('test-class'), 'node.get("previousSibling").hasClass("test-class")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('foo', element.className, 'node.addClass("foo")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('', element.className, 'node.removeClass("foo")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.Node.get('body').get('childNodes').addClass('foo');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(byId('test-class').className == 'foo', 'NodeList.addClass');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('bar', element.className, 'Node.replaceClass("foo", "bar")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var nodes = Y.all('#test-nodes li');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes.addClass('foo').addClass('bar');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes.each(function(n) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes.each(function(n) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_toggle: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var node = Y.one('#test-class');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.hasClass('foo'), "node.toggleClass('foo')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(node.hasClass('foo'), "node.toggleClass('foo')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.toggleClass('foo', false);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isFalse(node.hasClass('foo'), "node.toggleClass('foo', false)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.hasClass('foo'), "node.toggleClass('foo')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(node.hasClass('foo'), "node.toggleClass('foo', true)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_setStyle: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var element = byId('set-style'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node = Y.Node.get(element),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes = node.get('childNodes');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.setStyle('width', '20em');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('20em', element.style.width, "setStyle('width' '20em')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.setStyle('marginTop', '1em');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('1em', element.style.marginTop, "setStyle('marginTop','1em')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.setStyle('opacity', 0.5);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(0.5, node.getStyle('opacity'), "setStyle('opacity', 0.5)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.setStyle('float', 'left');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('left', node.getStyle('float'), "setStyle('float', 'left')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.setStyle('float', 'left');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('left', node.getStyle('float'), "setStyle('float', 'left')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes.setStyle('marginTop', '1em');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('1em', nodes.getStyle('marginTop')[2], "setStyle('marginTop', '1em'");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_getStyle: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var node = Y.Node.get('#get-style');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.setStyle('opacity', 0.5);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(0.5, node.getStyle('opacity'), "node.getStyle('opacity')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('left', node.getStyle('float'), "node.getStyle('float')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('100px', node.getStyle('height'), "getStyle('height')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('200px', node.getStyle('width'), "getStyle('width)'");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('visible', node.getStyle('visibility'), "visibility");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.setStyle('visibility', 'hidden');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('hidden', node.getStyle('visibility'), "visibility");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.setStyle('visibility', 'visible');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_getComputedStyle: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var node = Y.get('#test-computed');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var domNode = byId('test-computed');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync domNode.style.border = 'medium solid #000';
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var bw = (Y.UA.ie) ? 4 : 3;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var h = node.get('offsetHeight') - 20 - 2 * bw;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(bw + 'px', node.getComputedStyle('borderTopWidth'), "borderTopWidth: medium");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(h, Math.round(parseFloat(node.getComputedStyle('height'))), "height: auto (offset minus padding and border)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('13px', node.getComputedStyle('paddingTop'), "padding 10em");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('visible', node.getComputedStyle('visibility'), "visibility");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('hidden', node.getComputedStyle('visibility'), "visibility");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(2, node.getComputedStyle('zIndex'), 'node.getComputedStyle("zIndex")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('500px', node.getComputedStyle('width'), "percent width (from CSS)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual('0px', node.getComputedStyle('marginTop'), "margin auto");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_setStyles: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var node = byId('set-style');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var element = Y.Node.get(node);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 'top': '5px',
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 'right': '10em'
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue( (node.style.top == '5px' && node.style.right == '10em'), "setStyles()");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_selector: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var id = 'test-prop',
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync element = byId(id),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node = Y.get('#' + id),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync nodes = Y.all('#test-nodes *');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Selector methods
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isNull(Y.Node.get(document.body).query("#fake-id"), 'body.query("#fake-id")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(Y.Node.get(node).test('#' + id), 'node.test( "#id")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isNull(parent.query("#fake-id"), 'parent.query("#fake-id")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(id, parent.query('#' + id).get('id'), 'parent.query("#id")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(id, parent.query('#' + id).get('id'), 'parent.query("#id")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isNull(parent.query('#text-xy'), 'parent.query("test-xy")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(id, parent.queryAll('#' + id).item(0).get('id'), 'parent.queryAll(node, "#id")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(id, parent.queryAll('#' + id).item(0).get('id'), 'parent.queryAll(node, "#id")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_window: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var win = Y.get(window);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(window, Y.Node.getDOMNode(win), 'Y.get(window)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(document, Y.Node.getDOMNode(win.get('document')), 'win.get(document)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //Assert.areEqual(window, Y.Node.getDOMNode(Y.get('document').get('defaultView')), 'win.get(document)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_windowSize: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isNotNull(Y.get('body').get('winHeight'), 'body.get("winHeight")');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_scroll: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('#test-scroll').set('scrollTop', 100);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('#test-scroll').set('scrollLeft', 200);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(100, byId('test-scroll').scrollTop, 'test-scroll.set("scrollTop", 100)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(200, byId('test-scroll').scrollLeft, 'test-scroll.set("scrollLeft", 200)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get(window).set('scrollTop', 100);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get(window).set('scrollLeft', 200);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(100, Y.DOM.docScrollY(window), 'window.set("scrollTop", 100)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(200, Y.DOM.docScrollX(window), 'window.set("scrollLeft", 200)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get(document).set('scrollTop', 200);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get(document).set('scrollLeft', 100);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(200, Y.DOM.docScrollY(document), 'document.set("scrollTop", 200)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(100, Y.DOM.docScrollX(document), 'document.set("scrollLeft", 100)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_setContent: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('#test-insert-html').setContent(content);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.DOM.byId('test-insert-html').innerHTML.toLowerCase(),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.get('#test-insert-html').setContent(" + content + ")");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('#test-insert-html').setContent(Y.Node.create(content));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.DOM.byId('test-insert-html').innerHTML.toLowerCase(),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.get('#test-insert-html').setContent(Y.Node.create(" + content + "))");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('#test-insert-html').setContent(Y.Node.create(content));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.DOM.byId('test-insert-html').innerHTML.toLowerCase(),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.get('#test-insert-html').setContent(Y.Node.create(" + content + "))");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var element = document.createElement('strong');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('#test-insert-html').setContent(element);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.DOM.byId('test-insert-html').innerHTML.toLowerCase(),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.get('#test-insert-html').setContent(element)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content = '';
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('#test-insert-html').setContent(content);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.DOM.byId('test-insert-html').innerHTML.toLowerCase(),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.get('#test-insert-html').setContent(" + content + ")");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content = null;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('#test-insert-html').setContent(content);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.DOM.byId('test-insert-html').innerHTML.toLowerCase(),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "Y.get('#test-insert-html').setContent(" + content + ")");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_insert: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var node = Y.get('#test-insert-html'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content = node.get('innerHTML');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content + html,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.insert('" + html + "')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content = node.get('innerHTML');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync html + content,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.insert(" + html + ", 0)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(node.all('> *').item(1).get('tagName'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.insert(" + html + ", 1)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content = node.get('innerHTML');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.insert(" + html + ")");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync html = null;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content = node.get('innerHTML');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.insert(" + html + ")");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // test fragment insertion
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content = node.get('innerHTML');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content + html,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.insert(" + html + ")");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content = node.get('innerHTML');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync html + content,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.insert(" + html + ", 0)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.insert('<strong>baz</strong>', node.one('span'));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(node._node.childNodes[1].tagName, 'STRONG',
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.insert('<strong>bar</strong>', node.one('span')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync node.insert('<code>var lorem</code>', node.one('em')._node);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(node._node.childNodes[0].tagName, 'CODE',
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.insert('<code>var lorem</code>', node.one('em')._node)");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // insert Node instance
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(node._node.childNodes[2], html._node,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // insert DOM node
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Y.get('#test-insert-html').insert(html, 2);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.areEqual(Y.get('#test-insert-html')._node.childNodes[2], html, 'node.insert(someDOMNode, 2)');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_inject: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync var node = Y.get('#test-insert-html'),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content = node.get('innerHTML');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync html + content,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.prepend('" + html + "')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content = node.get('innerHTML');
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync content + html,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "node.append('" + html + "')");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync test_getValue: function() {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Assert.isTrue(Y.get('input[name=test-text-value]').hasAttribute('value'),
Assert.areEqual('text value',
Y.get('input[name=test-text-value]').get('value'),
"Y.get('input[name=test-text-value]').get('value')");
Assert.areEqual('', // TODO: normalize to null?
Y.get('input[name=test-text-novalue]').get('value'),
"Y.get('input[name=test-text-novalue]').get('value')");
Assert.areEqual('textarea text',
Y.get('textarea[name=test-textarea-textvalue]').get('value'),
Assert.areEqual('',
Y.get('textarea[name=test-textarea-novalue]').get('value'),
Assert.areEqual('',
Y.get('textarea[name=test-textarea-value]').get('value'),
Assert.areEqual('button value',
Y.get('button[name=test-button-value]').get('value'),
Assert.areEqual('',
Y.get('button[name=test-button-novalue]').get('value'),
Assert.areEqual('',
Y.get('button[name=test-button-textvalue]').get('value'),
var node = Y.get('#test-remove'),
domNode = Y.DOM.byId('test-remove'),
parent = domNode.parentNode;
node.remove();
node.remove();
var node = Y.get('#test-replace').get('firstChild'),
newNode = document.createElement('div');
node.replace(newNode);
node = Y.get('#test-replace').get('firstChild');
node.replace(newNode);
var elements = Y.get('#test-form').get('elements');
ArrayAssert.itemsAreEqual(Y.DOM.byId('test-form').elements, elements._nodes, "Y.get('#test-form').get('elements')");
var frag = Y.all('#test-frag p').toFrag();
Y.get('body').set('role', 'menu');
Y.get('body').set('aria-checked', true);
Assert.areEqual('true', document.body.getAttribute('aria-checked', 2), "Y.get('body').set('aria-checked', true)")
Assert.areEqual('true', Y.get('body').getAttribute('aria-checked'), "Y.get('body').set('aria-checked', true)")
Y.get('body').set('aria-checked', false);
Assert.areEqual('false', Y.get('body').get('aria-checked'), "Y.get('body').set('aria-checked', false)");
Y.all('input').each(function(n) {
Y.all('input').each(function(n) {
var mask = document.createElement('div');
mask.className = 'mask';
document.body.appendChild(mask);
var doc = Y.Node.get('document');
Y.DOM.setStyle(mask, 'opacity', 0.4);
Assert.areEqual(document.documentElement.scrollLeft, doc.get('docScrollX'), 'doc.get("docScrollX")');
Assert.areEqual(document.documentElement.scrollTop, doc.get('docScrollY'), 'doc.get("docScrollY")');
mask.className = '';
var node = Y.one('#test-nodes'),
nodelist = node.all('li');
nodelist.item(1).remove();
nodelist = Y.all('#test-nodes li');
nodelist.item(1).remove();
var node = Y.DOM.byId('test:colon');
node = Y.DOM.byId('_funky:id{$400}');
var node = Y.DOM.byId('test:colon');
Y.one(node).all('h2')._nodes,
node = Y.DOM.byId('_funky:id{$400}');
Y.one(node).all('h2')._nodes,
var parent = Y.one('#test-nodes > ol'),
children = parent.get('children');
children.item(2).siblings()._nodes,
"children.item(2).siblings()"
children.item(2).siblings('li')._nodes,
"children.item(2).siblings('li')"
children.addClass('bar');
children.item(1).removeClass('bar');
var elements = Y.DOM.byId('test-swap').getElementsByTagName('li'),
nodes = Y.all('#test-swap li');
Y.Test.Runner.add(suite);
Y.on('load', function() {