1
0
Fork 0
mirror of https://github.com/koalyptus/TableFilter.git synced 2024-05-17 05:46:39 +02:00
TableFilter/test/test.js
2015-11-29 11:46:20 +11:00

61 lines
1.9 KiB
JavaScript

(function(win, TableFilter) {
var tf = new TableFilter('demo', {
base_path: '../dist/tablefilter/'
});
tf.init();
module('Table 1: sanity checks');
test('TableFilter object', function() {
deepEqual(tf instanceof TableFilter, true, 'TableFilter instanciated');
deepEqual(tf.id, 'demo', 'id check');
deepEqual(tf.filtersRowIndex, 0, 'Filters row index');
deepEqual(tf.getCellsNb(), 5, 'filters type collection length');
});
module('Table 1: DOM tests');
test('Filters row', function() {
equal(tf.tbl.rows[0].className, 'fltrow', 'Filters row CSS class name');
equal(tf.getFilterElement(0).nodeName, 'INPUT', 'Filter DOM element');
});
var tf1 = new TableFilter(
document.querySelector('.test'),
{
base_path: '../dist/tablefilter/',
filters_row_index: 1,
btn: true
}
);
tf1.init();
var btn = document.querySelector('#'+tf1.prfxValButton+'4_'+tf1.id);
module('Table 2: sanity checks');
test('TableFilter object', function() {
notEqual(tf1.id, null, 'id check');
equal(tf1.filtersRowIndex, 1, 'Filters row index');
deepEqual(tf1.getCellsNb(), 5, 'filters type collection length');
});
module('Table 2: DOM tests');
test('Filters row', function() {
equal(
tf1.tbl.rows[1].className,
'fltrow',
'Filters row CSS class name'
);
equal(tf1.getFilterElement(0).nodeName, 'INPUT', 'Filter DOM element');
});
test('Filter button', function(){
notEqual(btn, null, 'Button exists');
deepEqual(btn.nodeName, 'INPUT', 'Expected element');
});
test('Filter button click event', function(){
tf1.setFilterValue(4, '>30');
btn.click();
deepEqual(tf1.getValidRows().length, 2, 'Filter button event result');
});
})(window, TableFilter);