Comparing version 2.1.0 to 2.2.0
@@ -90,3 +90,4 @@ // Load modules | ||
if (!result || | ||
!result.item) { | ||
result.item === undefined || | ||
result.item === null) { | ||
@@ -93,0 +94,0 @@ // Not found |
@@ -112,3 +112,4 @@ // Load modules | ||
if (!cached || | ||
!cached.item) { | ||
cached.item === undefined || | ||
cached.item === null) { | ||
@@ -306,2 +307,2 @@ report = { msec: timer.elapsed() }; | ||
return 0; // No rule | ||
}; | ||
}; |
{ | ||
"name": "catbox", | ||
"description": "Multi-strategy object caching service", | ||
"version": "2.1.0", | ||
"version": "2.2.0", | ||
"author": "Eran Hammer <eran@hueniverse.com> (http://hueniverse.com)", | ||
@@ -6,0 +6,0 @@ "contributors": [ |
@@ -200,2 +200,57 @@ // Load modules | ||
it('returns nothing when item is not found', function (done) { | ||
var engine = { | ||
start: function (callback) { | ||
callback(); | ||
}, | ||
isReady: function () { | ||
return true; | ||
}, | ||
get: function (key, callback) { | ||
callback(null, null); | ||
} | ||
}; | ||
var client = new Catbox.Client(engine); | ||
client.get({ id: 'id', segment: 'segment' }, function (err, cached) { | ||
expect(err).to.equal(null); | ||
expect(cached).to.equal(null); | ||
done(); | ||
}); | ||
}); | ||
it('returns falsey items', function (done) { | ||
var engine = { | ||
start: function (callback) { | ||
callback(); | ||
}, | ||
isReady: function () { | ||
return true; | ||
}, | ||
get: function (key, callback) { | ||
callback(null, { | ||
item: false, | ||
stored: false | ||
}); | ||
} | ||
}; | ||
var client = new Catbox.Client(engine); | ||
client.get({ id: 'id', segment: 'segment' }, function (err, cached) { | ||
expect(err).to.equal(null); | ||
expect(cached.item).to.equal(false); | ||
done(); | ||
}); | ||
}); | ||
it('expires item', function (done) { | ||
@@ -286,2 +341,2 @@ | ||
}); | ||
}); | ||
}); |
@@ -224,2 +224,47 @@ // Load modules | ||
describe('#getOrGenerate', function () { | ||
it('returns falsey items', function (done) { | ||
var engine = { | ||
start: function (callback) { | ||
callback(); | ||
}, | ||
isReady: function () { | ||
return true; | ||
}, | ||
get: function (key, callback) { | ||
callback(null, { | ||
stored: false, | ||
item: false | ||
}); | ||
}, | ||
validateSegmentName: function () { | ||
return null; | ||
} | ||
}; | ||
var policyConfig = { | ||
expiresIn: 50000 | ||
}; | ||
function generateFunc(next) { | ||
next(null, false); | ||
} | ||
var client = new Catbox.Client(engine); | ||
var policy = new Catbox.Policy(policyConfig, client, 'test'); | ||
policy.getOrGenerate('test1', generateFunc, function (err, item) { | ||
expect(err).to.equal(null); | ||
expect(item).to.equal(false); | ||
done(); | ||
}); | ||
}); | ||
}); | ||
describe('#drop', function () { | ||
@@ -226,0 +271,0 @@ |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
122805
1688
1