Вход Регистрация
Файл: datatables/media/unit_testing/tests_onhold/5_ajax_objects/fnHeaderCallback.js
Строк: 230
<?php
// DATA_TEMPLATE: empty_table
oTest.fnStart"fnHeaderCallback" );

$(
document).ready( function () {
    
/* Check the default */
    
var oTable = $('#example').dataTable( {
        
"sAjaxSource""../../../examples/ajax/sources/objects.txt",
        
"aoColumns": [
            { 
"mData""engine" },
            { 
"mData""browser" },
            { 
"mData""platform" },
            { 
"mData""version" },
            { 
"mData""grade" }
        ]
    } );
    var 
oSettings oTable.fnSettings();
    var 
mPassbInit;
    
    
oTest.fnWaitTest
        
"Default should be null",
        
null,
        function () { return 
oSettings.fnHeaderCallback == null; }
    );
    
    
    
oTest.fnWaitTest
        
"Five arguments passed",
        function () {
            
oSession.fnRestore();
            
            
mPass = -1;
            
bInit false;
            $(
'#example').dataTable( {
                
"sAjaxSource""../../../examples/ajax/sources/objects.txt",
                
"aoColumnDefs": [
                    { 
"mData""engine""aTargets": [0] },
                    { 
"mData""browser""aTargets": [1] },
                    { 
"mData""platform""aTargets": [2] },
                    { 
"mData""version""aTargets": [3] },
                    { 
"mData""grade""aTargets": [4] }
                ],
                
"fnHeaderCallback": function ( ) {
                    
mPass arguments.length;
                },
                
"fnInitComplete": function () {
                    
bInit true;
                }
            } );
        },
        function () { return 
mPass == && bInit; }
    );
    
    
    
/* The header callback is called once for the init and then when the data is added */
    
oTest.fnWaitTest
        
"fnHeaderCallback called once per draw",
        function () {
            
oSession.fnRestore();
            
            
mPass 0;
            
bInit false;
            $(
'#example').dataTable( {
                
"sAjaxSource""../../../examples/ajax/sources/objects.txt",
                
"aoColumnDefs": [
                    { 
"mData""engine""aTargets": [0] },
                    { 
"mData""browser""aTargets": [1] },
                    { 
"mData""platform""aTargets": [2] },
                    { 
"mData""version""aTargets": [3] },
                    { 
"mData""grade""aTargets": [4] }
                ],
                
"fnHeaderCallback": function ( nHeadaasDataiStartiEndaiDisplay ) {
                    
mPass++;
                },
                
"fnInitComplete": function () {
                    
bInit true;
                }
            } );
        },
        function () { return 
mPass == && bInit; }
    );
    
    
oTest.fnWaitTest
        
"fnRowCallback called on paging (i.e. another draw)",
        function () { $(
'#example_next').click(); },
        function () { return 
mPass == 3; }
    );
    
    
    
oTest.fnWaitTest
        
"fnRowCallback allows us to alter row information",
        function () {
            
oSession.fnRestore();
            $(
'#example').dataTable( {
                
"sAjaxSource""../../../examples/ajax/sources/objects.txt",
                
"aoColumnDefs": [
                    { 
"mData""engine""aTargets": [0] },
                    { 
"mData""browser""aTargets": [1] },
                    { 
"mData""platform""aTargets": [2] },
                    { 
"mData""version""aTargets": [3] },
                    { 
"mData""grade""aTargets": [4] }
                ],
                
"fnHeaderCallback": function ( nHeadaasDataiStartiEndaiDisplay ) {
                    
nHead.getElementsByTagName('th')[0].innerHTML "Displaying "+(iEnd-iStart)+" records";
                }
            } );
        },
        function () { return $(
'#example thead th:eq(0)').html() == "Displaying 10 records"; }
    );
    
    
    
oTest.fnWaitTest
        
"iStart correct on first page",
        function () {
            
oSession.fnRestore();
            
            
mPass true;
            $(
'#example').dataTable( {
                
"sAjaxSource""../../../examples/ajax/sources/objects.txt",
                
"aoColumnDefs": [
                    { 
"mData""engine""aTargets": [0] },
                    { 
"mData""browser""aTargets": [1] },
                    { 
"mData""platform""aTargets": [2] },
                    { 
"mData""version""aTargets": [3] },
                    { 
"mData""grade""aTargets": [4] }
                ],
                
"fnHeaderCallback": function ( nHeadaasDataiStartiEndaiDisplay ) {
                    if ( 
iStart != )
                    {
                        
mPass false;
                    }
                }
            } );
        },
        function () { return 
mPass; }
    );
    
    
    
oTest.fnWaitTest
        
"iStart correct on second page",
        function () {
            
oSession.fnRestore();
            
            
mPass false;
            $(
'#example').dataTable( {
                
"sAjaxSource""../../../examples/ajax/sources/objects.txt",
                
"aoColumnDefs": [
                    { 
"mData""engine""aTargets": [0] },
                    { 
"mData""browser""aTargets": [1] },
                    { 
"mData""platform""aTargets": [2] },
                    { 
"mData""version""aTargets": [3] },
                    { 
"mData""grade""aTargets": [4] }
                ],
                
"fnHeaderCallback": function ( nHeadaasDataiStartiEndaiDisplay ) {
                    if ( 
iStart == 10 )
                    {
                        
mPass true;
                    }
                },
                
"fnInitComplete": function () {
                    $(
'#example_next').click();
                }
            } );
        },
        function () { return 
mPass; }
    );
    
    
    
oTest.fnWaitTest
        
"iEnd correct on second page",
        function () {
            
oSession.fnRestore();
            
            
mPass false;
            $(
'#example').dataTable( {
                
"sAjaxSource""../../../examples/ajax/sources/objects.txt",
                
"aoColumnDefs": [
                    { 
"mData""engine""aTargets": [0] },
                    { 
"mData""browser""aTargets": [1] },
                    { 
"mData""platform""aTargets": [2] },
                    { 
"mData""version""aTargets": [3] },
                    { 
"mData""grade""aTargets": [4] }
                ],
                
"fnHeaderCallback": function ( nHeadaasDataiStartiEndaiDisplay ) {
                    if ( 
iEnd == 20 )
                    {
                        
mPass true;
                    }
                },
                
"fnInitComplete": function () {
                    $(
'#example_next').click();
                }
            } );
        },
        function () { return 
mPass; }
    );
    
    
    
oTest.fnWaitTest
        
"aiDisplay length is full data when not filtered",
        function () {
            
oSession.fnRestore();
            
            
mPass false;
            $(
'#example').dataTable( {
                
"sAjaxSource""../../../examples/ajax/sources/objects.txt",
                
"aoColumnDefs": [
                    { 
"mData""engine""aTargets": [0] },
                    { 
"mData""browser""aTargets": [1] },
                    { 
"mData""platform""aTargets": [2] },
                    { 
"mData""version""aTargets": [3] },
                    { 
"mData""grade""aTargets": [4] }
                ],
                
"fnHeaderCallback": function ( nHeadaasDataiStartiEndaiDisplay ) {
                    if ( 
aiDisplay.length == 57 )
                    {
                        
mPass true;
                    }
                }
            } );
        },
        function () { return 
mPass; }
    );
    
    
oTest.fnWaitTest
        
"aiDisplay length is 9 when filtering on 'Mozilla'",
        function () {
            
oSession.fnRestore();
            
            
mPass false;
            
oTable = $('#example').dataTable( {
                
"sAjaxSource""../../../examples/ajax/sources/objects.txt",
                
"aoColumnDefs": [
                    { 
"mData""engine""aTargets": [0] },
                    { 
"mData""browser""aTargets": [1] },
                    { 
"mData""platform""aTargets": [2] },
                    { 
"mData""version""aTargets": [3] },
                    { 
"mData""grade""aTargets": [4] }
                ],
                
"fnHeaderCallback": function ( nHeadaasDataiStartiEndaiDisplay ) {
                    if ( 
aiDisplay.length == )
                    {
                        
mPass true;
                    }
                }
            } );
            
oTable.fnFilter"Mozilla" );
        },
        function () { return 
mPass; }
    );
    
    
    
    
oTest.fnComplete();
} );
?>
Онлайн: 0
Реклама