mirror of
https://github.com/koalyptus/TableFilter.git
synced 2024-06-15 20:25:07 +02:00
56 lines
1.6 KiB
JavaScript
56 lines
1.6 KiB
JavaScript
|
|
var tf = new TableFilter('demo', {
|
|
base_path: '../dist/tablefilter/'
|
|
});
|
|
tf.init();
|
|
|
|
module('Sanity checks');
|
|
test('Emitter instance', function() {
|
|
deepEqual(typeof tf.emitter, 'object', 'Emitter instanciated');
|
|
deepEqual(typeof tf.emitter.events, 'object', 'Emitter events property');
|
|
deepEqual(typeof tf.emitter.on, 'function', 'Emitter on method');
|
|
deepEqual(typeof tf.emitter.off, 'function', 'Emitter off method');
|
|
deepEqual(typeof tf.emitter.emit, 'function', 'Emitter emit method');
|
|
});
|
|
|
|
module('Behaviour');
|
|
test('Can subscribe', function(){
|
|
var emitter = tf.emitter;
|
|
var output = null;
|
|
emitter.on('before-filtering', function(){ output = 'before-filtering'; });
|
|
|
|
tf.filter();
|
|
|
|
deepEqual(emitter.events['before-filtering'].length, 1,
|
|
'Expected number of listeners');
|
|
deepEqual(output, 'before-filtering', 'Expected output');
|
|
});
|
|
|
|
test('Can unsubscribe', function(){
|
|
var emitter = tf.emitter;
|
|
var output = null;
|
|
emitter.off('before-filtering', function(){ output = 'before-filtering'; });
|
|
|
|
tf.filter();
|
|
|
|
deepEqual(emitter.events['before-filtering'].length, 0,
|
|
'Expected number of listeners');
|
|
deepEqual(output, null, 'Expected output');
|
|
});
|
|
|
|
test('Can emit', function(){
|
|
var emitter = tf.emitter;
|
|
var output = null;
|
|
emitter.on('hello', function(arg){ output = arg; });
|
|
|
|
emitter.emit('hello', 'world');
|
|
|
|
deepEqual(output, 'world', 'Event emitted');
|
|
});
|
|
|
|
module('Tear-down');
|
|
test('can destroy TableFilter DOM elements', function() {
|
|
tf.destroy();
|
|
deepEqual(tf.hasGrid(), false, 'Filters removed');
|
|
});
|