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
|
describe('pluck()', function() {
dt.libs({
js: ['jquery', 'datatables'],
css: ['datatables']
});
let table;
describe('Check the defaults', function() {
dt.html('basic');
it('Exists and is a function', function() {
table = $('#example').DataTable();
expect(typeof table.pluck).toBe('function');
});
it('Returns API instance', function() {
expect(table.pluck() instanceof $.fn.dataTable.Api).toBe(true);
});
});
describe('Functional tests', function() {
dt.html('basic');
it('Can use numerical parameter to get array item', function() {
table = $('#example').DataTable();
let data = table
.rows()
.data()
.pluck(3);
expect(data.count()).toBe(57);
expect(data[0]).toBe('33');
expect(data[56]).toBe('56');
});
it('Can use numerical parameter to break into an array', function() {
let data = table
.column(2)
.data()
.pluck(0);
expect(data.count()).toBe(57);
expect(data[0]).toBe('T');
expect(data[56]).toBe('S');
});
dt.html('basic');
it('Can use string parameter to get array item', function(done) {
table = $('#example').DataTable({
ajax: '/base/test/data/data.txt',
columns: dt.getTestColumns(),
initComplete: function(settings, json) {
let data = table
.rows()
.data()
.pluck('age');
expect(data.count()).toBe(57);
expect(data[0]).toBe('33');
expect(data[56]).toBe('56');
done();
}
});
});
dt.html('basic');
it('Can use string parameter to get array item', function(done) {
table = $('#example').DataTable({
ajax: '/base/test/data/data.txt',
columns: dt.getTestColumns(),
initComplete: function(settings, json) {
let data = table
.column(2)
.data()
.pluck('0');
expect(data.count()).toBe(57);
expect(data[0]).toBe('T');
expect(data[56]).toBe('S');
done();
}
});
});
});
});
|