Add datatables-1.9.4 and jquery-1.10.2 libraries
[proteocache.git] / webapp / resources / datatables-1.9.4 / media / unit_testing / tests_onhold / 4_server-side / bProcessing.js
1 // DATA_TEMPLATE: empty_table
2 oTest.fnStart( "bProcessing" );
3
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
7  * that it is available
8  */
9
10 $(document).ready( function () {
11         /* Check the default */
12         var oTable = $('#example').dataTable( {
13                 "bServerSide": true,
14                 "sAjaxSource": "../../../examples/server_side/scripts/server_processing.php"
15         } );
16         var oSettings = oTable.fnSettings();
17         
18         oTest.fnWaitTest( 
19                 "Processing is off by default",
20                 null,
21                 function () { return oSettings.oFeatures.bProcessing == false; }
22         );
23         
24         oTest.fnWaitTest( 
25                 "Processing div is not in the DOM",
26                 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
27                 function () { return document.getElementById('example_processing') == null; }
28         );
29         
30         oTest.fnWaitTest( 
31                 "Processing div cannot be shown",
32                 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
33                 function () { return document.getElementById('example_processing') == null; }
34         );
35         
36         oTest.fnWaitTest( 
37                 "Processing div cannot be hidden",
38                 function () { oTable.oApi._fnProcessingDisplay( oSettings, false ); },
39                 function () { return document.getElementById('example_processing') == null; }
40         );
41         
42         
43         /* Check can disable */
44         oTest.fnWaitTest( 
45                 "Processing can be enabled",
46                 function () {
47                         oSession.fnRestore();
48                         oTable = $('#example').dataTable( {
49                                 "bServerSide": true,
50                 "sAjaxSource": "../../../examples/server_side/scripts/server_processing.php",
51                                 "bProcessing": true
52                         } );
53                         oSettings = oTable.fnSettings();
54                 },
55                 function () { return oSettings.oFeatures.bProcessing == true; }
56         );
57         
58         oTest.fnWaitTest( 
59                 "Processing div is in the DOM",
60                 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
61                 function () { return document.getElementById('example_processing'); }
62         );
63         
64         oTest.fnWaitTest( 
65                 "Processing div is hidden by default",
66                 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
67                 function () { return document.getElementById('example_processing').style.visibility = "hidden"; }
68         );
69         
70         oTest.fnWaitTest( 
71                 "Processing div can be shown",
72                 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
73                 function () { return document.getElementById('example_processing').style.visibility = "visible"; }
74         );
75         
76         oTest.fnWaitTest( 
77                 "Processing div can be hidden",
78                 function () { oTable.oApi._fnProcessingDisplay( oSettings, false ); },
79                 function () { return document.getElementById('example_processing').style.visibility = "hidden"; }
80         );
81         
82         /* Enable makes no difference */
83         oTest.fnWaitTest( 
84                 "Processing disabled override",
85                 function () {
86                         oSession.fnRestore();
87                         oTable = $('#example').dataTable( {
88                                 "bServerSide": true,
89                 "sAjaxSource": "../../../examples/server_side/scripts/server_processing.php",
90                                 "bProcessing": false
91                         } );
92                         oSettings = oTable.fnSettings();
93                 },
94                 function () { return oSettings.oFeatures.bProcessing == false; }
95         );
96         
97         oTest.fnWaitTest( 
98                 "Processing div is not in the DOM",
99                 function () { oTable.oApi._fnProcessingDisplay( oSettings, true ); },
100                 function () { return document.getElementById('example_processing') == null; }
101         );
102         
103         
104         
105         oTest.fnComplete();
106 } );