/[projects]/misc/horsensspejder-web/jquery/DataTables-1.9.4/media/unit_testing/tests_onhold/2_js/fnFooterCallback.js
ViewVC logotype

Contents of /misc/horsensspejder-web/jquery/DataTables-1.9.4/media/unit_testing/tests_onhold/2_js/fnFooterCallback.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: 4802 byte(s)
initial import
1 // DATA_TEMPLATE: js_data
2 oTest.fnStart( "fnFooterCallback" );
3
4 $(document).ready( function () {
5 /* Check the default */
6 var oTable = $('#example').dataTable( {
7 "aaData": gaaData
8 } );
9 var oSettings = oTable.fnSettings();
10 var mPass;
11
12 oTest.fnTest(
13 "Default should be null",
14 null,
15 function () { return oSettings.fnFooterCallback == null; }
16 );
17
18
19 oTest.fnTest(
20 "Five arguments passed",
21 function () {
22 oSession.fnRestore();
23
24 mPass = -1;
25 $('#example').dataTable( {
26 "aaData": gaaData,
27 "fnFooterCallback": function ( ) {
28 mPass = arguments.length;
29 }
30 } );
31 },
32 function () { return mPass == 5; }
33 );
34
35
36 oTest.fnTest(
37 "fnRowCallback called once per draw",
38 function () {
39 oSession.fnRestore();
40
41 mPass = 0;
42 $('#example').dataTable( {
43 "aaData": gaaData,
44 "fnFooterCallback": function ( nFoot, aasData, iStart, iEnd, aiDisplay ) {
45 mPass++;
46 }
47 } );
48 },
49 function () { return mPass == 1; }
50 );
51
52 oTest.fnTest(
53 "fnRowCallback called on paging (i.e. another draw)",
54 function () { $('#example_next').click(); },
55 function () { return mPass == 2; }
56 );
57
58
59 oTest.fnTest(
60 "fnRowCallback allows us to alter row information",
61 function () {
62 oSession.fnRestore();
63 $('#example').dataTable( {
64 "aaData": gaaData,
65 "fnFooterCallback": function ( nFoot, aasData, iStart, iEnd, aiDisplay ) {
66 nFoot.getElementsByTagName('th')[0].innerHTML = "Displaying "+(iEnd-iStart)+" records";
67 }
68 } );
69 },
70 function () { return $('#example tfoot th:eq(0)').html() == "Displaying 10 records"; }
71 );
72
73
74 oTest.fnTest(
75 "Data array has length matching original data",
76 function () {
77 oSession.fnRestore();
78
79 mPass = true;
80 $('#example').dataTable( {
81 "aaData": gaaData,
82 "fnFooterCallback": function ( nFoot, aasData, iStart, iEnd, aiDisplay ) {
83 if ( aasData.length != 57 )
84 {
85 mPass = false;
86 }
87 }
88 } );
89 },
90 function () { return mPass; }
91 );
92
93 oTest.fnTest(
94 "Data array's column lengths match original data",
95 function () {
96 oSession.fnRestore();
97
98 mPass = true;
99 $('#example').dataTable( {
100 "aaData": gaaData,
101 "fnFooterCallback": function ( nFoot, aasData, iStart, iEnd, aiDisplay ) {
102 for ( var i=0, iLen=aasData.length ; i<iLen ; i++ )
103 {
104 if ( aasData[i].length != 5 )
105 {
106 mPass = false;
107 }
108 }
109 }
110 } );
111 },
112 function () { return mPass; }
113 );
114
115
116 oTest.fnTest(
117 "iStart correct on first page",
118 function () {
119 oSession.fnRestore();
120
121 mPass = true;
122 $('#example').dataTable( {
123 "aaData": gaaData,
124 "fnFooterCallback": function ( nFoot, aasData, iStart, iEnd, aiDisplay ) {
125 if ( iStart != 0 )
126 {
127 mPass = false;
128 }
129 }
130 } );
131 },
132 function () { return mPass; }
133 );
134
135
136 oTest.fnTest(
137 "iStart correct on second page",
138 function () {
139 oSession.fnRestore();
140
141 mPass = false;
142 $('#example').dataTable( {
143 "aaData": gaaData,
144 "fnFooterCallback": function ( nFoot, aasData, iStart, iEnd, aiDisplay ) {
145 if ( iStart == 10 )
146 {
147 mPass = true;
148 }
149 }
150 } );
151 $('#example_next').click();
152 },
153 function () { return mPass; }
154 );
155
156
157 oTest.fnTest(
158 "iEnd correct on first page",
159 function () {
160 oSession.fnRestore();
161
162 mPass = true;
163 $('#example').dataTable( {
164 "aaData": gaaData,
165 "fnFooterCallback": function ( nFoot, aasData, iStart, iEnd, aiDisplay ) {
166 if ( iEnd != 10 )
167 {
168 mPass = false;
169 }
170 }
171 } );
172 },
173 function () { return mPass; }
174 );
175
176
177 oTest.fnTest(
178 "iEnd correct on second page",
179 function () {
180 oSession.fnRestore();
181
182 mPass = false;
183 $('#example').dataTable( {
184 "aaData": gaaData,
185 "fnFooterCallback": function ( nFoot, aasData, iStart, iEnd, aiDisplay ) {
186 if ( iEnd == 20 )
187 {
188 mPass = true;
189 }
190 }
191 } );
192 $('#example_next').click();
193 },
194 function () { return mPass; }
195 );
196
197
198 oTest.fnTest(
199 "aiDisplay length is full data when not filtered",
200 function () {
201 oSession.fnRestore();
202
203 mPass = false;
204 $('#example').dataTable( {
205 "aaData": gaaData,
206 "fnFooterCallback": function ( nFoot, aasData, iStart, iEnd, aiDisplay ) {
207 if ( aiDisplay.length == 57 )
208 {
209 mPass = true;
210 }
211 }
212 } );
213 },
214 function () { return mPass; }
215 );
216
217 oTest.fnTest(
218 "aiDisplay length is 9 when filtering on 'Mozilla'",
219 function () {
220 oSession.fnRestore();
221
222 mPass = false;
223 oTable = $('#example').dataTable( {
224 "aaData": gaaData,
225 "fnFooterCallback": function ( nFoot, aasData, iStart, iEnd, aiDisplay ) {
226 if ( aiDisplay.length == 9 )
227 {
228 mPass = true;
229 }
230 }
231 } );
232 oTable.fnFilter( "Mozilla" );
233 },
234 function () { return mPass; }
235 );
236
237
238
239 oTest.fnComplete();
240 } );

  ViewVC Help
Powered by ViewVC 1.1.20