@powersync/service-core-tests 0.0.0-dev-20260803144812 → 0.0.0-dev-20260929095716

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 (40) hide show
  1. package/CHANGELOG.md +60 -5
  2. package/dist/test-utils/AbstractStreamTestContext.js +4 -3
  3. package/dist/test-utils/AbstractStreamTestContext.js.map +1 -1
  4. package/dist/test-utils/leased-storage.d.ts +9 -0
  5. package/dist/test-utils/leased-storage.js +53 -0
  6. package/dist/test-utils/leased-storage.js.map +1 -0
  7. package/dist/test-utils/storage-combinations.d.ts +13 -0
  8. package/dist/test-utils/storage-combinations.js +26 -0
  9. package/dist/test-utils/storage-combinations.js.map +1 -0
  10. package/dist/test-utils/test-utils-index.d.ts +2 -0
  11. package/dist/test-utils/test-utils-index.js +2 -0
  12. package/dist/test-utils/test-utils-index.js.map +1 -1
  13. package/dist/tests/register-compacting-tests.js +16 -15
  14. package/dist/tests/register-compacting-tests.js.map +1 -1
  15. package/dist/tests/register-data-storage-checkpoint-tests.js +47 -21
  16. package/dist/tests/register-data-storage-checkpoint-tests.js.map +1 -1
  17. package/dist/tests/register-data-storage-data-tests.js +37 -24
  18. package/dist/tests/register-data-storage-data-tests.js.map +1 -1
  19. package/dist/tests/register-data-storage-parameter-tests.js +16 -15
  20. package/dist/tests/register-data-storage-parameter-tests.js.map +1 -1
  21. package/dist/tests/register-parameter-compacting-tests.js +6 -4
  22. package/dist/tests/register-parameter-compacting-tests.js.map +1 -1
  23. package/dist/tests/register-sync-tests.js +28 -26
  24. package/dist/tests/register-sync-tests.js.map +1 -1
  25. package/dist/tests/util.d.ts +6 -0
  26. package/dist/tests/util.js +12 -0
  27. package/dist/tests/util.js.map +1 -1
  28. package/package.json +4 -4
  29. package/src/test-utils/AbstractStreamTestContext.ts +4 -3
  30. package/src/test-utils/leased-storage.ts +58 -0
  31. package/src/test-utils/storage-combinations.ts +51 -0
  32. package/src/test-utils/test-utils-index.ts +2 -0
  33. package/src/tests/register-compacting-tests.ts +16 -15
  34. package/src/tests/register-data-storage-checkpoint-tests.ts +85 -56
  35. package/src/tests/register-data-storage-data-tests.ts +41 -24
  36. package/src/tests/register-data-storage-parameter-tests.ts +16 -15
  37. package/src/tests/register-parameter-compacting-tests.ts +6 -4
  38. package/src/tests/register-sync-tests.ts +28 -26
  39. package/src/tests/util.ts +13 -0
  40. package/tsconfig.tsbuildinfo +1 -1
@@ -1,7 +1,9 @@
1
1
  import { storage, updateSyncRulesFromYaml } from '@powersync/service-core';
2
2
  import { ScopedParameterLookup } from '@powersync/service-sync-rules';
3
3
  import { expect, test } from 'vitest';
4
+ import { getTestStorage } from '../test-utils/leased-storage.js';
4
5
  import * as test_utils from '../test-utils/test-utils-index.js';
6
+ import { compactActive } from './util.js';
5
7
  export function registerParameterCompactTests(config) {
6
8
  const generateStorageFactory = config.factory;
7
9
  test('compacting parameters', async () => {
@@ -12,7 +14,7 @@ bucket_definitions:
12
14
  parameters: select id from test where id = request.user_id()
13
15
  data: []
14
16
  `));
15
- const bucketStorage = factory.getInstance(syncRules);
17
+ const bucketStorage = await getTestStorage(factory, syncRules);
16
18
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
17
19
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
18
20
  await writer.markAllSnapshotDone('1/1');
@@ -62,7 +64,7 @@ bucket_definitions:
62
64
  const parameters2 = await checkpoint2.getParameterSets([lookup], 1000);
63
65
  expect(parameters2).toEqual([]);
64
66
  const statsBefore = await bucketStorage.factory.getStorageMetrics();
65
- await bucketStorage.compact({ compactParameterData: true });
67
+ await compactActive(factory, { compactParameterData: true });
66
68
  // Check consistency
67
69
  const parameters1b = await checkpoint1.getParameterSets([lookup], 1000);
68
70
  const parameters2b = await checkpoint2.getParameterSets([lookup], 1000);
@@ -81,7 +83,7 @@ bucket_definitions:
81
83
  parameters: select id from test where uid = request.user_id()
82
84
  data: []
83
85
  `));
84
- const bucketStorage = factory.getInstance(syncRules);
86
+ const bucketStorage = await getTestStorage(factory, syncRules);
85
87
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
86
88
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
87
89
  await writer.markAllSnapshotDone('1/1');
@@ -130,7 +132,7 @@ bucket_definitions:
130
132
  const parameters1 = await checkpoint1.getParameterSets([lookup], 1000);
131
133
  expect(parameters1).toEqual([]);
132
134
  const statsBefore = await bucketStorage.factory.getStorageMetrics();
133
- await bucketStorage.compact({ compactParameterData: true, compactParameterCacheLimit: cacheLimit });
135
+ await compactActive(factory, { compactParameterData: true, compactParameterCacheLimit: cacheLimit });
134
136
  // Check consistency
135
137
  const parameters1b = await checkpoint1.getParameterSets([lookup], 1000);
136
138
  expect(parameters1b).toEqual([]);
@@ -1 +1 @@
1
- {"version":3,"file":"register-parameter-compacting-tests.js","sourceRoot":"","sources":["../../src/tests/register-parameter-compacting-tests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register-parameter-compacting-tests.js","sourceRoot":"","sources":["../../src/tests/register-parameter-compacting-tests.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,10 @@ import path from 'path';
4
4
  import * as timers from 'timers/promises';
5
5
  import { fileURLToPath } from 'url';
6
6
  import { expect, test, vi } from 'vitest';
7
+ import { getTestStorage } from '../test-utils/leased-storage.js';
7
8
  import * as test_utils from '../test-utils/test-utils-index.js';
8
9
  import { bucketRequest, METRICS_HELPER } from '../test-utils/test-utils-index.js';
10
+ import { compactActive } from './util.js';
9
11
  const __filename = fileURLToPath(import.meta.url);
10
12
  const __dirname = path.dirname(__filename);
11
13
  const BASIC_SYNC_RULES = `
@@ -46,7 +48,7 @@ export function registerSyncTests(configOrFactory, options = {}) {
46
48
  const syncRules = await updateSyncRules(f, {
47
49
  content: BASIC_SYNC_RULES
48
50
  });
49
- const bucketStorage = f.getInstance(syncRules);
51
+ const bucketStorage = await getTestStorage(f, syncRules);
50
52
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
51
53
  const sourceTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
52
54
  await writer.markAllSnapshotDone('0/1');
@@ -100,7 +102,7 @@ bucket_definitions:
100
102
  - SELECT * FROM test WHERE LENGTH(id) > 2;
101
103
  `
102
104
  });
103
- const bucketStorage = f.getInstance(syncRules);
105
+ const bucketStorage = await getTestStorage(f, syncRules);
104
106
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
105
107
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
106
108
  await writer.markAllSnapshotDone('0/1');
@@ -151,7 +153,7 @@ streams:
151
153
  query: SELECT * FROM test WHERE id IN subscription.parameter('test_ids')
152
154
  `
153
155
  });
154
- const bucketStorage = f.getInstance(syncRules);
156
+ const bucketStorage = await getTestStorage(f, syncRules);
155
157
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
156
158
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
157
159
  await writer.markAllSnapshotDone('0/1');
@@ -224,7 +226,7 @@ bucket_definitions:
224
226
  - SELECT * FROM test WHERE substring(id, 1, 8) = 'highprio';
225
227
  `
226
228
  });
227
- const bucketStorage = f.getInstance(syncRules);
229
+ const bucketStorage = await getTestStorage(f, syncRules);
228
230
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
229
231
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
230
232
  const syncRulesContent = syncRules.syncConfigContent[0];
@@ -385,7 +387,7 @@ bucket_definitions:
385
387
  - SELECT * FROM test WHERE LENGTH(id) > 5 AND description = bucket.user_id;
386
388
  `
387
389
  });
388
- const bucketStorage = f.getInstance(syncRules);
390
+ const bucketStorage = await getTestStorage(f, syncRules);
389
391
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
390
392
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
391
393
  await writer.markAllSnapshotDone('0/1');
@@ -506,7 +508,7 @@ bucket_definitions:
506
508
  - SELECT * FROM test WHERE substring(id, 1, 8) = 'highprio';
507
509
  `
508
510
  });
509
- const bucketStorage = f.getInstance(syncRules);
511
+ const bucketStorage = await getTestStorage(f, syncRules);
510
512
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
511
513
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
512
514
  const syncRulesContent = syncRules.syncConfigContent[0];
@@ -665,7 +667,7 @@ bucket_definitions:
665
667
  const syncRules = await updateSyncRules(f, {
666
668
  content: BASIC_SYNC_RULES
667
669
  });
668
- const bucketStorage = f.getInstance(syncRules);
670
+ const bucketStorage = await getTestStorage(f, syncRules);
669
671
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
670
672
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
671
673
  await writer.markAllSnapshotDone('0/1');
@@ -720,7 +722,7 @@ bucket_definitions:
720
722
  const syncRules = await updateSyncRules(f, {
721
723
  content: BASIC_SYNC_RULES
722
724
  });
723
- const bucketStorage = await f.getInstance(syncRules);
725
+ const bucketStorage = await await getTestStorage(f, syncRules);
724
726
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
725
727
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
726
728
  await writer.markAllSnapshotDone('0/1');
@@ -758,7 +760,7 @@ bucket_definitions:
758
760
  const syncRules = await updateSyncRules(f, {
759
761
  content: BASIC_SYNC_RULES
760
762
  });
761
- const bucketStorage = await f.getInstance(syncRules);
763
+ const bucketStorage = await await getTestStorage(f, syncRules);
762
764
  const stream = sync.streamResponse({
763
765
  syncContext,
764
766
  bucketStorage,
@@ -780,7 +782,7 @@ bucket_definitions:
780
782
  const syncRules = await updateSyncRules(f, {
781
783
  content: BASIC_SYNC_RULES
782
784
  });
783
- const bucketStorage = await f.getInstance(syncRules);
785
+ const bucketStorage = await await getTestStorage(f, syncRules);
784
786
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
785
787
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
786
788
  // Activate
@@ -837,7 +839,7 @@ bucket_definitions:
837
839
  - select * from lists where user_id = bucket.user_id
838
840
  `
839
841
  });
840
- const bucketStorage = await f.getInstance(syncRules);
842
+ const bucketStorage = await await getTestStorage(f, syncRules);
841
843
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
842
844
  const usersTable = await test_utils.resolveTestTable(writer, 'users', ['id'], config, 1);
843
845
  // Activate
@@ -891,7 +893,7 @@ bucket_definitions:
891
893
  - select * from lists where user_id = bucket.user_id
892
894
  `
893
895
  });
894
- const bucketStorage = await f.getInstance(syncRules);
896
+ const bucketStorage = await await getTestStorage(f, syncRules);
895
897
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
896
898
  const usersTable = await test_utils.resolveTestTable(writer, 'users', ['id'], config, 1);
897
899
  const listsTable = await test_utils.resolveTestTable(writer, 'lists', ['id'], config, 2);
@@ -953,7 +955,7 @@ bucket_definitions:
953
955
  - select * from lists where user_id = bucket.user_id
954
956
  `
955
957
  });
956
- const bucketStorage = await f.getInstance(syncRules);
958
+ const bucketStorage = await await getTestStorage(f, syncRules);
957
959
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
958
960
  const usersTable = await test_utils.resolveTestTable(writer, 'users', ['id'], config, 1);
959
961
  const listsTable = await test_utils.resolveTestTable(writer, 'lists', ['id'], config, 2);
@@ -1011,7 +1013,7 @@ bucket_definitions:
1011
1013
  const syncRules = await updateSyncRules(f, {
1012
1014
  content: BASIC_SYNC_RULES
1013
1015
  });
1014
- const bucketStorage = await f.getInstance(syncRules);
1016
+ const bucketStorage = await await getTestStorage(f, syncRules);
1015
1017
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
1016
1018
  // Activate
1017
1019
  await writer.markAllSnapshotDone('0/0');
@@ -1044,7 +1046,7 @@ bucket_definitions:
1044
1046
  const syncRules = await updateSyncRules(f, {
1045
1047
  content: BASIC_SYNC_RULES
1046
1048
  });
1047
- const bucketStorage = await f.getInstance(syncRules);
1049
+ const bucketStorage = await await getTestStorage(f, syncRules);
1048
1050
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
1049
1051
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
1050
1052
  await writer.markAllSnapshotDone('0/1');
@@ -1124,9 +1126,10 @@ bucket_definitions:
1124
1126
  const syncRules = await updateSyncRules(f, {
1125
1127
  content: BASIC_SYNC_RULES
1126
1128
  });
1127
- const bucketStorage = await f.getInstance(syncRules);
1129
+ const bucketStorage = await await getTestStorage(f, syncRules);
1128
1130
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
1129
1131
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
1132
+ const bucket = bucketRequest(syncRules.syncConfigContent[0], 'mybucket[]').bucket;
1130
1133
  await writer.markAllSnapshotDone('0/1');
1131
1134
  await writer.save({
1132
1135
  sourceTable: testTable,
@@ -1194,10 +1197,7 @@ bucket_definitions:
1194
1197
  afterReplicaId: 't2'
1195
1198
  });
1196
1199
  await writer.commit('0/2');
1197
- await bucketStorage.compact({
1198
- minBucketChanges: 1,
1199
- minChangeRatio: 0
1200
- });
1200
+ await compactActive(f, { compactBuckets: [bucket] });
1201
1201
  const lines2 = await getCheckpointLines(iter, { consume: true });
1202
1202
  // Snapshot test checks for changes in general.
1203
1203
  // The tests after that documents the specific things we're looking for
@@ -1265,9 +1265,10 @@ bucket_definitions:
1265
1265
  - SELECT * FROM test WHERE id = 'low';
1266
1266
  `
1267
1267
  });
1268
- const bucketStorage = await f.getInstance(syncRules);
1268
+ const bucketStorage = await await getTestStorage(f, syncRules);
1269
1269
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
1270
1270
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config);
1271
+ const highPriorityBucket = bucketRequest(syncRules.syncConfigContent[0], 'high_priority[]').bucket;
1271
1272
  await writer.markAllSnapshotDone('0/1');
1272
1273
  await writer.save({
1273
1274
  sourceTable: testTable,
@@ -1344,9 +1345,10 @@ bucket_definitions:
1344
1345
  afterReplicaId: 'high2'
1345
1346
  });
1346
1347
  await writer.commit('0/2');
1347
- await bucketStorage.compact({
1348
- minBucketChanges: 1,
1349
- minChangeRatio: 0
1348
+ await compactActive(f, {
1349
+ // Explicitly compact the high-priority bucket: V3 schedules background
1350
+ // compaction, while this test needs compaction at this exact point.
1351
+ compactBuckets: [highPriorityBucket]
1350
1352
  });
1351
1353
  const lines = await getCheckpointLines(iter, { consume: true });
1352
1354
  const nextCheckpointIndex = lines.findIndex((line) => line?.checkpoint_diff != null);
@@ -1374,7 +1376,7 @@ bucket_definitions:
1374
1376
  const syncRules = await updateSyncRules(f, {
1375
1377
  content: BASIC_SYNC_RULES
1376
1378
  });
1377
- const bucketStorage = f.getInstance(syncRules);
1379
+ const bucketStorage = await getTestStorage(f, syncRules);
1378
1380
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
1379
1381
  await writer.markAllSnapshotDone('0/1');
1380
1382
  // <= the managed write checkpoint LSN below
@@ -1450,7 +1452,7 @@ config:
1450
1452
  const syncRules = await updateSyncRules(f, {
1451
1453
  content: rules[i]
1452
1454
  });
1453
- const bucketStorage = f.getInstance(syncRules);
1455
+ const bucketStorage = await getTestStorage(f, syncRules);
1454
1456
  await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
1455
1457
  const testTable = await test_utils.resolveTestTable(writer, 'test', ['id'], config, i + 1);
1456
1458
  await writer.markAllSnapshotDone('0/1');
@@ -1 +1 @@
1
- {"version":3,"file":"register-sync-tests.js","sourceRoot":"","sources":["../../src/tests/register-sync-tests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register-sync-tests.js","sourceRoot":"","sources":["../../src/tests/register-sync-tests.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,11 @@
1
1
  import { storage } from '@powersync/service-core';
2
2
  import { ParameterIndexLookupCreator, ParameterLookupScope } from '@powersync/service-sync-rules';
3
+ /**
4
+ * Resolve storage again after test writes activate the sync config. The storage
5
+ * instance used by the writer retains its original PROCESSING stream snapshot,
6
+ * while compact() expects an instance constructed with the current state.
7
+ */
8
+ export declare function compactActive(factory: storage.BucketStorageFactory, options: storage.CompactOptions): Promise<void>;
3
9
  export declare function bucketRequestMap(syncRules: storage.PersistedSyncConfigContent, buckets: Iterable<readonly [string, bigint]>): storage.BucketDataRequest[];
4
10
  export declare function bucketRequests(syncRules: storage.PersistedSyncConfigContent, bucketNames: string[]): storage.BucketChecksumRequest[];
5
11
  export declare function parameterLookupScope(lookupName: string, queryId: string, source?: ParameterIndexLookupCreator): ParameterLookupScope;
@@ -1,4 +1,16 @@
1
1
  import { bucketRequest } from '../test-utils/general-utils.js';
2
+ /**
3
+ * Resolve storage again after test writes activate the sync config. The storage
4
+ * instance used by the writer retains its original PROCESSING stream snapshot,
5
+ * while compact() expects an instance constructed with the current state.
6
+ */
7
+ export async function compactActive(factory, options) {
8
+ const active = await factory.getActiveSyncConfig();
9
+ if (active == null) {
10
+ throw new Error('Expected an active sync config before compacting');
11
+ }
12
+ await active.storage.compact(options);
13
+ }
2
14
  export function bucketRequestMap(syncRules, buckets) {
3
15
  return Array.from(buckets, ([bucketName, opId]) => bucketRequest(syncRules, bucketName, opId));
4
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/tests/util.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,MAAM,UAAU,gBAAgB,CAC9B,SAA6C,EAC7C,OAA4C;IAE5C,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;AACjG,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,SAA6C,EAC7C,WAAqB;IAErB,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QACpC,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;QACzD,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,mBAAmB,GAAgC;IACvD,IAAI,QAAQ;QACV,OAAO;YACL,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,GAAG;SACb,CAAC;IACJ,CAAC;IACD,eAAe;QACb,OAAO,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;IACD,eAAe,CAAC,KAAK;QACnB,OAAO;YACL,oBAAoB,CAAC,WAAW,EAAE,GAAG;gBACnC,OAAO,EAAE,CAAC;YACZ,CAAC;SACF,CAAC;IACJ,CAAC;IACD,oBAAoB,CAAC,MAAsB;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;CACF,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAClC,UAAkB,EAClB,OAAe,EACf,SAAsC,mBAAmB;IAEzD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/tests/util.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAqC,EAAE,OAA+B;IACxG,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,mBAAmB,EAAE,CAAC;IACnD,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,SAA6C,EAC7C,OAA4C;IAE5C,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;AACjG,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,SAA6C,EAC7C,WAAqB;IAErB,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QACpC,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;QACzD,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,mBAAmB,GAAgC;IACvD,IAAI,QAAQ;QACV,OAAO;YACL,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,GAAG;SACb,CAAC;IACJ,CAAC;IACD,eAAe;QACb,OAAO,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;IACD,eAAe,CAAC,KAAK;QACnB,OAAO;YACL,oBAAoB,CAAC,WAAW,EAAE,GAAG;gBACnC,OAAO,EAAE,CAAC;YACZ,CAAC;SACF,CAAC;IACJ,CAAC;IACD,oBAAoB,CAAC,MAAsB;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;CACF,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAClC,UAAkB,EAClB,OAAe,EACf,SAAsC,mBAAmB;IAEzD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AACzC,CAAC"}
package/package.json CHANGED
@@ -4,15 +4,15 @@
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
7
- "version": "0.0.0-dev-20260803144812",
7
+ "version": "0.0.0-dev-20260929095716",
8
8
  "exports": "./dist/index.js",
9
9
  "license": "FSL-1.1-ALv2",
10
10
  "type": "module",
11
11
  "dependencies": {
12
- "@powersync/lib-services-framework": "^0.0.0-dev-20260803144812",
13
- "@powersync/service-core": "^0.0.0-dev-20260803144812",
12
+ "@powersync/lib-services-framework": "^0.0.0-dev-20260929095716",
13
+ "@powersync/service-core": "^0.0.0-dev-20260929095716",
14
14
  "@powersync/service-jsonbig": "^0.17.13",
15
- "@powersync/service-sync-rules": "^0.0.0-dev-20260803144812"
15
+ "@powersync/service-sync-rules": "^0.0.0-dev-20260929095716"
16
16
  },
17
17
  "peerDependencies": {
18
18
  "vitest": "^4.1.5"
@@ -11,6 +11,7 @@ import {
11
11
  } from '@powersync/service-core';
12
12
  import { StorageDataHelpers } from './StorageDataHelpers.js';
13
13
  import { bucketRequest, getBatchArray } from './general-utils.js';
14
+ import { getTestStorage } from './leased-storage.js';
14
15
 
15
16
  export abstract class AbstractStreamTestContext implements AsyncDisposable {
16
17
  protected abortController = new AbortController();
@@ -50,7 +51,7 @@ export abstract class AbstractStreamTestContext implements AsyncDisposable {
50
51
  );
51
52
  this.replicationStream = stream;
52
53
  this.syncRulesContent = stream.syncConfigContent[0];
53
- this.storage = this.factory.getInstance(stream);
54
+ this.storage = await getTestStorage(this.factory, stream);
54
55
  return this.storage!;
55
56
  }
56
57
 
@@ -62,7 +63,7 @@ export abstract class AbstractStreamTestContext implements AsyncDisposable {
62
63
 
63
64
  this.syncRulesContent = syncConfig.content;
64
65
  this.replicationStream = syncConfig.replicationStream;
65
- this.storage = syncConfig.storage;
66
+ this.storage = await getTestStorage(this.factory, syncConfig.replicationStream);
66
67
  return this.storage!;
67
68
  }
68
69
 
@@ -74,7 +75,7 @@ export abstract class AbstractStreamTestContext implements AsyncDisposable {
74
75
 
75
76
  this.syncRulesContent = syncConfig.content;
76
77
  this.replicationStream = syncConfig.replicationStream;
77
- this.storage = syncConfig.storage;
78
+ this.storage = await getTestStorage(this.factory, syncConfig.replicationStream);
78
79
  return this.storage!;
79
80
  }
80
81