cache.html revision c28f85fdfe5f4318a887f384ac1e58d40414fdba
2N/A ARRAYASSERT = Y.ArrayAssert,
2N/A BTNRUN.set("disabled", false);
2N/A var testClass = new Y.Test.Case({
2N/A var testBasic = new Y.Test.Case({
var cache = new Y.Cache({max:2});
cache.add(1, "a");
cache.add(2, "b");
cache.add(3, "c");
var cache = new Y.Cache({max:2});
cache.add(1, "a");
cache.add(2, "b");
cache.set("max", 1);
cache.add(3, "c");
var cache = new Y.Cache({max:2});
cache.add(1, "a");
cache.add(2, "b");
cache.set("max", 0);
cache.add(3, "c");
var cache = new Y.Cache({max:2});
cache.add(1, "a");
cache.add(2, "b");
cache.set("max", -5);
cache.add(3, "c");
var cache = new Y.Cache({max:2}),
cache.add(1, "a");
cache.add("b", "c");
cachedresponse = cache.retrieve(1).response;
ASSERT.areSame("a", cachedresponse, "Expected first cached response.");
cachedresponse = cache.retrieve("b").response;
ASSERT.areSame("c", cachedresponse, "Expected second cached response.");
var cache = new Y.Cache({max:2}),
cache.add("a", "b");
cachedentry = cache.retrieve("c");
ASSERT.areSame(null, cachedentry, "Expected no match.");
var cache = new Y.Cache({max:2});
cache.add(1, "a");
cache.add(2, "b");
cache.flush();
var testEvents = new Y.Test.Case({
var cache = new Y.Cache({max:2});
cache.on("add", function(e) {
this.resume(function() {
cache.add(1, "a");
this.wait();
var cache = new Y.Cache({max:2});
cache.on("flush", function(e) {
this.resume(function() {
cache.add(1, "a");
this.wait();
var cache = new Y.Cache({max:2});
cache.on("request", function(e) {
this.resume(function() {
cache.add(1, "a");
this.wait();
var cache = new Y.Cache({max:2});
cache.on("retrieve", function(e) {
this.resume(function() {
cache.add(1, "a");
this.wait();
var cache = new Y.Cache({max:2});
cache.on("retrieve", function(e) {
this.resume(function() {
ASSERT.fail();
cache.add(1, "a");
this.wait(function() {
var cache = new Y.Cache({max:2});
cache.on("add", function(e) {
cache.add(1, "a");
var cache = new Y.Cache({max:2});
cache.on("flush", function(e) {
cache.add(1, "a");
cache.flush();
var testEntryManagement = new Y.Test.Case({
var cache = new Y.Cache({max:3});
cache.add(1, "a");
cache.add(2, "b");
cache.add(1, "c");
var cache = new Y.Cache({max:3,uniqueKeys:true});
cache.add(1, "a");
cache.add(2, "b");
cache.add(1, "c");
var cache = new Y.Cache({max:3});
cache.add(1, "a");
cache.add(2, "b");
cache.add(3, "c");
cache.retrieve(1);
var testBoundaryValues = new Y.Test.Case({
var cache = new Y.Cache({max:3});
cache.add(undefined, "a");
cache.add(undefined, "b");
var cache = new Y.Cache({max:3});
cache.add(null, "a");
cache.add(null, "b");
var cache = new Y.Cache({max:3});
cache.add(NaN, "a");
cache.add(NaN, "b");
var cache = new Y.Cache({max:3});
cache.add("", "a");
cache.add("", "b");
Y.Test.Runner.add(testClass);
Y.Test.Runner.add(testBasic);
Y.Test.Runner.add(testEvents);
Y.Test.Runner.add(testEntryManagement);
Y.Test.Runner.add(testBoundaryValues);