UNPKG

3.28 kBJavaScriptView Raw
1(function(win, TableFilter){
2
3 var tf = new TableFilter('demo', {
4 base_path: '../dist/tablefilter/',
5 watermark: 'foobar'
6 });
7 tf.init();
8
9 module('Sanity checks');
10 test('Watermark properties', function() {
11 deepEqual(tf instanceof TableFilter, true, 'TableFilter instanciated');
12 deepEqual(tf.watermark, 'foobar', 'Property value');
13 deepEqual(tf.isWatermarkArray, false,
14 'Type: same watermark for all filters');
15 });
16
17 test('DOM element', function(){
18 var flt0 = tf.getFilterElement(0);
19 var flt1 = tf.getFilterElement(3);
20 deepEqual(flt0.placeholder, 'foobar', 'filter`s placeholder value');
21 deepEqual(flt1.placeholder, 'foobar', 'filter`s placeholder value');
22 });
23
24 module('Per column watermark');
25 test('Sanity checks', function() {
26 tf.destroy();
27 tf = new TableFilter('demo', {
28 base_path: '../dist/tablefilter/',
29 watermark: ['City', 'City', 'Distance', 'Time', 'Time']
30 });
31 tf.init();
32
33 deepEqual(tf instanceof TableFilter, true, 'TableFilter instanciated');
34 deepEqual(tf.isWatermarkArray, true, 'Type: watermark array');
35 deepEqual(
36 tf.watermark,
37 ['City', 'City', 'Distance', 'Time', 'Time'],
38 'Property value'
39 );
40 });
41
42 test('DOM element', function(){
43 deepEqual(
44 tf.getFilterElement(0).placeholder,
45 'City',
46 'filter`s placeholder value'
47 );
48 deepEqual(
49 tf.getFilterElement(1).placeholder,
50 'City',
51 'filter`s placeholder value'
52 );
53 deepEqual(
54 tf.getFilterElement(2).placeholder,
55 'Distance',
56 'filter`s placeholder value'
57 );
58 deepEqual(
59 tf.getFilterElement(3).placeholder,
60 'Time',
61 'filter`s placeholder value'
62 );
63 deepEqual(
64 tf.getFilterElement(4).placeholder,
65 'Time',
66 'filter`s placeholder value'
67 );
68 });
69
70 test('Watermarks per column with null or undefined values', function() {
71 tf.destroy();
72 tf = new TableFilter('demo', {
73 base_path: '../dist/tablefilter/',
74 watermark: ['City', undefined, 'Distance', null, 'Time']
75 });
76 tf.init();
77
78 deepEqual(tf instanceof TableFilter, true, 'TableFilter instanciated');
79 deepEqual(tf.isWatermarkArray, true, 'Type: watermark array');
80 deepEqual(
81 tf.watermark,
82 ['City', undefined, 'Distance', null, 'Time'],
83 'Property value'
84 );
85 deepEqual(
86 tf.getFilterElement(1).placeholder,
87 '',
88 'Defaults to empty string with undefined'
89 );
90 deepEqual(
91 tf.getFilterElement(3).placeholder,
92 '',
93 'Defaults to empty string with null'
94 );
95 });
96
97 module('Tear-down');
98 test('TableFilter removed', function() {
99 tf.destroy();
100 deepEqual(tf.isInitialized(), false, 'Filters removed');
101 });
102
103})(window, TableFilter);