/[projects]/misc/horsensspejder-web/jquery/DataTables-1.9.4/media/unit_testing/tests_onhold/1_dom/sDom.js
ViewVC logotype

Contents of /misc/horsensspejder-web/jquery/DataTables-1.9.4/media/unit_testing/tests_onhold/1_dom/sDom.js

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2125 - (show annotations) (download) (as text)
Wed Mar 12 19:30:05 2014 UTC (10 years, 3 months ago) by torben
File MIME type: application/javascript
File size: 8253 byte(s)
initial import
1 // DATA_TEMPLATE: dom_data
2 oTest.fnStart( "sDom" );
3
4 /* This is going to be brutal on the browser! There is a lot that can be tested here... */
5
6 $(document).ready( function () {
7 /* Check the default */
8 var oTable = $('#example').dataTable();
9 var oSettings = oTable.fnSettings();
10
11 oTest.fnTest(
12 "Default DOM varaible",
13 null,
14 function () { return oSettings.sDom == "lfrtip"; }
15 );
16
17 oTest.fnTest(
18 "Default DOM in document",
19 null,
20 function () {
21 var nNodes = $('#demo div, #demo table');
22 var nWrapper = document.getElementById('example_wrapper');
23 var nLength = document.getElementById('example_length');
24 var nFilter = document.getElementById('example_filter');
25 var nInfo = document.getElementById('example_info');
26 var nPaging = document.getElementById('example_paginate');
27 var nTable = document.getElementById('example');
28
29 var bReturn =
30 nNodes[0] == nWrapper &&
31 nNodes[1] == nLength &&
32 nNodes[2] == nFilter &&
33 nNodes[3] == nTable &&
34 nNodes[4] == nInfo &&
35 nNodes[5] == nPaging;
36 return bReturn;
37 }
38 );
39
40 oTest.fnTest(
41 "Check example 1 in code propagates",
42 function () {
43 oSession.fnRestore();
44 oTable = $('#example').dataTable( {
45 "sDom": '<"wrapper"flipt>'
46 } );
47 oSettings = oTable.fnSettings();
48 },
49 function () { return oSettings.sDom == '<"wrapper"flipt>'; }
50 );
51
52 oTest.fnTest(
53 "Check example 1 in DOM",
54 null,
55 function () {
56 var jqNodes = $('#demo div, #demo table');
57 var nNodes = [];
58
59 /* Strip the paging nodes */
60 for ( var i=0, iLen=jqNodes.length ; i<iLen ; i++ )
61 {
62 if ( jqNodes[i].getAttribute('id') != "example_previous" &&
63 jqNodes[i].getAttribute('id') != "example_next" )
64 {
65 nNodes.push( jqNodes[i] );
66 }
67 }
68
69 var nWrapper = document.getElementById('example_wrapper');
70 var nLength = document.getElementById('example_length');
71 var nFilter = document.getElementById('example_filter');
72 var nInfo = document.getElementById('example_info');
73 var nPaging = document.getElementById('example_paginate');
74 var nTable = document.getElementById('example');
75 var nCustomWrapper = $('div.wrapper')[0];
76
77 var bReturn =
78 nNodes[0] == nWrapper &&
79 nNodes[1] == nCustomWrapper &&
80 nNodes[2] == nFilter &&
81 nNodes[3] == nLength &&
82 nNodes[4] == nInfo &&
83 nNodes[5] == nPaging &&
84 nNodes[6] == nTable;
85 return bReturn;
86 }
87 );
88
89 oTest.fnTest(
90 "Check example 2 in DOM",
91 function () {
92 oSession.fnRestore();
93 $('#example').dataTable( {
94 "sDom": '<lf<t>ip>'
95 } );
96 },
97 function () {
98 var jqNodes = $('#demo div, #demo table');
99 var nNodes = [];
100 var nCustomWrappers = []
101
102 /* Strip the paging nodes */
103 for ( var i=0, iLen=jqNodes.length ; i<iLen ; i++ )
104 {
105 if ( jqNodes[i].getAttribute('id') != "example_previous" &&
106 jqNodes[i].getAttribute('id') != "example_next" )
107 {
108 nNodes.push( jqNodes[i] );
109 }
110
111 /* Only the two custom divs don't have class names */
112 if ( jqNodes[i].className == "" )
113 {
114 nCustomWrappers.push( jqNodes[i] );
115 }
116 }
117
118 var nWrapper = document.getElementById('example_wrapper');
119 var nLength = document.getElementById('example_length');
120 var nFilter = document.getElementById('example_filter');
121 var nInfo = document.getElementById('example_info');
122 var nPaging = document.getElementById('example_paginate');
123 var nTable = document.getElementById('example');
124
125 var bReturn =
126 nNodes[0] == nWrapper &&
127 nNodes[1] == nCustomWrappers[0] &&
128 nNodes[2] == nLength &&
129 nNodes[3] == nFilter &&
130 nNodes[4] == nCustomWrappers[1] &&
131 nNodes[5] == nTable &&
132 nNodes[6] == nInfo &&
133 nNodes[7] == nPaging;
134 return bReturn;
135 }
136 );
137
138 oTest.fnTest(
139 "Check no length element",
140 function () {
141 oSession.fnRestore();
142 $('#example').dataTable( {
143 "sDom": 'frtip'
144 } );
145 },
146 function () {
147 var nNodes = $('#demo div, #demo table');
148 var nWrapper = document.getElementById('example_wrapper');
149 var nLength = document.getElementById('example_length');
150 var nFilter = document.getElementById('example_filter');
151 var nInfo = document.getElementById('example_info');
152 var nPaging = document.getElementById('example_paginate');
153 var nTable = document.getElementById('example');
154
155 var bReturn =
156 nNodes[0] == nWrapper &&
157 null == nLength &&
158 nNodes[1] == nFilter &&
159 nNodes[2] == nTable &&
160 nNodes[3] == nInfo &&
161 nNodes[4] == nPaging;
162 return bReturn;
163 }
164 );
165
166 oTest.fnTest(
167 "Check no filter element",
168 function () {
169 oSession.fnRestore();
170 $('#example').dataTable( {
171 "sDom": 'lrtip'
172 } );
173 },
174 function () {
175 var nNodes = $('#demo div, #demo table');
176 var nWrapper = document.getElementById('example_wrapper');
177 var nLength = document.getElementById('example_length');
178 var nFilter = document.getElementById('example_filter');
179 var nInfo = document.getElementById('example_info');
180 var nPaging = document.getElementById('example_paginate');
181 var nTable = document.getElementById('example');
182
183 var bReturn =
184 nNodes[0] == nWrapper &&
185 nNodes[1] == nLength &&
186 null == nFilter &&
187 nNodes[2] == nTable &&
188 nNodes[3] == nInfo &&
189 nNodes[4] == nPaging;
190 return bReturn;
191 }
192 );
193
194 /* Note we don't test for no table as this is not supported (and it would be fairly daft! */
195
196 oTest.fnTest(
197 "Check no info element",
198 function () {
199 oSession.fnRestore();
200 $('#example').dataTable( {
201 "sDom": 'lfrtp'
202 } );
203 },
204 function () {
205 var nNodes = $('#demo div, #demo table');
206 var nWrapper = document.getElementById('example_wrapper');
207 var nLength = document.getElementById('example_length');
208 var nFilter = document.getElementById('example_filter');
209 var nInfo = document.getElementById('example_info');
210 var nPaging = document.getElementById('example_paginate');
211 var nTable = document.getElementById('example');
212
213 var bReturn =
214 nNodes[0] == nWrapper &&
215 nNodes[1] == nLength &&
216 nNodes[2] == nFilter &&
217 nNodes[3] == nTable &&
218 null == nInfo &&
219 nNodes[4] == nPaging;
220 return bReturn;
221 }
222 );
223
224 oTest.fnTest(
225 "Check no paging element",
226 function () {
227 oSession.fnRestore();
228 $('#example').dataTable( {
229 "sDom": 'lfrti'
230 } );
231 },
232 function () {
233 var nNodes = $('#demo div, #demo table');
234 var nWrapper = document.getElementById('example_wrapper');
235 var nLength = document.getElementById('example_length');
236 var nFilter = document.getElementById('example_filter');
237 var nInfo = document.getElementById('example_info');
238 var nPaging = document.getElementById('example_paginate');
239 var nTable = document.getElementById('example');
240
241 var bReturn =
242 nNodes[0] == nWrapper &&
243 nNodes[1] == nLength &&
244 nNodes[2] == nFilter &&
245 nNodes[3] == nTable &&
246 nNodes[4] == nInfo &&
247 null == nPaging;
248 return bReturn;
249 }
250 );
251
252 oTest.fnTest(
253 "Element with an id",
254 function () {
255 $('#example').dataTable( {
256 "bDestroy": true,
257 "sDom": '<"#test"lf>rti'
258 } );
259 },
260 function () {
261 return $('#test').length == 1;
262 }
263 );
264
265 oTest.fnTest(
266 "Element with an id and a class",
267 function () {
268 $('#example').dataTable( {
269 "bDestroy": true,
270 "sDom": '<"#test.classTest"lf>rti'
271 } );
272 },
273 function () {
274 return ($('#test').length == 1 && $('#test')[0].className == "classTest");
275 }
276 );
277
278 oTest.fnTest(
279 "Element with just a class",
280 function () {
281 $('#example').dataTable( {
282 "bDestroy": true,
283 "sDom": '<"classTest"lf>rti'
284 } );
285 },
286 function () {
287 return ($('div.classTest').length == 1 );
288 }
289 );
290
291 oTest.fnTest(
292 "Two elements with an id",
293 function () {
294 $('#example').dataTable( {
295 "bDestroy": true,
296 "sDom": '<"#test1"lf>rti<"#test2"lf>'
297 } );
298 },
299 function () {
300 return ($('#test1').length == 1 && $('#test2').length == 1);
301 }
302 );
303
304 oTest.fnTest(
305 "Two elements with an id and one with a class",
306 function () {
307 $('#example').dataTable( {
308 "bDestroy": true,
309 "sDom": '<"#test1"lf>rti<"#test2.classTest"lf>'
310 } );
311 },
312 function () {
313 return ($('#test1').length == 1 && $('#test2').length == 1 && $('div.classTest').length == 1);
314 }
315 );
316
317
318 oTest.fnComplete();
319 } );

Properties

Name Value
svn:executable *

  ViewVC Help
Powered by ViewVC 1.1.20