JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
vanilla ckeditor-3.0
[ckeditor.git] / _source / tests / core / dom / document.html
diff --git a/_source/tests/core/dom/document.html b/_source/tests/core/dom/document.html
new file mode 100644 (file)
index 0000000..ce55ca3
--- /dev/null
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r
+<html xmlns="http://www.w3.org/1999/xhtml">\r
+<head>\r
+       <title>CKEDITOR.dom.document</title>\r
+       <link rel="stylesheet" type="text/css" href="../../test.css" />\r
+       <script type="text/javascript" src="../../../ckeditor.js"></script>\r
+       <script type="text/javascript" src="../../test.js"></script>\r
+       <script type="text/javascript">\r
+       //<![CDATA[\r
+\r
+CKEDITOR.test.addTestCase( (function()\r
+{\r
+       // Local reference to the "assert" object.\r
+       var assert = CKEDITOR.test.assert,\r
+               arrayAssert = YAHOO.util.ArrayAssert;\r
+\r
+       return {\r
+               test_$ : function()\r
+               {\r
+                       var doc = new CKEDITOR.dom.document( document );\r
+                       assert.areSame( document, doc.$ );\r
+               },\r
+\r
+               test_appendStyleSheet : function()\r
+               {\r
+                       var cssUrl = CKEDITOR.basePath + '_tests/';\r
+                       cssUrl += '_assets/sample.css';\r
+\r
+                       var doc = new CKEDITOR.dom.document( document );\r
+                       doc.appendStyleSheet( cssUrl );\r
+\r
+                       var links = document.getElementsByTagName( 'link' );\r
+\r
+                       for ( var i = 0 ; i < links.length ; i++ )\r
+                       {\r
+                               if ( links[i].href == cssUrl )\r
+                                       return ;\r
+                       }\r
+\r
+                       assert.fail( 'The link element was not found' );\r
+               },\r
+\r
+               test_equals1 : function()\r
+               {\r
+                       // Actually checks the real need for equals().\r
+                       var doc1 = new CKEDITOR.dom.document( document );\r
+                       assert.isFalse( doc1 == document );\r
+               },\r
+\r
+               test_equals2 : function()\r
+               {\r
+                       // Actually checks the real need for equals().\r
+                       var doc1 = new CKEDITOR.dom.document( document );\r
+                       var doc2 = new CKEDITOR.dom.document( document );\r
+                       assert.isFalse( doc1 == doc2, 'doc1 == doc2' );\r
+               },\r
+\r
+               test_equals3 : function()\r
+               {\r
+                       var doc1 = new CKEDITOR.dom.document( document );\r
+                       var doc2 = new CKEDITOR.dom.document( document );\r
+                       assert.isTrue( doc1.equals( doc2 ), 'doc1.equals( doc2 )' );\r
+                       assert.isTrue( doc2.equals( doc1 ), 'doc2.equals( doc1 )' );\r
+               },\r
+\r
+               test_getById1 : function()\r
+               {\r
+                       var doc = new CKEDITOR.dom.document( document );\r
+                       var element = doc.getById( 'test1' );\r
+                       assert.areSame( document.getElementById( 'test1' ), element.$ );\r
+               },\r
+\r
+               test_getById2 : function()\r
+               {\r
+                       var doc = new CKEDITOR.dom.document( document );\r
+                       var element = doc.getById( 'test_invalid' );\r
+                       assert.isNull( element );\r
+               },\r
+\r
+               test_getHead : function()\r
+               {\r
+                       var doc = new CKEDITOR.dom.document( document );\r
+                       assert.areSame( document.getElementsByTagName( 'head' )[0], doc.getHead().$ );\r
+               },\r
+\r
+               test_getBody : function()\r
+               {\r
+                       var doc = new CKEDITOR.dom.document( document );\r
+                       assert.areSame( document.body, doc.getBody().$, '1st call failed' );\r
+                       assert.areSame( document.body, doc.getBody().$, '2nd call failed' );\r
+               },\r
+               test_createText : function()\r
+               {\r
+                       var doc = new CKEDITOR.dom.document( document ), contentText = 'text content';\r
+                       var textNode = doc.createText( contentText );\r
+                       assert.areSame( contentText, textNode.getText(),\r
+                               'Create text node content doesn\'t match.' );\r
+               },\r
+\r
+               test_getByAddress1 : function()\r
+               {\r
+                       var doc = new CKEDITOR.dom.document( document );\r
+                       var node = doc.getByAddress( [ 1, 1, 0, 1, 0, 0 ] );\r
+                       assert.areSame( 'target', node.getText(),\r
+                               'Addressing target doesn\'t match.' );\r
+               },\r
+\r
+               test_getElementsByTag : function()\r
+               {\r
+                       var nodeList = new CKEDITOR.dom.document( document ).getElementsByTag( 'span' ),\r
+                               results = [];\r
+                       for( var i = 0; i < nodeList.count(); i++ ){\r
+                               results.push( nodeList.getItem( i ).$ );\r
+                       }\r
+                       arrayAssert.itemsAreEqual( results, document.getElementsByTagName( 'span' ) );\r
+               },\r
+\r
+               name : document.title\r
+       };\r
+})() );\r
+\r
+       //]]>\r
+       </script>\r
+</head>\r
+<body><div id="test1"></div><div><p>text<span><b id="addressTarget1">target</b>text</span>text</p></div><span ><b id="addressTarget2">target</b></span></body>\r
+</html>\r