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);
|