mirror of
https://github.com/koalyptus/TableFilter.git
synced 2024-05-12 03:16:48 +02:00
More API tests
This commit is contained in:
parent
93c0f867e3
commit
c5104a51d6
2
dist/tablefilter/tablefilter.js
vendored
2
dist/tablefilter/tablefilter.js
vendored
|
@ -1,6 +1,6 @@
|
|||
/**
|
||||
* TableFilter v0.0.0 by Max Guglielmi
|
||||
* build date: 2015-07-27T09:31:23.290Z
|
||||
* build date: 2015-07-30T07:19:59.670Z
|
||||
* MIT License
|
||||
*/
|
||||
|
||||
|
|
2
dist/tablefilter/tf-1.js
vendored
2
dist/tablefilter/tf-1.js
vendored
|
@ -1,6 +1,6 @@
|
|||
/**
|
||||
* TableFilter v0.0.0 by Max Guglielmi
|
||||
* build date: 2015-07-27T09:31:23.290Z
|
||||
* build date: 2015-07-30T07:19:59.670Z
|
||||
* MIT License
|
||||
*/
|
||||
|
||||
|
|
161
test/test-api.js
161
test/test-api.js
|
@ -108,7 +108,8 @@
|
|||
tf = null;
|
||||
});
|
||||
|
||||
test('Re-instantiate TableFilter with different filter types', function() {
|
||||
module('TableFilter instance with different filter types');
|
||||
test('Test filter types', function() {
|
||||
tf = null;
|
||||
tf = new TableFilter('demo', {
|
||||
base_path: '../dist/tablefilter/',
|
||||
|
@ -132,4 +133,162 @@
|
|||
'Get input filter(s)');
|
||||
});
|
||||
|
||||
test('Get filters values', function() {
|
||||
tf.setFilterValue(0, 'Sydney');
|
||||
tf.setFilterValue(1, 'Adelaide');
|
||||
deepEqual(tf.getFilterValue(0), 'Sydney', 'Column 0 filter value');
|
||||
deepEqual(tf.getFiltersValue(), ['sydney', 'adelaide', '', '', '']);
|
||||
});
|
||||
|
||||
test('Filter table', function() {
|
||||
tf.clearFilters();
|
||||
tf.setFilterValue(1, 'Adelaide');
|
||||
tf.filter();
|
||||
deepEqual(tf.getValidRows().length, 1, 'Filtered rows number');
|
||||
});
|
||||
|
||||
module('TableFilter with pop-up filtes');
|
||||
test('Sanity checks', function() {
|
||||
tf.destroy();
|
||||
tf = null;
|
||||
tf = new TableFilter('demo', {
|
||||
base_path: '../dist/tablefilter/',
|
||||
popup_filters: true
|
||||
});
|
||||
tf.init();
|
||||
|
||||
deepEqual(tf.getFiltersRowIndex(), 0, 'Filters row index');
|
||||
deepEqual(tf.getHeadersRowIndex(), 1, 'Headers row index');
|
||||
deepEqual(tf.getFilterElement(1).nodeName, 'INPUT',
|
||||
'Filter\'s DOM element');
|
||||
deepEqual(tf.getHeaderElement(2).nodeName, 'TH',
|
||||
'Header\'s DOM element');
|
||||
});
|
||||
|
||||
test('Get filters values', function() {
|
||||
tf.setFilterValue(0, 'Sydney');
|
||||
tf.setFilterValue(1, 'Adelaide');
|
||||
deepEqual(tf.getFilterValue(0), 'Sydney', 'Column 0 filter value');
|
||||
deepEqual(tf.getFiltersValue(), ['sydney', 'adelaide', '', '', '']);
|
||||
});
|
||||
|
||||
test('Filter table', function() {
|
||||
tf.clearFilters();
|
||||
tf.setFilterValue(1, 'Adelaide');
|
||||
tf.filter();
|
||||
deepEqual(tf.getValidRows().length, 1, 'Filtered rows number');
|
||||
});
|
||||
|
||||
module('TableFilter with grid-layout');
|
||||
test('Sanity checks', function() {
|
||||
tf.destroy();
|
||||
tf = null;
|
||||
tf = new TableFilter('demo', {
|
||||
base_path: '../dist/tablefilter/',
|
||||
grid_layout: true,
|
||||
col_0: 'select',
|
||||
col_1: 'multiple',
|
||||
col_2: 'checklist'
|
||||
});
|
||||
tf.init();
|
||||
|
||||
deepEqual(tf.getFilterType(0), 'select', 'Colmun 0 filter type');
|
||||
deepEqual(tf.getFilterType(1), 'multiple', 'Colmun 1 filter type');
|
||||
deepEqual(tf.getFilterType(2), 'checklist', 'Colmun 2 filter type');
|
||||
deepEqual(tf.getFilterType(3), 'input', 'Colmun 3 filter type');
|
||||
deepEqual(tf.getFiltersByType('select'), ['flt0_demo'],
|
||||
'Get select filter(s)');
|
||||
deepEqual(tf.getFiltersByType('multiple'), ['flt1_demo'],
|
||||
'Get multiple filter(s)');
|
||||
deepEqual(tf.getFiltersByType('checklist'), ['flt2_demo'],
|
||||
'Get checklist filter(s)');
|
||||
deepEqual(tf.getFiltersByType('input'), ['flt3_demo','flt4_demo'],
|
||||
'Get input filter(s)');
|
||||
|
||||
deepEqual(tf.getFiltersRowIndex(), 1, 'Filters row index');
|
||||
deepEqual(tf.getHeadersRowIndex(), 0, 'Headers row index');
|
||||
deepEqual(tf.getFilterElement(1).nodeName, 'SELECT',
|
||||
'Filter\'s DOM element');
|
||||
deepEqual(tf.getHeaderElement(2).nodeName, 'TH',
|
||||
'Header\'s DOM element');
|
||||
});
|
||||
|
||||
test('Get filters values', function() {
|
||||
tf.setFilterValue(0, 'Sydney');
|
||||
tf.setFilterValue(1, 'Adelaide');
|
||||
deepEqual(tf.getFilterValue(0), 'Sydney', 'Column 0 filter value');
|
||||
deepEqual(tf.getFiltersValue(), ['sydney', 'adelaide', '', '', '']);
|
||||
});
|
||||
|
||||
test('Filter table', function() {
|
||||
tf.clearFilters();
|
||||
tf.setFilterValue(1, 'Adelaide');
|
||||
tf.filter();
|
||||
deepEqual(tf.getValidRows().length, 1, 'Filtered rows number');
|
||||
});
|
||||
|
||||
test('Clear filters', function() {
|
||||
tf.clearFilters();
|
||||
deepEqual(tf.nbVisibleRows, 7, 'Filtered rows number');
|
||||
deepEqual(tf.getFiltersValue(), ['', '', '', '', '']);
|
||||
});
|
||||
|
||||
test('Get table data', function() {
|
||||
deepEqual(tf.getColValues(0),
|
||||
[
|
||||
'sydney','sydney','sydney',
|
||||
'sydney','adelaide','adelaide','adelaide'
|
||||
],
|
||||
'Get specified column values'
|
||||
);
|
||||
// deepEqual(
|
||||
// tf.getTableData(),
|
||||
// [
|
||||
// [0, ['Sydney','Adelaide','1412','1.4','25.3']],
|
||||
// [1, ['Sydney','Brisbane','982','1.5','16']],
|
||||
// [2, ['Sydney','Canberra','286','.6','4.3']],
|
||||
// [3, ['Sydney','Melbourne','872','1.1','10.5']],
|
||||
// [4, ['Adelaide','Perth','2781','3.1','38']],
|
||||
// [5, ['Adelaide','Alice Springs','1533','2','20.25']],
|
||||
// [6, ['Adelaide','Brisbane','2045','2.15','40']]
|
||||
// ],
|
||||
// 'Get table data'
|
||||
// );
|
||||
// tf.setFilterValue(0, 'Adelaide');
|
||||
// tf.filter();
|
||||
// deepEqual(
|
||||
// tf.getFilteredData(),
|
||||
// [
|
||||
// [6, ['Adelaide','Perth','2781','3.1','38']],
|
||||
// [7, ['Adelaide','Alice Springs','1533','2','20.25']],
|
||||
// [8, ['Adelaide','Brisbane','2045','2.15','40']]
|
||||
// ],
|
||||
// 'Get filtered table data'
|
||||
// );
|
||||
// deepEqual(
|
||||
// tf.getFilteredData(true),
|
||||
// [
|
||||
// [1, ['From','Destination','Road Distance (km)',
|
||||
// 'By Air (hrs)','By Rail (hrs)']],
|
||||
// [6, ['Adelaide','Perth','2781','3.1','38']],
|
||||
// [7, ['Adelaide','Alice Springs','1533','2','20.25']],
|
||||
// [8, ['Adelaide','Brisbane','2045','2.15','40']]
|
||||
// ],
|
||||
// 'Get filtered table data including columns headers'
|
||||
// );
|
||||
// deepEqual(
|
||||
// tf.getFilteredDataCol(0),
|
||||
// ['Adelaide','Adelaide','Adelaide'],
|
||||
// 'Get specified column filtered values'
|
||||
// );
|
||||
// tf.clearFilters();
|
||||
// tf.filter();
|
||||
});
|
||||
|
||||
test('Destroy', function() {
|
||||
tf.destroy();
|
||||
deepEqual(tf.hasGrid(), false, 'Filters removed');
|
||||
tf = null;
|
||||
});
|
||||
|
||||
})(window, TableFilter);
|
||||
|
|
Loading…
Reference in a new issue