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 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | // DATA_TEMPLATE: dom_data oTest.fnStart( "oLanguage.sLengthMenu" ); $(document).ready( function () { /* Check the default */ var oTable = $('#example').dataTable(); var oSettings = oTable.fnSettings(); oTest.fnTest( "Menu language is 'Show _MENU_ entries' by default", null, function () { return oSettings.oLanguage.sLengthMenu == "Show _MENU_ entries"; } ); oTest.fnTest( "_MENU_ macro is replaced by select menu in DOM", null, function () { return $('select', oSettings.aanFeatures.l[0]).length == 1 } ); oTest.fnTest( "Default is put into DOM", null, function () { var anChildren = oSettings.aanFeatures.l[0].childNodes; var bReturn = anChildren[0].nodeValue == "Show " && anChildren[2].nodeValue == " entries"; return bReturn; } ); oTest.fnTest( "Menu length language can be defined - no _MENU_ macro", function () { oSession.fnRestore(); oTable = $('#example').dataTable( { "oLanguage": { "sLengthMenu": "unit test" } } ); oSettings = oTable.fnSettings(); }, function () { return oSettings.oLanguage.sLengthMenu == "unit test"; } ); oTest.fnTest( "Menu length language definition is in the DOM", null, function () { var anChildren = oSettings.aanFeatures.l[0].childNodes; return anChildren[0].nodeValue == "unit test"; } ); oTest.fnTest( "Menu length language can be defined - with _MENU_ macro", function () { oSession.fnRestore(); oTable = $('#example').dataTable( { "oLanguage": { "sLengthMenu": "unit _MENU_ test" } } ); oSettings = oTable.fnSettings(); }, function () { var anChildren = oSettings.aanFeatures.l[0].childNodes; var bReturn = anChildren[0].nodeValue == "unit " && anChildren[2].nodeValue == " test"; return bReturn; } ); oTest.fnTest( "Only the _MENU_ macro", function () { oSession.fnRestore(); oTable = $('#example').dataTable( { "oLanguage": { "sLengthMenu": "_MENU_" } } ); oSettings = oTable.fnSettings(); }, function () { var anChildren = oSettings.aanFeatures.l[0].childNodes; var bReturn = anChildren.length == 1 && $('select', oSettings.aanFeatures.l[0]).length == 1; return bReturn; } ); oTest.fnComplete(); } ); |