Latest updates from IceHrmPro
This commit is contained in:
164
web/node_modules/hammerjs/tests/unit/test_utils.js
generated
vendored
Normal file
164
web/node_modules/hammerjs/tests/unit/test_utils.js
generated
vendored
Normal file
@@ -0,0 +1,164 @@
|
||||
module('utils');
|
||||
|
||||
// for the tests, all hammer properties and methods of Hammer are exposed to window.$H
|
||||
|
||||
test('get/set prefixed util', function() {
|
||||
ok(_.isUndefined($H.prefixed(window, 'FakeProperty')), 'non existent property returns undefined');
|
||||
|
||||
window.webkitFakeProperty = 1337;
|
||||
ok($H.prefixed(window, 'FakeProperty') == 'webkitFakeProperty', 'existent prefixed property returns the prefixed name');
|
||||
|
||||
delete window.webkitFakeProperty;
|
||||
});
|
||||
|
||||
test('fnBind', function() {
|
||||
var context = { a: true };
|
||||
|
||||
$H.bindFn(function(b) {
|
||||
ok(this.a === true, 'bindFn scope');
|
||||
ok(b === 123, 'bindFn argument');
|
||||
}, context)(123);
|
||||
});
|
||||
|
||||
test('Inherit objects', function() {
|
||||
function Base() {
|
||||
this.name = true;
|
||||
}
|
||||
|
||||
function Child() {
|
||||
Base.call(this);
|
||||
}
|
||||
|
||||
$H.inherit(Child, Base, {
|
||||
newMethod: function() {
|
||||
}
|
||||
});
|
||||
|
||||
var inst = new Child();
|
||||
|
||||
ok(inst.name == true, 'child has extended from base');
|
||||
ok(inst.newMethod, 'child has a new method');
|
||||
ok(Child.prototype.newMethod, 'child has a new prototype method');
|
||||
ok(inst instanceof Child, 'is instanceof Child');
|
||||
ok(inst instanceof Base, 'is instanceof Base');
|
||||
ok(inst._super === Base.prototype, '_super is ref to prototype of Base');
|
||||
});
|
||||
|
||||
test('toArray', function() {
|
||||
ok(_.isArray($H.toArray({ 0: true, 1: 'second', length: 2 })), 'converted an array-like object to an array');
|
||||
ok(_.isArray($H.toArray([true, true])), 'array stays an array');
|
||||
});
|
||||
|
||||
test('inArray', function() {
|
||||
ok($H.inArray([1, 2, 3, 4, 'hammer'], 'hammer') === 4, 'found item and returned the index');
|
||||
ok($H.inArray([1, 2, 3, 4, 'hammer'], 'notfound') === -1, 'not found an item and returned -1');
|
||||
ok($H.inArray([
|
||||
{id: 2},
|
||||
{id: 24}
|
||||
], '24', 'id') === 1, 'find by key and return the index');
|
||||
ok($H.inArray([
|
||||
{id: 2},
|
||||
{id: 24}
|
||||
], '22', 'id') === -1, 'not found by key and return -1');
|
||||
});
|
||||
|
||||
test('splitStr', function() {
|
||||
deepEqual($H.splitStr(' a b c d '), ['a', 'b', 'c', 'd'], 'str split valid');
|
||||
});
|
||||
|
||||
test('uniqueArray', function() {
|
||||
deepEqual($H.uniqueArray([
|
||||
{id: 1},
|
||||
{id: 2},
|
||||
{id: 2}
|
||||
], 'id'), [
|
||||
{id: 1},
|
||||
{id: 2}
|
||||
], 'remove duplicate ids')
|
||||
});
|
||||
|
||||
test('boolOrFn', function() {
|
||||
equal($H.boolOrFn(true), true, 'Passing an boolean');
|
||||
equal($H.boolOrFn(false), false, 'Passing an boolean');
|
||||
equal($H.boolOrFn(function() {
|
||||
return true;
|
||||
}), true, 'Passing an boolean');
|
||||
equal($H.boolOrFn(1), true, 'Passing an integer');
|
||||
});
|
||||
|
||||
test('hasParent', function() {
|
||||
var parent = document.createElement('div'),
|
||||
child = document.createElement('div');
|
||||
|
||||
document.body.appendChild(parent);
|
||||
parent.appendChild(child);
|
||||
|
||||
equal($H.hasParent(child, parent), true, 'Found parent');
|
||||
equal($H.hasParent(parent, child), false, 'Not in parent');
|
||||
|
||||
document.body.removeChild(parent);
|
||||
});
|
||||
|
||||
test('each', function() {
|
||||
var object = { hi: true };
|
||||
var array = ['a', 'b', 'c'];
|
||||
var loop;
|
||||
|
||||
loop = false;
|
||||
$H.each(object, function(value, key) {
|
||||
if (key == 'hi' && value === true) {
|
||||
loop = true;
|
||||
}
|
||||
});
|
||||
ok(loop, 'object loop');
|
||||
|
||||
loop = 0;
|
||||
$H.each(array, function(value, key) {
|
||||
if (value) {
|
||||
loop++;
|
||||
}
|
||||
});
|
||||
ok(loop == 3, 'array loop');
|
||||
|
||||
loop = 0;
|
||||
array.forEach = null;
|
||||
$H.each(array, function(value, key) {
|
||||
if (value) {
|
||||
loop++;
|
||||
}
|
||||
});
|
||||
ok(loop == 3, 'array loop without Array.forEach');
|
||||
});
|
||||
|
||||
test('assign', function() {
|
||||
expect(2);
|
||||
deepEqual(
|
||||
$H.assign(
|
||||
{a: 1, b: 3},
|
||||
{b: 2, c: 3}
|
||||
),
|
||||
{a: 1, b: 2, c: 3},
|
||||
'Simple extend'
|
||||
);
|
||||
|
||||
var src = { foo: true };
|
||||
var dest = $H.assign({}, src);
|
||||
src.foo = false;
|
||||
deepEqual(dest, {foo: true}, 'Clone reference');
|
||||
});
|
||||
|
||||
test('test add/removeEventListener', function() {
|
||||
function handleEvent() {
|
||||
ok(true, 'triggered event');
|
||||
}
|
||||
|
||||
expect(2);
|
||||
|
||||
$H.addEventListeners(window, 'testEvent1 testEvent2 ', handleEvent);
|
||||
utils.triggerDomEvent(window, 'testEvent1');
|
||||
utils.triggerDomEvent(window, 'testEvent2');
|
||||
|
||||
$H.removeEventListeners(window, ' testEvent1 testEvent2 ', handleEvent);
|
||||
utils.triggerDomEvent(window, 'testEvent1');
|
||||
utils.triggerDomEvent(window, 'testEvent2');
|
||||
});
|
||||
Reference in New Issue
Block a user