@fireproof/core-test 0.22.0-dev-preview → 0.22.0-dev-preview-1

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.
Files changed (58) hide show
  1. package/blockstore/interceptor-gateway.test.js.map +1 -1
  2. package/blockstore/keyed-crypto-indexeddb-file.test.js +4 -3
  3. package/blockstore/keyed-crypto-indexeddb-file.test.js.map +1 -1
  4. package/blockstore/keyed-crypto-indexeddb-file.test.ts +10 -10
  5. package/blockstore/keyed-crypto.test.js +10 -10
  6. package/blockstore/keyed-crypto.test.js.map +1 -1
  7. package/blockstore/keyed-crypto.test.ts +19 -20
  8. package/blockstore/loader.test.js.map +1 -1
  9. package/blockstore/standalone.test.js.map +1 -1
  10. package/blockstore/store.test.js.map +1 -1
  11. package/blockstore/transaction.test.js.map +1 -1
  12. package/fireproof/all-gateway.test.js.map +1 -1
  13. package/fireproof/attachable.test.js.map +1 -1
  14. package/fireproof/charwise-boolean.test.js.map +1 -1
  15. package/fireproof/compact-strategy.test.d.ts +1 -0
  16. package/fireproof/compact-strategy.test.js +34 -0
  17. package/fireproof/compact-strategy.test.js.map +1 -0
  18. package/fireproof/compact-strategy.test.ts +40 -0
  19. package/fireproof/concurrent.test.d.ts +1 -0
  20. package/fireproof/concurrent.test.js +30 -0
  21. package/fireproof/concurrent.test.js.map +1 -0
  22. package/fireproof/concurrent.test.ts +37 -0
  23. package/fireproof/crdt.test.js +1 -0
  24. package/fireproof/crdt.test.js.map +1 -1
  25. package/fireproof/database.test.js.map +1 -1
  26. package/fireproof/deleted-docs-handling.test.js.map +1 -1
  27. package/fireproof/fireproof.test.fixture.d.ts +3 -3
  28. package/fireproof/fireproof.test.js +1 -0
  29. package/fireproof/fireproof.test.js.map +1 -1
  30. package/fireproof/hello.test.js.map +1 -1
  31. package/fireproof/indexer.test.js.map +1 -1
  32. package/fireproof/multiple-ledger.test.js.map +1 -1
  33. package/fireproof/query-docs.test.js.map +1 -1
  34. package/fireproof/query-limit-issue.test.js.map +1 -1
  35. package/fireproof/query-property-inconsistency.test.js.map +1 -1
  36. package/fireproof/query-result-properties.test.js.map +1 -1
  37. package/fireproof/stable-cid.test.js.map +1 -1
  38. package/fireproof/utils.test.js.map +1 -1
  39. package/gateway/file/loader-config.test.js +2 -2
  40. package/gateway/file/loader-config.test.js.map +1 -1
  41. package/gateway/indexeddb/create-db-on-write.test.d.ts +1 -0
  42. package/gateway/indexeddb/create-db-on-write.test.js +145 -0
  43. package/gateway/indexeddb/create-db-on-write.test.js.map +1 -0
  44. package/gateway/indexeddb/create-db-on-write.test.ts +202 -0
  45. package/gateway/indexeddb/loader-config.test.js.map +1 -1
  46. package/global-setup.js.map +1 -1
  47. package/helpers.js.map +1 -1
  48. package/package.json +23 -24
  49. package/protocols/cloud/msger.test.js.map +1 -1
  50. package/protocols/cloud/msger.test.ts +2 -2
  51. package/runtime/fp-envelope-serialize.test.js.map +1 -1
  52. package/runtime/key-bag.test.d.ts +1 -0
  53. package/runtime/key-bag.test.js +185 -0
  54. package/runtime/key-bag.test.js.map +1 -0
  55. package/runtime/key-bag.test.ts +243 -0
  56. package/runtime/meta-key-hack.test.js +1 -1
  57. package/runtime/meta-key-hack.test.js.map +1 -1
  58. package/runtime/meta-key-hack.test.ts +1 -1
@@ -326,7 +326,7 @@ class MockWSConnection extends TestConnection implements MsgRawConnection {
326
326
  // console.log("ws-send", msg);
327
327
  if (MsgIsReqChat(msg)) {
328
328
  const res = buildResChat(msg, msg.conn, `got[${msg.message}]`);
329
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
329
+
330
330
  for (const [_, bind] of this.activeBinds.entries()) {
331
331
  // console.log("ws-to-bind", res);
332
332
  bind.controller?.enqueue(res);
@@ -349,7 +349,7 @@ class MockWSConnection extends TestConnection implements MsgRawConnection {
349
349
  }
350
350
  close(o: MsgBase): Promise<Result<void>> {
351
351
  super.close(o);
352
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
352
+
353
353
  for (const [_, bind] of this.activeBinds.entries()) {
354
354
  try {
355
355
  bind.controller?.close();
@@ -1 +1 @@
1
- {"version":3,"file":"fp-envelope-serialize.test.js","sourceRoot":"","sources":["fp-envelope-serialize.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fp-envelope-serialize.test.js","sourceRoot":"","sources":["fp-envelope-serialize.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,185 @@
1
+ import { URI } from "@adviser/cement";
2
+ import { getKeyBag, KeyBagProviderMemory } from "@fireproof/core-keybag";
3
+ import { ensureSuperThis } from "@fireproof/core-runtime";
4
+ import { isKeyUpsertResultModified } from "@fireproof/core-types-blockstore";
5
+ import { base58btc } from "multiformats/bases/base58";
6
+ import { assert, describe, expect, it } from "vitest";
7
+ const v1Keybag = {
8
+ name: "@test-v1-keys-wal@",
9
+ key: "zL89nmBmogeRptW9b7e9j7L",
10
+ };
11
+ async function keyExtracted(rKbf, fingerPrint) {
12
+ const kbf = await rKbf.Ok().get(fingerPrint);
13
+ if (!kbf) {
14
+ return undefined;
15
+ }
16
+ return {
17
+ fingerPrint: kbf.fingerPrint,
18
+ key: (await kbf.extract()).keyStr,
19
+ };
20
+ }
21
+ async function calculateFingerprint(rKbf, kb) {
22
+ const item = await rKbf.Ok().get();
23
+ const v2Item = await item.asV2StorageKeyItem();
24
+ const keyBytes = base58btc.decode(v2Item.key);
25
+ const hash = await kb.rt.crypto.digestSHA256(keyBytes);
26
+ return base58btc.encode(new Uint8Array(hash));
27
+ }
28
+ describe("KeyBag", () => {
29
+ it("v1 migration", async () => {
30
+ const sthis = ensureSuperThis();
31
+ await sthis.start();
32
+ const kp = new KeyBagProviderMemory(URI.from("memory://./dist/tests/"), sthis);
33
+ kp.set(v1Keybag);
34
+ const kb = await getKeyBag(sthis, {
35
+ url: "memory://./dist/tests/?extractKey=_deprecated_internal_api",
36
+ });
37
+ const rKbf = await kb.getNamedKey("@test-v1-keys-wal@");
38
+ expect(rKbf.isOk()).toBeTruthy();
39
+ const fpr = await calculateFingerprint(rKbf, kb);
40
+ expect(await rKbf.Ok().asV2KeysItem()).toEqual({
41
+ keys: {
42
+ z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ: {
43
+ default: true,
44
+ fingerPrint: fpr,
45
+ key: "zL89nmBmogeRptW9b7e9j7L",
46
+ },
47
+ },
48
+ name: "@test-v1-keys-wal@",
49
+ });
50
+ const kb2 = await getKeyBag(sthis, {
51
+ url: "memory://./dist/tests/?extractKey=_deprecated_internal_api",
52
+ });
53
+ for (const rkbf of [rKbf, await kb2.getNamedKey("@test-v1-keys-wal@")]) {
54
+ expect(await keyExtracted(rkbf)).toEqual({
55
+ fingerPrint: "z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ",
56
+ key: "zL89nmBmogeRptW9b7e9j7L",
57
+ });
58
+ expect(await keyExtracted(rkbf, "z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ")).toEqual({
59
+ fingerPrint: "z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ",
60
+ key: "zL89nmBmogeRptW9b7e9j7L",
61
+ });
62
+ expect(await keyExtracted(rkbf, "kaputt-x")).toBeUndefined();
63
+ }
64
+ expect(await kp.get(v1Keybag.name)).toEqual({
65
+ keys: {
66
+ z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ: {
67
+ default: true,
68
+ fingerPrint: "z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ",
69
+ key: "zL89nmBmogeRptW9b7e9j7L",
70
+ },
71
+ },
72
+ name: "@test-v1-keys-wal@",
73
+ });
74
+ });
75
+ it("implicit creation", async () => {
76
+ const sthis = ensureSuperThis();
77
+ await sthis.start();
78
+ const kp = new KeyBagProviderMemory(URI.from("memory://./dist/tests/"), sthis);
79
+ kp.set(v1Keybag);
80
+ const kb = await getKeyBag(sthis, {
81
+ url: "memory://./dist/tests/?extractKey=_deprecated_internal_api",
82
+ });
83
+ const key1Material = kb.rt.crypto.randomBytes(kb.rt.keyLength);
84
+ const rKbf = await kb.getNamedKey("kaputt", false, key1Material);
85
+ expect(rKbf.isOk()).toBeTruthy();
86
+ const one = await rKbf.Ok().asV2KeysItem();
87
+ expect(Object.keys(one.keys).length).toBe(1);
88
+ const key1Fpr = (await rKbf.Ok().get())?.fingerPrint;
89
+ expect(await keyExtracted(rKbf)).toEqual({
90
+ fingerPrint: key1Fpr,
91
+ key: base58btc.encode(key1Material),
92
+ });
93
+ const key2Material = kb.rt.crypto.randomBytes(kb.rt.keyLength);
94
+ const rKey2 = await rKbf.Ok().upsert(key2Material);
95
+ const key2 = rKey2.Ok();
96
+ if (!isKeyUpsertResultModified(key2)) {
97
+ assert("key2 not modified");
98
+ return;
99
+ }
100
+ const keys2 = await rKbf.Ok().asV2KeysItem();
101
+ expect(Object.keys(keys2.keys).length).toBe(2);
102
+ expect(await kp.get("kaputt")).toEqual(keys2);
103
+ const rKbf2 = await kb.getNamedKey("kaputt");
104
+ expect(Object.keys(await rKbf2.Ok().asV2KeysItem()).length).toBe(2);
105
+ expect((await rKbf2.Ok().get())?.fingerPrint).toEqual(key1Fpr);
106
+ const asKeysItem = await rKbf.Ok().asV2KeysItem();
107
+ expect(asKeysItem.name).toEqual("kaputt");
108
+ expect(Array.from(Object.values(asKeysItem.keys))).toEqual([
109
+ {
110
+ default: true,
111
+ fingerPrint: key1Fpr,
112
+ key: base58btc.encode(key1Material),
113
+ },
114
+ {
115
+ default: false,
116
+ fingerPrint: key2.kfp.fingerPrint,
117
+ key: base58btc.encode(key2Material),
118
+ },
119
+ ]);
120
+ const key3Material = kb.rt.crypto.randomBytes(kb.rt.keyLength);
121
+ const rKey3 = await rKbf2.Ok().upsert(key3Material, true);
122
+ const key3 = rKey3.Ok();
123
+ if (!isKeyUpsertResultModified(key3)) {
124
+ assert("key3 not modified");
125
+ return;
126
+ }
127
+ expect(Object.keys(await rKbf2
128
+ .Ok()
129
+ .asV2KeysItem()
130
+ .then((i) => i.keys)).length).toBe(3);
131
+ const v2Key3 = await key3.kfp.asV2StorageKeyItem();
132
+ expect(await kp.get("kaputt")).toEqual({
133
+ keys: {
134
+ ...resetDefault(one.keys),
135
+ ...resetDefault(keys2.keys),
136
+ [v2Key3.fingerPrint]: v2Key3,
137
+ },
138
+ name: "kaputt",
139
+ });
140
+ });
141
+ it("simple default", async () => {
142
+ const sthis = ensureSuperThis();
143
+ await sthis.start();
144
+ const kb = await getKeyBag(sthis);
145
+ const keyName = "simple" + sthis.nextId().str;
146
+ const rKbf1 = await kb.getNamedKey(keyName);
147
+ const kfp1 = await rKbf1
148
+ .Ok()
149
+ .get()
150
+ .then((i) => i.asV2StorageKeyItem());
151
+ expect(kfp1?.fingerPrint).toBeTypeOf("string");
152
+ const rKbf2 = await kb.getNamedKey(keyName);
153
+ expect(await rKbf2.Ok().get()).toBeDefined();
154
+ const kfp2 = await rKbf2.Ok().get();
155
+ expect(kfp1?.fingerPrint).toBe(kfp2?.fingerPrint);
156
+ expect(await kb.rt.getBagProvider().then((i) => i.get(keyName))).toEqual({
157
+ keys: {
158
+ [kfp1?.fingerPrint]: {
159
+ default: true,
160
+ fingerPrint: kfp1?.fingerPrint,
161
+ key: kfp1?.key,
162
+ },
163
+ },
164
+ name: keyName,
165
+ });
166
+ });
167
+ it("test stable id", async () => {
168
+ const sthis = ensureSuperThis();
169
+ await sthis.start();
170
+ const kp = new KeyBagProviderMemory(URI.from("memory://./dist/tests/"), sthis);
171
+ kp.set(v1Keybag);
172
+ const kb = await getKeyBag(sthis, {
173
+ url: "memory://./dist/tests/?extractKey=_deprecated_internal_api",
174
+ });
175
+ const name = "default-key" + Math.random();
176
+ const rMyKey = await kb.getNamedKey(name);
177
+ for (let i = 0; i < 10; ++i) {
178
+ expect(await kb.getNamedKey(name).then((i) => i.Ok().id)).toEqual(rMyKey.Ok().id);
179
+ }
180
+ });
181
+ });
182
+ function resetDefault(keys) {
183
+ return Array.from(Object.values(keys)).reduce((acc, i) => ({ ...acc, [i.fingerPrint]: { ...i, default: false } }), {});
184
+ }
185
+ //# sourceMappingURL=key-bag.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"key-bag.test.js","sourceRoot":"","sources":["key-bag.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,243 @@
1
+ import { Result, URI } from "@adviser/cement";
2
+ import { getKeyBag, KeyBagProviderMemory } from "@fireproof/core-keybag";
3
+ import { ensureSuperThis } from "@fireproof/core-runtime";
4
+ import { KeyBagIf, V2KeysItem, V2StorageKeyItem } from "@fireproof/core-types-base";
5
+ import { isKeyUpsertResultModified, KeysByFingerprint } from "@fireproof/core-types-blockstore";
6
+ import { base58btc } from "multiformats/bases/base58";
7
+ import { assert, describe, expect, it } from "vitest";
8
+
9
+ // const v2Keybag = {
10
+ // name: "@test-v1-keys-wal@",
11
+ // keys: {
12
+ // z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ: {
13
+ // default: true,
14
+ // fingerPrint: "z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ",
15
+ // key: "zL89nmBmogeRptW9b7e9j7L",
16
+ // },
17
+ // },
18
+ // };
19
+
20
+ const v1Keybag = {
21
+ name: "@test-v1-keys-wal@",
22
+ key: "zL89nmBmogeRptW9b7e9j7L",
23
+ };
24
+
25
+ async function keyExtracted(
26
+ rKbf: Result<KeysByFingerprint>,
27
+ fingerPrint?: string,
28
+ ): Promise<{ fingerPrint: string; key: string } | undefined> {
29
+ const kbf = await rKbf.Ok().get(fingerPrint);
30
+ if (!kbf) {
31
+ return undefined;
32
+ }
33
+ return {
34
+ fingerPrint: kbf.fingerPrint,
35
+ key: (await kbf.extract()).keyStr,
36
+ };
37
+ }
38
+
39
+ async function calculateFingerprint(rKbf: Result<KeysByFingerprint>, kb: KeyBagIf): Promise<string> {
40
+ const item = await rKbf.Ok().get();
41
+ const v2Item = await (
42
+ item as unknown as {
43
+ asV2StorageKeyItem: () => Promise<V2StorageKeyItem>;
44
+ }
45
+ ).asV2StorageKeyItem();
46
+ const keyBytes = base58btc.decode(v2Item.key);
47
+ const hash = await kb.rt.crypto.digestSHA256(keyBytes);
48
+ return base58btc.encode(new Uint8Array(hash));
49
+ }
50
+
51
+ describe("KeyBag", () => {
52
+ it("v1 migration", async () => {
53
+ const sthis = ensureSuperThis();
54
+ await sthis.start();
55
+
56
+ const kp = new KeyBagProviderMemory(URI.from("memory://./dist/tests/"), sthis);
57
+ kp.set(v1Keybag as unknown as V2KeysItem);
58
+
59
+ const kb = await getKeyBag(sthis, {
60
+ url: "memory://./dist/tests/?extractKey=_deprecated_internal_api",
61
+ });
62
+ const rKbf = await kb.getNamedKey("@test-v1-keys-wal@");
63
+ expect(rKbf.isOk()).toBeTruthy();
64
+
65
+ const fpr = await calculateFingerprint(rKbf, kb);
66
+
67
+ expect(await rKbf.Ok().asV2KeysItem()).toEqual({
68
+ keys: {
69
+ z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ: {
70
+ default: true,
71
+ fingerPrint: fpr,
72
+ key: "zL89nmBmogeRptW9b7e9j7L",
73
+ },
74
+ },
75
+ name: "@test-v1-keys-wal@",
76
+ });
77
+
78
+ const kb2 = await getKeyBag(sthis, {
79
+ url: "memory://./dist/tests/?extractKey=_deprecated_internal_api",
80
+ });
81
+ for (const rkbf of [rKbf, await kb2.getNamedKey("@test-v1-keys-wal@")]) {
82
+ expect(await keyExtracted(rkbf)).toEqual({
83
+ fingerPrint: "z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ",
84
+ key: "zL89nmBmogeRptW9b7e9j7L",
85
+ });
86
+ expect(await keyExtracted(rkbf, "z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ")).toEqual({
87
+ fingerPrint: "z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ",
88
+ key: "zL89nmBmogeRptW9b7e9j7L",
89
+ });
90
+ expect(await keyExtracted(rkbf, "kaputt-x")).toBeUndefined();
91
+ }
92
+ expect(await kp.get(v1Keybag.name)).toEqual({
93
+ keys: {
94
+ z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ: {
95
+ default: true,
96
+ fingerPrint: "z7oNYUrGpALe6U5ePvhdD3ufHdLerw4wPWHJERE3383zJ",
97
+ key: "zL89nmBmogeRptW9b7e9j7L",
98
+ },
99
+ },
100
+ name: "@test-v1-keys-wal@",
101
+ });
102
+ });
103
+
104
+ it("implicit creation", async () => {
105
+ const sthis = ensureSuperThis();
106
+ await sthis.start();
107
+
108
+ const kp = new KeyBagProviderMemory(URI.from("memory://./dist/tests/"), sthis);
109
+ kp.set(v1Keybag as unknown as V2KeysItem);
110
+
111
+ const kb = await getKeyBag(sthis, {
112
+ url: "memory://./dist/tests/?extractKey=_deprecated_internal_api",
113
+ });
114
+ const key1Material = kb.rt.crypto.randomBytes(kb.rt.keyLength);
115
+ const rKbf = await kb.getNamedKey("kaputt", false, key1Material);
116
+ expect(rKbf.isOk()).toBeTruthy();
117
+ const one = await rKbf.Ok().asV2KeysItem();
118
+ expect(Object.keys(one.keys).length).toBe(1);
119
+ const key1Fpr = (await rKbf.Ok().get())?.fingerPrint;
120
+ expect(await keyExtracted(rKbf)).toEqual({
121
+ fingerPrint: key1Fpr,
122
+ key: base58btc.encode(key1Material),
123
+ });
124
+
125
+ const key2Material = kb.rt.crypto.randomBytes(kb.rt.keyLength);
126
+ const rKey2 = await rKbf.Ok().upsert(key2Material);
127
+ const key2 = rKey2.Ok();
128
+ if (!isKeyUpsertResultModified(key2)) {
129
+ assert("key2 not modified");
130
+ return;
131
+ }
132
+
133
+ const keys2 = await rKbf.Ok().asV2KeysItem();
134
+ expect(Object.keys(keys2.keys).length).toBe(2);
135
+
136
+ expect(await kp.get("kaputt")).toEqual(keys2);
137
+
138
+ const rKbf2 = await kb.getNamedKey("kaputt");
139
+
140
+ expect(Object.keys(await rKbf2.Ok().asV2KeysItem()).length).toBe(2);
141
+
142
+ expect((await rKbf2.Ok().get())?.fingerPrint).toEqual(key1Fpr);
143
+
144
+ const asKeysItem = await rKbf.Ok().asV2KeysItem();
145
+ expect(asKeysItem.name).toEqual("kaputt");
146
+ expect(Array.from(Object.values(asKeysItem.keys))).toEqual([
147
+ {
148
+ default: true,
149
+ fingerPrint: key1Fpr,
150
+ key: base58btc.encode(key1Material),
151
+ },
152
+ {
153
+ default: false,
154
+ fingerPrint: key2.kfp.fingerPrint,
155
+ key: base58btc.encode(key2Material),
156
+ },
157
+ ]);
158
+
159
+ const key3Material = kb.rt.crypto.randomBytes(kb.rt.keyLength);
160
+ const rKey3 = await rKbf2.Ok().upsert(key3Material, true);
161
+ const key3 = rKey3.Ok();
162
+ if (!isKeyUpsertResultModified(key3)) {
163
+ assert("key3 not modified");
164
+ return;
165
+ }
166
+
167
+ expect(
168
+ Object.keys(
169
+ await rKbf2
170
+ .Ok()
171
+ .asV2KeysItem()
172
+ .then((i) => i.keys),
173
+ ).length,
174
+ ).toBe(3);
175
+ const v2Key3 = await (key3.kfp as unknown as { asV2StorageKeyItem: () => Promise<V2StorageKeyItem> }).asV2StorageKeyItem();
176
+
177
+ expect(await kp.get("kaputt")).toEqual({
178
+ keys: {
179
+ ...resetDefault(one.keys),
180
+ ...resetDefault(keys2.keys),
181
+ [v2Key3.fingerPrint]: v2Key3,
182
+ },
183
+ name: "kaputt",
184
+ });
185
+ });
186
+
187
+ it("simple default", async () => {
188
+ const sthis = ensureSuperThis();
189
+ await sthis.start();
190
+
191
+ const kb = await getKeyBag(sthis);
192
+
193
+ const keyName = "simple" + sthis.nextId().str;
194
+
195
+ const rKbf1 = await kb.getNamedKey(keyName);
196
+ const kfp1 = await rKbf1
197
+ .Ok()
198
+ .get()
199
+ .then((i) => (i as unknown as { asV2StorageKeyItem: () => Promise<V2StorageKeyItem> }).asV2StorageKeyItem());
200
+ expect(kfp1?.fingerPrint).toBeTypeOf("string");
201
+
202
+ const rKbf2 = await kb.getNamedKey(keyName);
203
+ expect(await rKbf2.Ok().get()).toBeDefined();
204
+ const kfp2 = await rKbf2.Ok().get();
205
+ expect(kfp1?.fingerPrint).toBe(kfp2?.fingerPrint);
206
+
207
+ expect(await kb.rt.getBagProvider().then((i) => i.get(keyName))).toEqual({
208
+ keys: {
209
+ [kfp1?.fingerPrint as string]: {
210
+ default: true,
211
+ fingerPrint: kfp1?.fingerPrint,
212
+ key: kfp1?.key,
213
+ },
214
+ },
215
+ name: keyName,
216
+ });
217
+ });
218
+ it("test stable id", async () => {
219
+ const sthis = ensureSuperThis();
220
+ await sthis.start();
221
+
222
+ const kp = new KeyBagProviderMemory(URI.from("memory://./dist/tests/"), sthis);
223
+ kp.set(v1Keybag as unknown as V2KeysItem);
224
+
225
+ const kb = await getKeyBag(sthis, {
226
+ url: "memory://./dist/tests/?extractKey=_deprecated_internal_api",
227
+ });
228
+
229
+ const name = "default-key" + Math.random();
230
+ const rMyKey = await kb.getNamedKey(name);
231
+
232
+ for (let i = 0; i < 10; ++i) {
233
+ expect(await kb.getNamedKey(name).then((i) => i.Ok().id)).toEqual(rMyKey.Ok().id);
234
+ }
235
+ });
236
+ });
237
+
238
+ function resetDefault(keys: Record<string, V2StorageKeyItem>) {
239
+ return Array.from(Object.values(keys)).reduce(
240
+ (acc, i) => ({ ...acc, [i.fingerPrint]: { ...i, default: false } }),
241
+ {} as Record<string, V2StorageKeyItem>,
242
+ );
243
+ }
@@ -49,7 +49,7 @@ describe("MetaKeyHack", () => {
49
49
  const rGet = await memGw.get(rUrl.Ok(), sthis);
50
50
  const metas = JSON.parse(ctx.loader.sthis.txt.decode(rGet.Ok()));
51
51
  const keyMaterials = metas.keys;
52
- const dataStoreKeyMaterial = await rDataStoreKeyItem.Ok().asKeysItem();
52
+ const dataStoreKeyMaterial = await rDataStoreKeyItem.Ok().asV2KeysItem();
53
53
  expect(keyMaterials.length).toBeGreaterThan(0);
54
54
  expect(dataStoreKeyMaterial).toEqual({
55
55
  keys: {
@@ -1 +1 @@
1
- {"version":3,"file":"meta-key-hack.test.js","sourceRoot":"","sources":["meta-key-hack.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAY,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAE7D,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;IAE7B,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACnD,qBAAqB,CAAC;QACpB,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,+BAA+B,CAAC;QAC3D,YAAY,EAAE,KAAK,IAAI,EAAE;YACvB,OAAO,IAAI,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAChD,CAAC;KACF,CAAC,CAAC;IAEH,IAAI,EAAY,CAAC;IACjB,IAAI,GAAyB,CAAC;IAC9B,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE;YACrB,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC;aAC1E;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,qEAAqE;aAC3E;SACF,CAAC,CAAC;QACH,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;QACjB,GAAG,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAChD,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5D,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,SAAS,CACjD,GAAG,EACH,SAAS,CAAC,GAAG,EAAE,EAEf,WAAW,CACZ,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;QAE9B,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;QAC3D,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,iBAAiB,GAAG,MAAM,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAEhG,MAAM,iBAAiB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QACtE,MAAM,iBAAiB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QAEtE,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;QAE3D,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAwB,CAAC;QACxF,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC;QAChC,MAAM,oBAAoB,GAAG,MAAM,iBAAiB,CAAC,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC;QACvE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC;YACnC,IAAI,EAAE;gBACJ,GAAG,CAAC,MAAM,iBAAiB;qBACxB,EAAE,EAAE;qBACJ,GAAG,EAAE;qBACL,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBAClB,CAAC,CAAC,EAAE,WAAqB,CAAC,EAAE;wBAC1B,OAAO,EAAE,IAAI;wBACb,WAAW,EAAE,CAAC,EAAE,WAAW;wBAC3B,GAAG,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;qBAC9C;iBACF,CAAC,CAAC,CAAC;gBACN,6CAA6C,EAAE;oBAC7C,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,+CAA+C;oBAC5D,GAAG,EAAE,yBAAyB;iBAC/B;gBACD,6CAA6C,EAAE;oBAC7C,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,+CAA+C;oBAC5D,GAAG,EAAE,yBAAyB;iBAC/B;aACF;YACD,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;QAIH,MAAM,CAAC,WAAW,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC7C,MAAM,qBAAqB,GAAG,SAAS,CAAC,WAAoC,CAAC;QAC7E,MAAM,CACJ,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAClH,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrH,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"meta-key-hack.test.js","sourceRoot":"","sources":["meta-key-hack.test.ts"],"names":[],"mappings":"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"}
@@ -63,7 +63,7 @@ describe("MetaKeyHack", () => {
63
63
  const rGet = await memGw.get(rUrl.Ok(), sthis);
64
64
  const metas = JSON.parse(ctx.loader.sthis.txt.decode(rGet.Ok())) as V2SerializedMetaKey;
65
65
  const keyMaterials = metas.keys;
66
- const dataStoreKeyMaterial = await rDataStoreKeyItem.Ok().asKeysItem();
66
+ const dataStoreKeyMaterial = await rDataStoreKeyItem.Ok().asV2KeysItem();
67
67
  expect(keyMaterials.length).toBeGreaterThan(0);
68
68
  expect(dataStoreKeyMaterial).toEqual({
69
69
  keys: {