1 // DATA_TEMPLATE: empty_table
2 oTest.fnStart( "bProcessing" );
4 /* It's actually a bit hard to set this one due to the fact that it will only be shown
5 * when DataTables is doing some kind of processing. The server-side processing is a bit
6 * better to test this than here - so we just the interal functions to enable it and check
10 $(document).ready( function () {
11 /* Check the default */
12 var oTable = $('#example').dataTable( {
13 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
15 { "mData": "engine" },
16 { "mData": "browser" },
17 { "mData": "platform" },
18 { "mData": "version" },
22 var oSettings = oTable.fnSettings();
25 "Processing is off by default",
27 function () { return oSettings.oFeatures.bProcessing == false; }
31 "Processing div is not in the DOM",
32 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
33 function () { return document.getElementById('example_processing') == null; }
37 "Processing div cannot be shown",
38 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
39 function () { return document.getElementById('example_processing') == null; }
43 "Processing div cannot be hidden",
44 function () { oTable.oApi._fnProcessingDisplay( oSettings, false ); },
45 function () { return document.getElementById('example_processing') == null; }
49 /* Check can disable */
51 "Processing can be enabled",
54 oTable = $('#example').dataTable( {
55 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
57 { "mData": "engine", "aTargets": [0] },
58 { "mData": "browser", "aTargets": [1] },
59 { "mData": "platform", "aTargets": [2] },
60 { "mData": "version", "aTargets": [3] },
61 { "mData": "grade", "aTargets": [4] }
65 oSettings = oTable.fnSettings();
67 function () { return oSettings.oFeatures.bProcessing == true; }
71 "Processing div is in the DOM",
72 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
73 function () { return document.getElementById('example_processing'); }
77 "Processing div is hidden by default",
78 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
79 function () { return document.getElementById('example_processing').style.visibility = "hidden"; }
83 "Processing div can be shown",
84 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
85 function () { return document.getElementById('example_processing').style.visibility = "visible"; }
89 "Processing div can be hidden",
90 function () { oTable.oApi._fnProcessingDisplay( oSettings, false ); },
91 function () { return document.getElementById('example_processing').style.visibility = "hidden"; }
94 /* Enable makes no difference */
96 "Processing disabled override",
99 oTable = $('#example').dataTable( {
100 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
102 { "mData": "engine", "aTargets": [0] },
103 { "mData": "browser", "aTargets": [1] },
104 { "mData": "platform", "aTargets": [2] },
105 { "mData": "version", "aTargets": [3] },
106 { "mData": "grade", "aTargets": [4] }
110 oSettings = oTable.fnSettings();
112 function () { return oSettings.oFeatures.bProcessing == false; }
116 "Processing div is not in the DOM",
117 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
118 function () { return document.getElementById('example_processing') == null; }