diff --git a/demos/demo.html b/demos/demo.html index 5014307d..12bc92c9 100644 --- a/demos/demo.html +++ b/demos/demo.html @@ -12992,9 +12992,9 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FromDestinationRoad Distance (km)By Air (hrs)By Rail (hrs)
SydneyAdelaide14121.425.3
SydneyBrisbane9821.516
SydneyCanberra286.64.3
SydneyMelbourne8721.110.5
AdelaidePerth27813.138
AdelaideAlice Springs1533220.25
AdelaideBrisbane20452.1540
+ + + + +
+
+ + \ No newline at end of file diff --git a/test/test-single-filter.js b/test/test-single-filter.js new file mode 100644 index 00000000..27234ca8 --- /dev/null +++ b/test/test-single-filter.js @@ -0,0 +1,72 @@ +var tf = new TableFilter('demo', { + base_path: '../dist/tablefilter/', + single_filter: true +}); +tf.init(); + +module('Sanity checks'); +test('Single filter', function() { + deepEqual(tf instanceof TableFilter, true, 'TableFilter instanciated'); + deepEqual(tf.getFiltersId().length, 1, 'Number of filter'); + deepEqual(tf.getFiltersId(), ['flt0_demo'], 'Filter ID'); + deepEqual(typeof tf.getFilterElement(0), 'object', 'Filter element'); +}); + +module('Behaviour'); +test('Filter', function() { + tf.setFilterValue(0, 'Sydney'); + tf.filter(); + deepEqual(tf.getValidRows().length, 4, 'Filtered rows number'); + tf.clearFilters(); +}); + +module('External single filter'); +test('Sanity checks', function() { + tf.destroy(); + tf = null; + tf = new TableFilter('demo', { + base_path: '../dist/tablefilter/', + single_filter: true, + external_flt_grid: true, + external_flt_grid_ids: ['single-search'] + }); + tf.init(); + + deepEqual(tf instanceof TableFilter, true, 'TableFilter instanciated'); + deepEqual(tf.getFiltersId().length, 1, 'Number of filter'); + deepEqual(tf.getFiltersId(), ['flt0_demo'], 'Filter ID'); + deepEqual(typeof tf.getFilterElement(0), 'object', 'Filter element'); +}); + +module('Behaviour'); +test('Filter', function() { + tf.setFilterValue(0, 'Bris'); + tf.filter(); + deepEqual(tf.getValidRows().length, 2, 'Filtered rows number'); + tf.clearFilters(); +}); + +module('Single filter with grid layout'); +test('Sanity checks', function() { + tf.destroy(); + tf = null; + tf = new TableFilter('demo', { + base_path: '../dist/tablefilter/', + single_filter: true, + grid_layout: true + }); + tf.init(); + + deepEqual(tf instanceof TableFilter, true, 'TableFilter instanciated'); + deepEqual(tf.getFiltersId().length, 1, 'Number of filter'); + deepEqual(tf.getFiltersId(), ['flt0_demo'], 'Filter ID'); + deepEqual(typeof tf.getFilterElement(0), 'object', 'Filter element'); +}); + +module('Behaviour'); +test('Filter', function() { + tf.setFilterValue(0, 'Sydney'); + tf.filter(); + deepEqual(tf.getValidRows().length, 4, 'Filtered rows number'); + tf.clearFilters(); +});