JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
cb4a3692f56b4ca2b1f20c849c40758f84288ef5
[ckeditor.git] / _source / tests / core / ajax.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r
2 <html xmlns="http://www.w3.org/1999/xhtml">\r
3 <head>\r
4         <title>CKEDITOR.ajax</title>\r
5         <link rel="stylesheet" type="text/css" href="../test.css" />\r
6         <script type="text/javascript" src="../../ckeditor.js"></script>\r
7         <script type="text/javascript" src="../../_source/core/loader.js"></script>\r
8         <script type="text/javascript" src="../test.js"></script>\r
9         <script type="text/javascript">\r
10         //<![CDATA[\r
11 \r
12 CKEDITOR.loader.load( 'core/ajax' );\r
13 \r
14         //]]>\r
15         </script>\r
16         <script type="text/javascript">\r
17         //<![CDATA[\r
18 \r
19 CKEDITOR.test.addTestCase( (function()\r
20 {\r
21         // Local reference to the "assert" object.\r
22         var assert = CKEDITOR.test.assert;\r
23 \r
24         return {\r
25                 test_load_sync : function()\r
26                 {\r
27                         var data = CKEDITOR.ajax.load( '../_assets/sample.txt' );\r
28                         assert.areSame( 'Sample Text\r\n', data, 'The loaded data doesn\'t match' );\r
29                 },\r
30 \r
31                 test_load_sync_404 : function()\r
32                 {\r
33                         var data = CKEDITOR.ajax.load( '../_assets/404.txt' );\r
34                         assert.isNull( data );\r
35                 },\r
36 \r
37                 test_load_async : function()\r
38                 {\r
39                         var testCase = this;\r
40                         var callback = function( data )\r
41                         {\r
42                                 testCase.resume( function()\r
43                                         {\r
44                                                 assert.areSame( 'Sample Text\r\n', data, 'The loaded data doesn\'t match' );\r
45                                         } );\r
46                         };\r
47 \r
48                         CKEDITOR.ajax.load( '../_assets/sample.txt', callback );\r
49                         this.wait();\r
50                 },\r
51 \r
52                 test_load_async_404 : function()\r
53                 {\r
54                         var testCase = this;\r
55                         var callback = function( data )\r
56                         {\r
57                                 testCase.resume( function()\r
58                                         {\r
59                                                 assert.isNull( data );\r
60                                         } );\r
61                         };\r
62 \r
63                         CKEDITOR.ajax.load( '../_assets/404.txt', callback );\r
64                         this.wait();\r
65                 },\r
66 \r
67                 test_loadXml_sync : function()\r
68                 {\r
69                         var data = CKEDITOR.ajax.loadXml( '../_assets/sample.xml' );\r
70                         assert.isInstanceOf( CKEDITOR.xml, data );\r
71                         assert.isNotNull( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (null)' );\r
72                         assert.isNotUndefined( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (undefined)' );\r
73                 },\r
74 \r
75                 test_loadXml_sync_404 : function()\r
76                 {\r
77                         var data = CKEDITOR.ajax.loadXml( '../_assets/404.xml' );\r
78                         assert.isNull( data );\r
79                 },\r
80 \r
81                 test_loadXml_async : function()\r
82                 {\r
83                         var testCase = this;\r
84                         var callback = function( data )\r
85                         {\r
86                                 testCase.resume( function()\r
87                                         {\r
88                                                 assert.isInstanceOf( CKEDITOR.xml, data );\r
89                                                 assert.isNotNull( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (null)' );\r
90                                                 assert.isNotUndefined( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (undefined)' );\r
91                                         } );\r
92                         };\r
93 \r
94                         CKEDITOR.ajax.loadXml( '../_assets/sample.xml', callback );\r
95                         this.wait();\r
96                 },\r
97 \r
98                 test_loadXml_async_404 : function()\r
99                 {\r
100                         var testCase = this;\r
101                         var callback = function( data )\r
102                         {\r
103                                 testCase.resume( function()\r
104                                         {\r
105                                                 assert.isNull( data );\r
106                                         } );\r
107                         };\r
108 \r
109                         CKEDITOR.ajax.loadXml( '../_assets/404.xml', callback );\r
110                         this.wait();\r
111                 },\r
112 \r
113                 test_loadXml_sync_txt : function()\r
114                 {\r
115                         var data = CKEDITOR.ajax.loadXml( '../_assets/sample_xml.txt' );\r
116                         assert.isInstanceOf( CKEDITOR.xml, data );\r
117                         assert.isNotNull( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (null)' );\r
118                         assert.isNotUndefined( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (undefined)' );\r
119                 },\r
120 \r
121                 test_loadXml_async_txt : function()\r
122                 {\r
123                         var testCase = this;\r
124                         var callback = function( data )\r
125                         {\r
126                                 testCase.resume( function()\r
127                                         {\r
128                                                 assert.isInstanceOf( CKEDITOR.xml, data );\r
129                                                 assert.isNotNull( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (null)' );\r
130                                                 assert.isNotUndefined( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (undefined)' );\r
131                                         } );\r
132                         };\r
133 \r
134                         CKEDITOR.ajax.loadXml( '../_assets/sample_xml.txt', callback );\r
135                         this.wait();\r
136                 },\r
137 \r
138                 test_parseXml : function()\r
139                 {\r
140                         var data = new CKEDITOR.xml( '<?xml version="1.0" encoding="utf-8" ?><list><item id="test1" /><item id="test2" /></list>' );\r
141                         assert.isInstanceOf( CKEDITOR.xml, data );\r
142                         assert.isNotNull( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (null)' );\r
143                         assert.isNotUndefined( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (undefined)' );\r
144                 },\r
145 \r
146                 test_parseXml_nbsp : function()\r
147                 {\r
148                         var data = new CKEDITOR.xml( '<?xml version="1.0" encoding="utf-8" ?><list><item id="test1">&nbsp;</item><item id="test2" /></list>' );\r
149                         assert.isInstanceOf( CKEDITOR.xml, data );\r
150                         assert.isNotNull( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (null)' );\r
151                         assert.isNotUndefined( data.selectSingleNode( '//list/item' ), 'The loaded data doesn\'t match (undefined)' );\r
152                 },\r
153 \r
154                 name : document.title\r
155         };\r
156 })() );\r
157 \r
158         //]]>\r
159         </script>\r
160 </head>\r
161 <body>\r
162 </body>\r
163 </html>\r