38 lines
1.1 KiB
JavaScript
38 lines
1.1 KiB
JavaScript
var { deepEqual } = require('../tests/util')
|
|
|
|
module.exports = {
|
|
plugin: require('./compression'),
|
|
setup: setup,
|
|
}
|
|
|
|
function setup(store) {
|
|
test('string compression size', function() {
|
|
var str = 'foo'
|
|
var serialized = store._serialize(str)
|
|
store.set('foo', str)
|
|
assert(store.raw.get('foo').length < serialized.length, 'compressed string should be smaller than uncompressed')
|
|
assert(deepEqual(store.get('foo'), str), 'value should be equal')
|
|
})
|
|
|
|
test('object compression', function () {
|
|
var obj = { one: { two: 3 }}
|
|
var serialized = store._serialize(obj)
|
|
store.set('foo', obj)
|
|
assert(store.raw.get('foo').length < serialized.length, 'compressed object should be smaller than uncompressed')
|
|
assert(deepEqual(store.get('foo'), obj), 'should deep equal original object')
|
|
store.remove('foo')
|
|
})
|
|
|
|
test('decompress uncopmressed data', function () {
|
|
store.raw.set('foo', 'baz')
|
|
assert(store.get('foo') == 'baz', 'value should be baz')
|
|
store.remove('foo')
|
|
})
|
|
|
|
test('decompress non-existing data', function () {
|
|
assert(store.get('bar') == undefined, 'value should be undefined')
|
|
store.remove('bar')
|
|
})
|
|
|
|
}
|