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 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
|
describe('searching option', function() {
dt.libs({
js: ['jquery', 'datatables'],
css: ['datatables']
});
describe('Check the defaults', function() {
dt.html('basic');
it('Default is enabled', function() {
// it's an alias for this fellow
expect($.fn.dataTable.defaults.bFilter).toBe(true);
});
dt.html('basic');
it('Filter there if not specified', function() {
$('#example').DataTable();
expect($('#example_filter').length).toBe(1);
});
dt.html('basic');
it('Filter there if specified', function() {
$('#example').DataTable({
searching: true
});
expect($('#example_filter').length).toBe(1);
});
dt.html('basic');
it('Filter not there if disabled', function() {
$('#example').DataTable({
searching: false
});
expect($('#example_filter').length).toBe(0);
});
});
describe('Functional tests', function() {
dt.html('two_tables');
it('Can specify differently on multiple tables', function() {
$('#example_one').DataTable({
searching: true
});
$('#example_two').DataTable({
searching: false
});
expect($('#example_one_filter').length).toBe(1);
expect($('#example_two_filter').length).toBe(0);
});
});
// the following tests are historical - a bit verbose and not focussed on the option, but does no harm to leave in
describe('Check searches', function() {
dt.html('basic');
it('searching enabled by default- DOM', function() {
$('#example').dataTable();
$('#example_filter input')
.val(33)
.keyup();
expect($('#example_info').html() == 'Showing 1 to 2 of 2 entries (filtered from 57 total entries)').toBeTruthy();
});
it('searching enabled by default- API', function() {
$('#example')
.DataTable()
.search(33)
.draw();
expect($('#example_info').html() == 'Showing 1 to 2 of 2 entries (filtered from 57 total entries)').toBeTruthy();
});
it('Can search multiple space seperated words- DOM', function() {
$('#example_filter input')
.val('New 3')
.keyup();
expect($('#example_info').html() == 'Showing 1 to 5 of 5 entries (filtered from 57 total entries)').toBeTruthy();
});
it('Can search multiple space seperated words- API', function() {
$('#example')
.DataTable()
.search('New 3')
.draw();
expect($('#example_info').html() == 'Showing 1 to 5 of 5 entries (filtered from 57 total entries)').toBeTruthy();
});
});
describe('Check can disable', function() {
dt.html('basic');
it('Searching can be disabled', function() {
$('#example').dataTable({
searching: false
});
expect($('#example_filter').is(':visible')).toBe(false);
});
it('Searching on disabled table has no effect- DOM', function() {
$('#example_filter input')
.val('New 3')
.keyup();
expect($('#example_info').html() == 'Showing 1 to 10 of 57 entries').toBeTruthy();
});
it('Searching on disabled table has no effect- API', function() {
$('#example')
.DataTable()
.search(33)
.draw();
expect($('#example_info').html() == 'Showing 1 to 10 of 57 entries').toBeTruthy();
});
});
describe('Check enable override', function() {
dt.html('basic');
it('Searching enabled override- DOM', function() {
$('#example').dataTable({
seaching: true
});
$('#example_filter input')
.val('New 3')
.keyup();
expect($('#example_info').html() == 'Showing 1 to 5 of 5 entries (filtered from 57 total entries)').toBeTruthy();
});
it('Searching enabled override- API', function() {
$('#example')
.DataTable()
.search('New 3')
.draw();
expect($('#example_info').html() == 'Showing 1 to 5 of 5 entries (filtered from 57 total entries)').toBeTruthy();
});
});
});
|