@geekmidas/cache 0.0.4 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/__tests__/cache.spec.cjs +30 -31
- package/dist/__tests__/cache.spec.mjs +18 -18
- package/dist/__tests__/integration.spec.cjs +44 -45
- package/dist/__tests__/integration.spec.mjs +26 -26
- package/dist/__tests__/memory.spec.cjs +44 -45
- package/dist/__tests__/memory.spec.mjs +23 -23
- package/dist/__tests__/upstash.spec.cjs +50 -51
- package/dist/__tests__/upstash.spec.mjs +23 -23
- package/dist/{chunk-CUT6urMc.cjs → chunk-DWy1uDak.cjs} +9 -0
- package/dist/expo.cjs +36 -0
- package/dist/expo.d.cts +12 -0
- package/dist/expo.d.mts +12 -0
- package/dist/expo.mjs +35 -0
- package/dist/index.d.mts +1 -1
- package/dist/magic-string.es-BvJNBYzY.mjs +1014 -0
- package/dist/magic-string.es-CKiDiYoS.cjs +1015 -0
- package/dist/memory.d.mts +1 -1
- package/dist/memory.mjs +1 -1
- package/dist/{upstash-0RolGx7m.cjs → upstash-DiFDpOHy.cjs} +1 -1
- package/dist/upstash.cjs +1 -1
- package/dist/upstash.d.mts +1 -1
- package/dist/upstash.mjs +1 -1
- package/dist/vi.bdSIJ99Y-CKSnd2bq.cjs +14955 -0
- package/dist/vi.bdSIJ99Y-DffpE2Zw.mjs +14951 -0
- package/package.json +11 -3
- package/src/expo.ts +53 -0
- package/tsdown.config.ts +5 -0
- /package/dist/{index-BPnJ3lrS.d.mts → index-CVen_7Cc.d.mts} +0 -0
- /package/dist/{memory-NQi0XmZ2.mjs → memory-YteQXj7m.mjs} +0 -0
- /package/dist/{upstash-CTY-M8vR.mjs → upstash-_05vyc5o.mjs} +0 -0
|
@@ -1,24 +1,23 @@
|
|
|
1
|
-
const require_chunk = require('../chunk-CUT6urMc.cjs');
|
|
2
1
|
const require_memory = require('../memory-n6Iosq6J.cjs');
|
|
3
|
-
const
|
|
2
|
+
const require_vi_bdSIJ99Y = require('../vi.bdSIJ99Y-CKSnd2bq.cjs');
|
|
4
3
|
|
|
5
4
|
//#region src/__tests__/memory.spec.ts
|
|
6
|
-
|
|
5
|
+
require_vi_bdSIJ99Y.describe("InMemoryCache", () => {
|
|
7
6
|
let cache;
|
|
8
|
-
|
|
7
|
+
require_vi_bdSIJ99Y.beforeEach(() => {
|
|
9
8
|
cache = new require_memory.InMemoryCache();
|
|
10
9
|
});
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
require_vi_bdSIJ99Y.describe("get", () => {
|
|
11
|
+
require_vi_bdSIJ99Y.it("should return undefined for non-existent key", async () => {
|
|
13
12
|
const result = await cache.get("non-existent");
|
|
14
|
-
|
|
13
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBeUndefined();
|
|
15
14
|
});
|
|
16
|
-
|
|
15
|
+
require_vi_bdSIJ99Y.it("should return value for existing key", async () => {
|
|
17
16
|
await cache.set("test-key", "test-value");
|
|
18
17
|
const result = await cache.get("test-key");
|
|
19
|
-
|
|
18
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe("test-value");
|
|
20
19
|
});
|
|
21
|
-
|
|
20
|
+
require_vi_bdSIJ99Y.it("should handle different data types", async () => {
|
|
22
21
|
const objectValue = {
|
|
23
22
|
id: 1,
|
|
24
23
|
name: "test"
|
|
@@ -34,91 +33,91 @@ const vitest = require_chunk.__toESM(require("vitest"));
|
|
|
34
33
|
await cache.set("array", arrayValue);
|
|
35
34
|
await cache.set("number", numberValue);
|
|
36
35
|
await cache.set("boolean", booleanValue);
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get("object")).toEqual(objectValue);
|
|
37
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get("array")).toEqual(arrayValue);
|
|
38
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get("number")).toBe(numberValue);
|
|
39
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get("boolean")).toBe(booleanValue);
|
|
41
40
|
});
|
|
42
41
|
});
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
require_vi_bdSIJ99Y.describe("set", () => {
|
|
43
|
+
require_vi_bdSIJ99Y.it("should store string value", async () => {
|
|
45
44
|
await cache.set("string-key", "string-value");
|
|
46
45
|
const result = await cache.get("string-key");
|
|
47
|
-
|
|
46
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe("string-value");
|
|
48
47
|
});
|
|
49
|
-
|
|
48
|
+
require_vi_bdSIJ99Y.it("should store object value", async () => {
|
|
50
49
|
const value = {
|
|
51
50
|
id: 1,
|
|
52
51
|
data: "test"
|
|
53
52
|
};
|
|
54
53
|
await cache.set("object-key", value);
|
|
55
54
|
const result = await cache.get("object-key");
|
|
56
|
-
|
|
55
|
+
require_vi_bdSIJ99Y.globalExpect(result).toEqual(value);
|
|
57
56
|
});
|
|
58
|
-
|
|
57
|
+
require_vi_bdSIJ99Y.it("should overwrite existing value", async () => {
|
|
59
58
|
await cache.set("key", "initial-value");
|
|
60
59
|
await cache.set("key", "updated-value");
|
|
61
60
|
const result = await cache.get("key");
|
|
62
|
-
|
|
61
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe("updated-value");
|
|
63
62
|
});
|
|
64
|
-
|
|
63
|
+
require_vi_bdSIJ99Y.it("should handle null values", async () => {
|
|
65
64
|
await cache.set("null-key", null);
|
|
66
65
|
const result = await cache.get("null-key");
|
|
67
|
-
|
|
66
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBeNull();
|
|
68
67
|
});
|
|
69
68
|
});
|
|
70
|
-
|
|
71
|
-
|
|
69
|
+
require_vi_bdSIJ99Y.describe("delete", () => {
|
|
70
|
+
require_vi_bdSIJ99Y.it("should remove existing key", async () => {
|
|
72
71
|
await cache.set("to-delete", "value");
|
|
73
72
|
await cache.delete("to-delete");
|
|
74
73
|
const result = await cache.get("to-delete");
|
|
75
|
-
|
|
74
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBeUndefined();
|
|
76
75
|
});
|
|
77
|
-
|
|
78
|
-
await
|
|
76
|
+
require_vi_bdSIJ99Y.it("should not throw error for non-existent key", async () => {
|
|
77
|
+
await require_vi_bdSIJ99Y.globalExpect(cache.delete("non-existent")).resolves.not.toThrow();
|
|
79
78
|
});
|
|
80
|
-
|
|
79
|
+
require_vi_bdSIJ99Y.it("should only delete specified key", async () => {
|
|
81
80
|
await cache.set("key1", "value1");
|
|
82
81
|
await cache.set("key2", "value2");
|
|
83
82
|
await cache.delete("key1");
|
|
84
|
-
|
|
85
|
-
|
|
83
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get("key1")).toBeUndefined();
|
|
84
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get("key2")).toBe("value2");
|
|
86
85
|
});
|
|
87
86
|
});
|
|
88
|
-
|
|
89
|
-
|
|
87
|
+
require_vi_bdSIJ99Y.describe("multiple operations", () => {
|
|
88
|
+
require_vi_bdSIJ99Y.it("should handle multiple keys independently", async () => {
|
|
90
89
|
await cache.set("key1", "value1");
|
|
91
90
|
await cache.set("key2", "value2");
|
|
92
91
|
await cache.set("key3", "value3");
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
92
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get("key1")).toBe("value1");
|
|
93
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get("key2")).toBe("value2");
|
|
94
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get("key3")).toBe("value3");
|
|
96
95
|
});
|
|
97
|
-
|
|
96
|
+
require_vi_bdSIJ99Y.it("should maintain data integrity across operations", async () => {
|
|
98
97
|
const data = { count: 0 };
|
|
99
98
|
await cache.set("counter", data);
|
|
100
99
|
const retrieved = await cache.get("counter");
|
|
101
100
|
retrieved.count = 5;
|
|
102
101
|
const original = await cache.get("counter");
|
|
103
|
-
|
|
102
|
+
require_vi_bdSIJ99Y.globalExpect(original.count).toBe(5);
|
|
104
103
|
});
|
|
105
104
|
});
|
|
106
|
-
|
|
107
|
-
|
|
105
|
+
require_vi_bdSIJ99Y.describe("edge cases", () => {
|
|
106
|
+
require_vi_bdSIJ99Y.it("should handle empty string as key", async () => {
|
|
108
107
|
await cache.set("", "empty-key-value");
|
|
109
108
|
const result = await cache.get("");
|
|
110
|
-
|
|
109
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe("empty-key-value");
|
|
111
110
|
});
|
|
112
|
-
|
|
111
|
+
require_vi_bdSIJ99Y.it("should handle special characters in keys", async () => {
|
|
113
112
|
const specialKey = "key!@#$%^&*()_+{}|:\"<>?[]\\;',./?`~";
|
|
114
113
|
await cache.set(specialKey, "special-value");
|
|
115
114
|
const result = await cache.get(specialKey);
|
|
116
|
-
|
|
115
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe("special-value");
|
|
117
116
|
});
|
|
118
|
-
|
|
117
|
+
require_vi_bdSIJ99Y.it("should handle undefined values", async () => {
|
|
119
118
|
await cache.set("undefined-key", void 0);
|
|
120
119
|
const result = await cache.get("undefined-key");
|
|
121
|
-
|
|
120
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBeUndefined();
|
|
122
121
|
});
|
|
123
122
|
});
|
|
124
123
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { beforeEach, describe, globalExpect, it } from "../vi.bdSIJ99Y-DffpE2Zw.mjs";
|
|
2
|
+
import { InMemoryCache } from "../memory-YteQXj7m.mjs";
|
|
3
3
|
|
|
4
4
|
//#region src/__tests__/memory.spec.ts
|
|
5
5
|
describe("InMemoryCache", () => {
|
|
@@ -10,12 +10,12 @@ describe("InMemoryCache", () => {
|
|
|
10
10
|
describe("get", () => {
|
|
11
11
|
it("should return undefined for non-existent key", async () => {
|
|
12
12
|
const result = await cache.get("non-existent");
|
|
13
|
-
|
|
13
|
+
globalExpect(result).toBeUndefined();
|
|
14
14
|
});
|
|
15
15
|
it("should return value for existing key", async () => {
|
|
16
16
|
await cache.set("test-key", "test-value");
|
|
17
17
|
const result = await cache.get("test-key");
|
|
18
|
-
|
|
18
|
+
globalExpect(result).toBe("test-value");
|
|
19
19
|
});
|
|
20
20
|
it("should handle different data types", async () => {
|
|
21
21
|
const objectValue = {
|
|
@@ -33,17 +33,17 @@ describe("InMemoryCache", () => {
|
|
|
33
33
|
await cache.set("array", arrayValue);
|
|
34
34
|
await cache.set("number", numberValue);
|
|
35
35
|
await cache.set("boolean", booleanValue);
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
36
|
+
globalExpect(await cache.get("object")).toEqual(objectValue);
|
|
37
|
+
globalExpect(await cache.get("array")).toEqual(arrayValue);
|
|
38
|
+
globalExpect(await cache.get("number")).toBe(numberValue);
|
|
39
|
+
globalExpect(await cache.get("boolean")).toBe(booleanValue);
|
|
40
40
|
});
|
|
41
41
|
});
|
|
42
42
|
describe("set", () => {
|
|
43
43
|
it("should store string value", async () => {
|
|
44
44
|
await cache.set("string-key", "string-value");
|
|
45
45
|
const result = await cache.get("string-key");
|
|
46
|
-
|
|
46
|
+
globalExpect(result).toBe("string-value");
|
|
47
47
|
});
|
|
48
48
|
it("should store object value", async () => {
|
|
49
49
|
const value = {
|
|
@@ -52,18 +52,18 @@ describe("InMemoryCache", () => {
|
|
|
52
52
|
};
|
|
53
53
|
await cache.set("object-key", value);
|
|
54
54
|
const result = await cache.get("object-key");
|
|
55
|
-
|
|
55
|
+
globalExpect(result).toEqual(value);
|
|
56
56
|
});
|
|
57
57
|
it("should overwrite existing value", async () => {
|
|
58
58
|
await cache.set("key", "initial-value");
|
|
59
59
|
await cache.set("key", "updated-value");
|
|
60
60
|
const result = await cache.get("key");
|
|
61
|
-
|
|
61
|
+
globalExpect(result).toBe("updated-value");
|
|
62
62
|
});
|
|
63
63
|
it("should handle null values", async () => {
|
|
64
64
|
await cache.set("null-key", null);
|
|
65
65
|
const result = await cache.get("null-key");
|
|
66
|
-
|
|
66
|
+
globalExpect(result).toBeNull();
|
|
67
67
|
});
|
|
68
68
|
});
|
|
69
69
|
describe("delete", () => {
|
|
@@ -71,17 +71,17 @@ describe("InMemoryCache", () => {
|
|
|
71
71
|
await cache.set("to-delete", "value");
|
|
72
72
|
await cache.delete("to-delete");
|
|
73
73
|
const result = await cache.get("to-delete");
|
|
74
|
-
|
|
74
|
+
globalExpect(result).toBeUndefined();
|
|
75
75
|
});
|
|
76
76
|
it("should not throw error for non-existent key", async () => {
|
|
77
|
-
await
|
|
77
|
+
await globalExpect(cache.delete("non-existent")).resolves.not.toThrow();
|
|
78
78
|
});
|
|
79
79
|
it("should only delete specified key", async () => {
|
|
80
80
|
await cache.set("key1", "value1");
|
|
81
81
|
await cache.set("key2", "value2");
|
|
82
82
|
await cache.delete("key1");
|
|
83
|
-
|
|
84
|
-
|
|
83
|
+
globalExpect(await cache.get("key1")).toBeUndefined();
|
|
84
|
+
globalExpect(await cache.get("key2")).toBe("value2");
|
|
85
85
|
});
|
|
86
86
|
});
|
|
87
87
|
describe("multiple operations", () => {
|
|
@@ -89,9 +89,9 @@ describe("InMemoryCache", () => {
|
|
|
89
89
|
await cache.set("key1", "value1");
|
|
90
90
|
await cache.set("key2", "value2");
|
|
91
91
|
await cache.set("key3", "value3");
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
92
|
+
globalExpect(await cache.get("key1")).toBe("value1");
|
|
93
|
+
globalExpect(await cache.get("key2")).toBe("value2");
|
|
94
|
+
globalExpect(await cache.get("key3")).toBe("value3");
|
|
95
95
|
});
|
|
96
96
|
it("should maintain data integrity across operations", async () => {
|
|
97
97
|
const data = { count: 0 };
|
|
@@ -99,25 +99,25 @@ describe("InMemoryCache", () => {
|
|
|
99
99
|
const retrieved = await cache.get("counter");
|
|
100
100
|
retrieved.count = 5;
|
|
101
101
|
const original = await cache.get("counter");
|
|
102
|
-
|
|
102
|
+
globalExpect(original.count).toBe(5);
|
|
103
103
|
});
|
|
104
104
|
});
|
|
105
105
|
describe("edge cases", () => {
|
|
106
106
|
it("should handle empty string as key", async () => {
|
|
107
107
|
await cache.set("", "empty-key-value");
|
|
108
108
|
const result = await cache.get("");
|
|
109
|
-
|
|
109
|
+
globalExpect(result).toBe("empty-key-value");
|
|
110
110
|
});
|
|
111
111
|
it("should handle special characters in keys", async () => {
|
|
112
112
|
const specialKey = "key!@#$%^&*()_+{}|:\"<>?[]\\;',./?`~";
|
|
113
113
|
await cache.set(specialKey, "special-value");
|
|
114
114
|
const result = await cache.get(specialKey);
|
|
115
|
-
|
|
115
|
+
globalExpect(result).toBe("special-value");
|
|
116
116
|
});
|
|
117
117
|
it("should handle undefined values", async () => {
|
|
118
118
|
await cache.set("undefined-key", void 0);
|
|
119
119
|
const result = await cache.get("undefined-key");
|
|
120
|
-
|
|
120
|
+
globalExpect(result).toBeUndefined();
|
|
121
121
|
});
|
|
122
122
|
});
|
|
123
123
|
});
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
const
|
|
2
|
-
const
|
|
3
|
-
const vitest = require_chunk.__toESM(require("vitest"));
|
|
1
|
+
const require_upstash = require('../upstash-DiFDpOHy.cjs');
|
|
2
|
+
const require_vi_bdSIJ99Y = require('../vi.bdSIJ99Y-CKSnd2bq.cjs');
|
|
4
3
|
|
|
5
4
|
//#region src/__tests__/upstash.spec.ts
|
|
6
|
-
|
|
5
|
+
require_vi_bdSIJ99Y.describe("UpstashCache", () => {
|
|
7
6
|
let cache;
|
|
8
7
|
const testKeyPrefix = `test:${Date.now()}:`;
|
|
9
8
|
let testKeys = [];
|
|
10
|
-
|
|
9
|
+
require_vi_bdSIJ99Y.beforeEach(() => {
|
|
11
10
|
cache = new require_upstash.UpstashCache("http://localhost:8079", "example_token");
|
|
12
11
|
testKeys = [];
|
|
13
12
|
});
|
|
14
|
-
|
|
13
|
+
require_vi_bdSIJ99Y.afterEach(async () => {
|
|
15
14
|
for (const key of testKeys) try {
|
|
16
15
|
await cache.delete(key);
|
|
17
16
|
} catch (error) {}
|
|
@@ -21,13 +20,13 @@ const vitest = require_chunk.__toESM(require("vitest"));
|
|
|
21
20
|
testKeys.push(key);
|
|
22
21
|
return key;
|
|
23
22
|
};
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
require_vi_bdSIJ99Y.describe("get", () => {
|
|
24
|
+
require_vi_bdSIJ99Y.it("should return undefined for non-existent key", async () => {
|
|
26
25
|
const key = getTestKey("non-existent");
|
|
27
26
|
const result = await cache.get(key);
|
|
28
|
-
|
|
27
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBeUndefined();
|
|
29
28
|
});
|
|
30
|
-
|
|
29
|
+
require_vi_bdSIJ99Y.it("should parse and return JSON value", async () => {
|
|
31
30
|
const key = getTestKey("object");
|
|
32
31
|
const testValue = {
|
|
33
32
|
id: 1,
|
|
@@ -35,30 +34,30 @@ const vitest = require_chunk.__toESM(require("vitest"));
|
|
|
35
34
|
};
|
|
36
35
|
await cache.set(key, testValue);
|
|
37
36
|
const result = await cache.get(key);
|
|
38
|
-
|
|
37
|
+
require_vi_bdSIJ99Y.globalExpect(result).toEqual(testValue);
|
|
39
38
|
});
|
|
40
|
-
|
|
39
|
+
require_vi_bdSIJ99Y.it("should handle string values", async () => {
|
|
41
40
|
const key = getTestKey("string");
|
|
42
41
|
const testValue = "simple string";
|
|
43
42
|
await cache.set(key, testValue);
|
|
44
43
|
const result = await cache.get(key);
|
|
45
|
-
|
|
44
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe(testValue);
|
|
46
45
|
});
|
|
47
|
-
|
|
46
|
+
require_vi_bdSIJ99Y.it("should handle number values", async () => {
|
|
48
47
|
const key = getTestKey("number");
|
|
49
48
|
const testValue = 42;
|
|
50
49
|
await cache.set(key, testValue);
|
|
51
50
|
const result = await cache.get(key);
|
|
52
|
-
|
|
51
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe(testValue);
|
|
53
52
|
});
|
|
54
|
-
|
|
53
|
+
require_vi_bdSIJ99Y.it("should handle boolean values", async () => {
|
|
55
54
|
const key = getTestKey("boolean");
|
|
56
55
|
const testValue = true;
|
|
57
56
|
await cache.set(key, testValue);
|
|
58
57
|
const result = await cache.get(key);
|
|
59
|
-
|
|
58
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe(testValue);
|
|
60
59
|
});
|
|
61
|
-
|
|
60
|
+
require_vi_bdSIJ99Y.it("should handle array values", async () => {
|
|
62
61
|
const key = getTestKey("array");
|
|
63
62
|
const testArray = [
|
|
64
63
|
1,
|
|
@@ -68,17 +67,17 @@ const vitest = require_chunk.__toESM(require("vitest"));
|
|
|
68
67
|
];
|
|
69
68
|
await cache.set(key, testArray);
|
|
70
69
|
const result = await cache.get(key);
|
|
71
|
-
|
|
70
|
+
require_vi_bdSIJ99Y.globalExpect(result).toEqual(testArray);
|
|
72
71
|
});
|
|
73
|
-
|
|
72
|
+
require_vi_bdSIJ99Y.it("should handle null values as undefined", async () => {
|
|
74
73
|
const key = getTestKey("null");
|
|
75
74
|
await cache.set(key, null);
|
|
76
75
|
const result = await cache.get(key);
|
|
77
|
-
|
|
76
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBeUndefined();
|
|
78
77
|
});
|
|
79
78
|
});
|
|
80
|
-
|
|
81
|
-
|
|
79
|
+
require_vi_bdSIJ99Y.describe("set", () => {
|
|
80
|
+
require_vi_bdSIJ99Y.it("should store and retrieve object value", async () => {
|
|
82
81
|
const key = getTestKey("set-object");
|
|
83
82
|
const testValue = {
|
|
84
83
|
id: 1,
|
|
@@ -86,30 +85,30 @@ const vitest = require_chunk.__toESM(require("vitest"));
|
|
|
86
85
|
};
|
|
87
86
|
await cache.set(key, testValue);
|
|
88
87
|
const result = await cache.get(key);
|
|
89
|
-
|
|
88
|
+
require_vi_bdSIJ99Y.globalExpect(result).toEqual(testValue);
|
|
90
89
|
});
|
|
91
|
-
|
|
90
|
+
require_vi_bdSIJ99Y.it("should store and retrieve string values", async () => {
|
|
92
91
|
const key = getTestKey("set-string");
|
|
93
92
|
const testValue = "test string";
|
|
94
93
|
await cache.set(key, testValue);
|
|
95
94
|
const result = await cache.get(key);
|
|
96
|
-
|
|
95
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe(testValue);
|
|
97
96
|
});
|
|
98
|
-
|
|
97
|
+
require_vi_bdSIJ99Y.it("should store and retrieve number values", async () => {
|
|
99
98
|
const key = getTestKey("set-number");
|
|
100
99
|
const testValue = 42;
|
|
101
100
|
await cache.set(key, testValue);
|
|
102
101
|
const result = await cache.get(key);
|
|
103
|
-
|
|
102
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe(testValue);
|
|
104
103
|
});
|
|
105
|
-
|
|
104
|
+
require_vi_bdSIJ99Y.it("should store and retrieve boolean values", async () => {
|
|
106
105
|
const key = getTestKey("set-boolean");
|
|
107
106
|
const testValue = true;
|
|
108
107
|
await cache.set(key, testValue);
|
|
109
108
|
const result = await cache.get(key);
|
|
110
|
-
|
|
109
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe(testValue);
|
|
111
110
|
});
|
|
112
|
-
|
|
111
|
+
require_vi_bdSIJ99Y.it("should store and retrieve array values", async () => {
|
|
113
112
|
const key = getTestKey("set-array");
|
|
114
113
|
const testArray = [
|
|
115
114
|
1,
|
|
@@ -118,46 +117,46 @@ const vitest = require_chunk.__toESM(require("vitest"));
|
|
|
118
117
|
];
|
|
119
118
|
await cache.set(key, testArray);
|
|
120
119
|
const result = await cache.get(key);
|
|
121
|
-
|
|
120
|
+
require_vi_bdSIJ99Y.globalExpect(result).toEqual(testArray);
|
|
122
121
|
});
|
|
123
|
-
|
|
122
|
+
require_vi_bdSIJ99Y.it("should not store and retrieve null values", async () => {
|
|
124
123
|
const key = getTestKey("set-null");
|
|
125
124
|
await cache.set(key, null);
|
|
126
125
|
const result = await cache.get(key);
|
|
127
|
-
|
|
126
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBeUndefined();
|
|
128
127
|
});
|
|
129
|
-
|
|
128
|
+
require_vi_bdSIJ99Y.it("should overwrite existing values", async () => {
|
|
130
129
|
const key = getTestKey("overwrite");
|
|
131
130
|
await cache.set(key, "initial");
|
|
132
131
|
await cache.set(key, "updated");
|
|
133
132
|
const result = await cache.get(key);
|
|
134
|
-
|
|
133
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBe("updated");
|
|
135
134
|
});
|
|
136
135
|
});
|
|
137
|
-
|
|
138
|
-
|
|
136
|
+
require_vi_bdSIJ99Y.describe("delete", () => {
|
|
137
|
+
require_vi_bdSIJ99Y.it("should delete existing key", async () => {
|
|
139
138
|
const key = getTestKey("delete-test");
|
|
140
139
|
await cache.set(key, "value-to-delete");
|
|
141
140
|
await cache.delete(key);
|
|
142
141
|
const result = await cache.get(key);
|
|
143
|
-
|
|
142
|
+
require_vi_bdSIJ99Y.globalExpect(result).toBeUndefined();
|
|
144
143
|
});
|
|
145
|
-
|
|
144
|
+
require_vi_bdSIJ99Y.it("should handle deletion of non-existent key", async () => {
|
|
146
145
|
const key = getTestKey("non-existent-delete");
|
|
147
|
-
await
|
|
146
|
+
await require_vi_bdSIJ99Y.globalExpect(cache.delete(key)).resolves.not.toThrow();
|
|
148
147
|
});
|
|
149
|
-
|
|
148
|
+
require_vi_bdSIJ99Y.it("should only delete specified key", async () => {
|
|
150
149
|
const key1 = getTestKey("delete-key1");
|
|
151
150
|
const key2 = getTestKey("delete-key2");
|
|
152
151
|
await cache.set(key1, "value1");
|
|
153
152
|
await cache.set(key2, "value2");
|
|
154
153
|
await cache.delete(key1);
|
|
155
|
-
|
|
156
|
-
|
|
154
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get(key1)).toBeUndefined();
|
|
155
|
+
require_vi_bdSIJ99Y.globalExpect(await cache.get(key2)).toBe("value2");
|
|
157
156
|
});
|
|
158
157
|
});
|
|
159
|
-
|
|
160
|
-
|
|
158
|
+
require_vi_bdSIJ99Y.describe("integration scenarios", () => {
|
|
159
|
+
require_vi_bdSIJ99Y.it("should handle round-trip operations", async () => {
|
|
161
160
|
const key = getTestKey("user-session");
|
|
162
161
|
const testData = {
|
|
163
162
|
user: {
|
|
@@ -169,9 +168,9 @@ const vitest = require_chunk.__toESM(require("vitest"));
|
|
|
169
168
|
};
|
|
170
169
|
await cache.set(key, testData);
|
|
171
170
|
const result = await cache.get(key);
|
|
172
|
-
|
|
171
|
+
require_vi_bdSIJ99Y.globalExpect(result).toEqual(testData);
|
|
173
172
|
});
|
|
174
|
-
|
|
173
|
+
require_vi_bdSIJ99Y.it("should handle complex nested objects", async () => {
|
|
175
174
|
const key = getTestKey("complex");
|
|
176
175
|
const complexObject = { level1: { level2: { level3: {
|
|
177
176
|
data: "deep nested value",
|
|
@@ -179,9 +178,9 @@ const vitest = require_chunk.__toESM(require("vitest"));
|
|
|
179
178
|
} } } };
|
|
180
179
|
await cache.set(key, complexObject);
|
|
181
180
|
const result = await cache.get(key);
|
|
182
|
-
|
|
181
|
+
require_vi_bdSIJ99Y.globalExpect(result).toEqual(complexObject);
|
|
183
182
|
});
|
|
184
|
-
|
|
183
|
+
require_vi_bdSIJ99Y.it("should handle concurrent operations", async () => {
|
|
185
184
|
const keys = [
|
|
186
185
|
"concurrent1",
|
|
187
186
|
"concurrent2",
|
|
@@ -194,7 +193,7 @@ const vitest = require_chunk.__toESM(require("vitest"));
|
|
|
194
193
|
];
|
|
195
194
|
await Promise.all(keys.map((key, i) => cache.set(key, values[i])));
|
|
196
195
|
const results = await Promise.all(keys.map((key) => cache.get(key)));
|
|
197
|
-
|
|
196
|
+
require_vi_bdSIJ99Y.globalExpect(results).toEqual(values);
|
|
198
197
|
});
|
|
199
198
|
});
|
|
200
199
|
});
|