1
0
mirror of https://github.com/DataTables/DataTables.git synced 2024-11-30 12:24:10 +01:00
DataTables/media/unit_testing/tests_onhold/3_ajax/fnInitComplete.js

100 lines
2.1 KiB
JavaScript

// DATA_TEMPLATE: empty_table
oTest.fnStart( "fnInitComplete" );
/* Fairly boring function compared to the others! */
$(document).ready( function () {
/* Check the default */
var oTable = $('#example').dataTable( {
"sAjaxSource": "../../../examples/examples_support/json_source.txt"
} );
var oSettings = oTable.fnSettings();
var mPass;
oTest.fnWaitTest(
"Default should be null",
null,
function () { return oSettings.fnInitComplete == null; }
);
oTest.fnWaitTest(
"Two arguments passed (for Ajax!)",
function () {
oSession.fnRestore();
mPass = -1;
$('#example').dataTable( {
"sAjaxSource": "../../../examples/examples_support/json_source.txt",
"fnInitComplete": function ( ) {
mPass = arguments.length;
}
} );
},
function () { return mPass == 2; }
);
oTest.fnWaitTest(
"That one argument is the settings object",
function () {
oSession.fnRestore();
oTable = $('#example').dataTable( {
"sAjaxSource": "../../../examples/examples_support/json_source.txt",
"fnInitComplete": function ( oSettings ) {
mPass = oSettings;
}
} );
},
function () { return oTable.fnSettings() == mPass; }
);
oTest.fnWaitTest(
"fnInitComplete called once on first draw",
function () {
oSession.fnRestore();
mPass = 0;
$('#example').dataTable( {
"sAjaxSource": "../../../examples/examples_support/json_source.txt",
"fnInitComplete": function ( ) {
mPass++;
}
} );
},
function () { return mPass == 1; }
);
oTest.fnWaitTest(
"fnInitComplete never called there after",
function () {
$('#example_next').click();
$('#example_next').click();
$('#example_next').click();
},
function () { return mPass == 1; }
);
oTest.fnWaitTest(
"10 rows in the table on complete",
function () {
oSession.fnRestore();
mPass = 0;
$('#example').dataTable( {
"sAjaxSource": "../../../examples/examples_support/json_source.txt",
"fnInitComplete": function ( ) {
mPass = $('#example tbody tr').length;
}
} );
},
function () { return mPass == 10; }
);
oTest.fnComplete();
} );