1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
describe( "preDrawCallback option", function() {
dt.libs( {
js: [ 'jquery', 'datatables' ],
css: [ 'datatables' ]
} );
describe("Check the defaults", function () {
dt.html( 'basic' );
it("Default should not be true", function () {
$('#example').dataTable();
expect($.fn.dataTable.defaults.fnPreDrawCallback).not.toBe(true);
//$.fn.DataTable.defaults
});
dt.html( 'basic' );
it("One argument passed", function () {
test = -1;
$('#example').dataTable( {
"preDrawCallback": function() {
test = arguments.length;
}
});
expect(test == 1).toBe(true);
});
dt.html( 'basic' );
it("That one argument is the settings object", function () {
$('#example').dataTable( {
"preDrawCallback": function (settings){
test = settings;
}
});
expect($('#example').DataTable().settings()[0] == test).toBe(true);
});
dt.html( 'basic' );
it("preDrawCallback called once on first draw", function () {
test = 0;
$('#example').dataTable( {
"preDrawCallback": function(){
test++;
}
});
expect(test == 1).toBe(true);
});
it("preDrawCallback called once each draw thereafter as well", function () {
$('#example_next').click();
$('#example_next').click();
$('#example_next').click();
expect(test == 4).toBe(true);
});
dt.html( 'basic' );
it("Able to cancel draw", function () {
test = 0;
$('#example').dataTable( {
"preDrawCallback": function( settings ) {
return false;
},
"drawCallback": function(){
test++;
}
} );
expect(test === 0).toBe(true);
});
});
});
|