Mercurial > repos > saskia-hiltemann > ireport
diff DataTables-1.9.4/media/unit_testing/tests_onhold/6_delayed_rendering/fnRowCallback.js @ 0:ac5f9272033b draft
first upload
author | saskia-hiltemann |
---|---|
date | Tue, 01 Jul 2014 11:42:23 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DataTables-1.9.4/media/unit_testing/tests_onhold/6_delayed_rendering/fnRowCallback.js Tue Jul 01 11:42:23 2014 -0400 @@ -0,0 +1,118 @@ +// DATA_TEMPLATE: empty_table +oTest.fnStart( "fnRowCallback" ); + +/* Note - fnRowCallback MUST return the first arguments (modified or not) */ + +$(document).ready( function () { + /* Check the default */ + var oTable = $('#example').dataTable( { + "sAjaxSource": "../../../examples/ajax/sources/arrays.txt", + "bDeferRender": true + } ); + var oSettings = oTable.fnSettings(); + var mPass; + + oTest.fnWaitTest( + "Default should be null", + null, + function () { return oSettings.fnRowCallback == null; } + ); + + + oTest.fnWaitTest( + "Four arguments passed", + function () { + oSession.fnRestore(); + + mPass = -1; + $('#example').dataTable( { + "sAjaxSource": "../../../examples/ajax/sources/arrays.txt", + "bDeferRender": true, + "fnRowCallback": function ( nTr ) { + mPass = arguments.length; + return nTr; + } + } ); + }, + function () { return mPass == 4; } + ); + + + oTest.fnWaitTest( + "fnRowCallback called once for each drawn row", + function () { + oSession.fnRestore(); + + mPass = 0; + $('#example').dataTable( { + "sAjaxSource": "../../../examples/ajax/sources/arrays.txt", + "bDeferRender": true, + "fnRowCallback": function ( nTr, asData, iDrawIndex, iDataIndex ) { + mPass++; + return nTr; + } + } ); + }, + function () { return mPass == 10; } + ); + + oTest.fnWaitTest( + "fnRowCallback allows us to alter row information", + function () { + oSession.fnRestore(); + $('#example').dataTable( { + "sAjaxSource": "../../../examples/ajax/sources/arrays.txt", + "bDeferRender": true, + "fnRowCallback": function ( nTr, asData, iDrawIndex, iDataIndex ) { + $(nTr).addClass('unit_test'); + return nTr; + } + } ); + }, + function () { return $('#example tbody tr:eq(1)').hasClass('unit_test'); } + ); + + oTest.fnWaitTest( + "Data array has length matching columns", + function () { + oSession.fnRestore(); + + mPass = true; + $('#example').dataTable( { + "sAjaxSource": "../../../examples/ajax/sources/arrays.txt", + "bDeferRender": true, + "fnRowCallback": function ( nTr, asData, iDrawIndex, iDataIndex ) { + if ( asData.length != 5 ) + mPass = false; + return nTr; + } + } ); + }, + function () { return mPass; } + ); + + oTest.fnWaitTest( + "Data array has length matching columns", + function () { + oSession.fnRestore(); + + mPass = true; + var iCount = 0; + $('#example').dataTable( { + "sAjaxSource": "../../../examples/ajax/sources/arrays.txt", + "bDeferRender": true, + "fnRowCallback": function ( nTr, asData, iDrawIndex, iDataIndex ) { + if ( iCount != iDrawIndex ) + mPass = false; + iCount++; + return nTr; + } + } ); + }, + function () { return mPass; } + ); + + + + oTest.fnComplete(); +} ); \ No newline at end of file