hash.js
1.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
var Sequelize = require(__dirname + "/../../lib/sequelize/Sequelize").Sequelize
var h = Sequelize.Helper
module.exports = {
'Hash: forEach': function(assert) {
var values = []
var keys = []
h.Hash.forEach({a:1, b:2, c:3}, function(value, key) {
values.push(value)
keys.push(key)
})
assert.eql(values, [1,2,3])
assert.eql(keys, ['a', 'b', 'c'])
},
'Hash: map': function(assert) {
var hash = {a:1, b:2, c:3}
assert.eql(h.Hash.map(hash, function(value, key) {return value}), [1,2,3])
assert.eql(h.Hash.map(hash, function(value, key) {return key}), ['a','b','c'])
},
'Hash: keys': function(assert) {
assert.eql(h.Hash.keys({a:1,b:2}), ['a', 'b'])
},
'Hash: values': function(assert) {
assert.eql(h.Hash.values({a:1,b:2}), [1,2])
},
'Hash: merge': function(assert) {
var src = {a:1, b:2}
var target = {b:3, c:3}
assert.eql(h.Hash.merge(src, target), {a:1, b:3, c:3})
assert.eql(h.Hash.merge(src, target, true), {a:1, b:2, c:3})
},
'Hash: without': function(assert) {
var hash = {a: 1, b: 2}
assert.eql(h.Hash.without(hash, ["a"]), {b: 2})
},
'Hash: isHash': function(assert) {
assert.eql(h.Hash.isHash([1,2]), false)
assert.eql(h.Hash.isHash(1), false)
assert.eql(h.Hash.isHash("asd"), false)
assert.eql(h.Hash.isHash({a:1}), true)
}
}