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 102
|
describe('column.orderSequence option', function() {
dt.libs({
js: ['jquery', 'datatables'],
css: ['datatables']
});
describe('Check the defaults', function() {
dt.html('basic');
it('Default should be null', function() {
$('#example').dataTable();
expect($.fn.dataTable.defaults.column.asSorting.length).toBe(2);
expect($.fn.dataTable.defaults.column.asSorting[0]).toBe('asc');
expect($.fn.dataTable.defaults.column.asSorting[1]).toBe('desc');
});
dt.html('basic');
it('Default behaviour', function() {
$('#example').dataTable();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('33');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('66');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
});
dt.html('basic');
it('Default order sequence', function() {
$('#example').dataTable({
columnDefs: [{ orderSequence: ['asc', 'desc'], targets: 3 }]
});
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('33');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('66');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
});
dt.html('basic');
it('Default order reversed sequence', function() {
$('#example').dataTable({
columnDefs: [{ orderSequence: ['desc', 'asc'], targets: 3 }]
});
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('33');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('66');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('66');
});
dt.html('basic');
it('Default order with additional empty sequence', function() {
$('#example').dataTable({
columnDefs: [{ orderSequence: ['asc', 'desc', ''], targets: 3 }]
});
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('33');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('66');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('66');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
});
dt.html('basic');
it('Default order with additional sequence', function() {
$('#example').dataTable({
columnDefs: [{ orderSequence: ['asc', 'desc', 'asc'], targets: 3 }]
});
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('33');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('66');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
});
dt.html('basic');
it('Use orderSequence to define applied order sequence using columns', function() {
$('#example').dataTable({
columns: [null, null, null, { orderSequence: ['desc', 'asc'] }, null, null]
});
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('33');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('66');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('19');
$('#example thead th:eq(3)').click();
expect($('#example tbody tr:eq(0) td:eq(3)').text()).toBe('66');
});
});
});
|