@powersync/service-core-tests 0.17.2 → 0.18.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.
- package/CHANGELOG.md +52 -0
- package/dist/test-utils/AbstractStreamTestContext.d.ts +1 -1
- package/dist/test-utils/AbstractStreamTestContext.js +2 -3
- package/dist/test-utils/AbstractStreamTestContext.js.map +1 -1
- package/dist/test-utils/StorageDataHelpers.d.ts +3 -2
- package/dist/test-utils/StorageDataHelpers.js +40 -2
- package/dist/test-utils/StorageDataHelpers.js.map +1 -1
- package/dist/test-utils/general-utils.d.ts +3 -1
- package/dist/test-utils/general-utils.js +13 -1
- package/dist/test-utils/general-utils.js.map +1 -1
- package/dist/test-utils/storage-combinations.d.ts +13 -0
- package/dist/test-utils/storage-combinations.js +26 -0
- package/dist/test-utils/storage-combinations.js.map +1 -0
- package/dist/test-utils/stream_utils.d.ts +0 -1
- package/dist/test-utils/stream_utils.js +0 -10
- package/dist/test-utils/stream_utils.js.map +1 -1
- package/dist/test-utils/test-utils-index.d.ts +1 -0
- package/dist/test-utils/test-utils-index.js +1 -0
- package/dist/test-utils/test-utils-index.js.map +1 -1
- package/dist/tests/register-compacting-tests.js +15 -15
- package/dist/tests/register-compacting-tests.js.map +1 -1
- package/dist/tests/register-data-storage-checkpoint-tests.js +132 -14
- package/dist/tests/register-data-storage-checkpoint-tests.js.map +1 -1
- package/dist/tests/register-data-storage-data-tests.js +116 -96
- package/dist/tests/register-data-storage-data-tests.js.map +1 -1
- package/dist/tests/register-parameter-compacting-tests.js +3 -2
- package/dist/tests/register-parameter-compacting-tests.js.map +1 -1
- package/dist/tests/register-sync-tests.js +267 -82
- package/dist/tests/register-sync-tests.js.map +1 -1
- package/dist/tests/util.d.ts +6 -0
- package/dist/tests/util.js +12 -0
- package/dist/tests/util.js.map +1 -1
- package/package.json +4 -4
- package/src/test-utils/AbstractStreamTestContext.ts +2 -3
- package/src/test-utils/StorageDataHelpers.ts +45 -2
- package/src/test-utils/general-utils.ts +27 -3
- package/src/test-utils/storage-combinations.ts +51 -0
- package/src/test-utils/stream_utils.ts +0 -11
- package/src/test-utils/test-utils-index.ts +1 -0
- package/src/tests/register-compacting-tests.ts +15 -15
- package/src/tests/register-data-storage-checkpoint-tests.ts +161 -14
- package/src/tests/register-data-storage-data-tests.ts +132 -134
- package/src/tests/register-parameter-compacting-tests.ts +3 -2
- package/src/tests/register-sync-tests.ts +288 -84
- package/src/tests/util.ts +13 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { storage, updateSyncRulesFromYaml } from '@powersync/service-core';
|
|
2
2
|
import { expect, test } from 'vitest';
|
|
3
3
|
import * as test_utils from '../test-utils/test-utils-index.js';
|
|
4
|
+
import { compactActive } from './util.js';
|
|
4
5
|
/**
|
|
5
6
|
* @example
|
|
6
7
|
* ```TypeScript
|
|
@@ -28,7 +29,10 @@ bucket_definitions:
|
|
|
28
29
|
const abortController = new AbortController();
|
|
29
30
|
context.onTestFinished(() => abortController.abort());
|
|
30
31
|
const iter = bucketStorage
|
|
31
|
-
.watchCheckpointChanges({
|
|
32
|
+
.watchCheckpointChanges({
|
|
33
|
+
user_id: 'user1',
|
|
34
|
+
signal: abortController.signal
|
|
35
|
+
})[Symbol.asyncIterator]();
|
|
32
36
|
await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
|
|
33
37
|
await writer.markAllSnapshotDone('1/1');
|
|
34
38
|
const writeCheckpoint = await createManagedWriteCheckpoint(bucketStorage, {
|
|
@@ -64,7 +68,10 @@ bucket_definitions:
|
|
|
64
68
|
const abortController = new AbortController();
|
|
65
69
|
context.onTestFinished(() => abortController.abort());
|
|
66
70
|
const iter = bucketStorage
|
|
67
|
-
.watchCheckpointChanges({
|
|
71
|
+
.watchCheckpointChanges({
|
|
72
|
+
user_id: 'user1',
|
|
73
|
+
signal: abortController.signal
|
|
74
|
+
})[Symbol.asyncIterator]();
|
|
68
75
|
await writer.keepalive('5/0');
|
|
69
76
|
const result = await iter.next();
|
|
70
77
|
expect(result).toMatchObject({
|
|
@@ -82,7 +89,7 @@ bucket_definitions:
|
|
|
82
89
|
user_id: 'user1'
|
|
83
90
|
});
|
|
84
91
|
// We have to trigger a new keepalive after the checkpoint, at least to cover postgres storage.
|
|
85
|
-
// This is what is
|
|
92
|
+
// This is what is effectively triggered by RouteAPI.createReplicationHead().
|
|
86
93
|
// MongoDB storage doesn't explicitly need this anymore.
|
|
87
94
|
await writer.keepalive('6/0');
|
|
88
95
|
let result2 = await iter.next();
|
|
@@ -101,7 +108,7 @@ bucket_definitions:
|
|
|
101
108
|
}
|
|
102
109
|
});
|
|
103
110
|
});
|
|
104
|
-
test('
|
|
111
|
+
test('managed write checkpoints - client supplied ids are monotonic', async () => {
|
|
105
112
|
await using factory = await generateStorageFactory();
|
|
106
113
|
const r = await factory.configureSyncRules(updateSyncRulesFromYaml(`
|
|
107
114
|
bucket_definitions:
|
|
@@ -112,13 +119,73 @@ bucket_definitions:
|
|
|
112
119
|
storageVersion
|
|
113
120
|
}));
|
|
114
121
|
const bucketStorage = factory.getInstance(r.persisted_sync_rules);
|
|
115
|
-
bucketStorage
|
|
122
|
+
const first = await createManagedWriteCheckpointResult(bucketStorage, {
|
|
123
|
+
user_id: 'user1',
|
|
124
|
+
heads: { '1': '5/0' },
|
|
125
|
+
checkpoint_request_id: 42n
|
|
126
|
+
});
|
|
127
|
+
expect(first.writeCheckpoints.get('user1')).toEqual(42n);
|
|
128
|
+
expect(first.shouldAdvance).toBe(true);
|
|
129
|
+
await expect(bucketStorage.lastWriteCheckpoint({ user_id: 'user1', heads: { '1': '5/0' } })).resolves.toEqual(42n);
|
|
130
|
+
const stale = await createManagedWriteCheckpointResult(bucketStorage, {
|
|
131
|
+
user_id: 'user1',
|
|
132
|
+
heads: { '1': '8/0' },
|
|
133
|
+
checkpoint_request_id: 41n
|
|
134
|
+
});
|
|
135
|
+
expect(stale.writeCheckpoints.get('user1')).toEqual(42n);
|
|
136
|
+
// The stored checkpoint is unchanged but has not been processed by replication
|
|
137
|
+
// yet, so the source marker must still be forced (e.g. for a retry after a
|
|
138
|
+
// previous attempt failed to advance the marker).
|
|
139
|
+
expect(stale.shouldAdvance).toBe(true);
|
|
140
|
+
await expect(bucketStorage.lastWriteCheckpoint({ user_id: 'user1', heads: { '1': '6/0' } })).resolves.toEqual(42n);
|
|
141
|
+
const retried = await createManagedWriteCheckpointResult(bucketStorage, {
|
|
142
|
+
user_id: 'user1',
|
|
143
|
+
heads: { '1': '8/0' },
|
|
144
|
+
checkpoint_request_id: 42n
|
|
145
|
+
});
|
|
146
|
+
expect(retried.writeCheckpoints.get('user1')).toEqual(42n);
|
|
147
|
+
// Same as above: the duplicate request still points at a pending checkpoint.
|
|
148
|
+
expect(retried.shouldAdvance).toBe(true);
|
|
149
|
+
await expect(bucketStorage.lastWriteCheckpoint({ user_id: 'user1', heads: { '1': '6/0' } })).resolves.toEqual(42n);
|
|
150
|
+
const advanced = await createManagedWriteCheckpointResult(bucketStorage, {
|
|
151
|
+
user_id: 'user1',
|
|
152
|
+
heads: { '1': '8/0' },
|
|
153
|
+
checkpoint_request_id: 43n
|
|
154
|
+
});
|
|
155
|
+
expect(advanced.writeCheckpoints.get('user1')).toEqual(43n);
|
|
156
|
+
expect(advanced.shouldAdvance).toBe(true);
|
|
157
|
+
await expect(bucketStorage.lastWriteCheckpoint({ user_id: 'user1', heads: { '1': '7/0' } })).resolves.toBeNull();
|
|
158
|
+
await expect(bucketStorage.lastWriteCheckpoint({ user_id: 'user1', heads: { '1': '8/0' } })).resolves.toEqual(43n);
|
|
159
|
+
const generated = await createManagedWriteCheckpointResult(bucketStorage, {
|
|
160
|
+
user_id: 'user1',
|
|
161
|
+
heads: { '1': '9/0' }
|
|
162
|
+
});
|
|
163
|
+
expect(generated.writeCheckpoints.get('user1')).toEqual(44n);
|
|
164
|
+
expect(generated.shouldAdvance).toBe(true);
|
|
165
|
+
});
|
|
166
|
+
test.runIf((storageVersion ?? 1) < 3)('custom write checkpoints - checkpoint after write', async (context) => {
|
|
167
|
+
await using factory = await generateStorageFactory();
|
|
168
|
+
const r = await factory.configureSyncRules(updateSyncRulesFromYaml(`
|
|
169
|
+
bucket_definitions:
|
|
170
|
+
mybucket:
|
|
171
|
+
data: []
|
|
172
|
+
`, {
|
|
173
|
+
validate: false,
|
|
174
|
+
storageVersion
|
|
175
|
+
}));
|
|
176
|
+
const bucketStorage = factory.getInstance(r.persisted_sync_rules);
|
|
177
|
+
bucketStorage.setWriteCheckpointMode({
|
|
178
|
+
mode: storage.WriteCheckpointMode.CUSTOM
|
|
179
|
+
});
|
|
116
180
|
await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
|
|
117
181
|
await writer.markAllSnapshotDone('1/1');
|
|
118
182
|
const abortController = new AbortController();
|
|
119
183
|
context.onTestFinished(() => abortController.abort());
|
|
120
184
|
const iter = bucketStorage
|
|
121
|
-
.watchCheckpointChanges({
|
|
185
|
+
.watchCheckpointChanges({
|
|
186
|
+
user_id: 'user1',
|
|
187
|
+
signal: abortController.signal
|
|
188
|
+
})[Symbol.asyncIterator]();
|
|
122
189
|
writer.addCustomWriteCheckpoint({
|
|
123
190
|
checkpoint: 5n,
|
|
124
191
|
user_id: 'user1'
|
|
@@ -136,7 +203,7 @@ bucket_definitions:
|
|
|
136
203
|
}
|
|
137
204
|
});
|
|
138
205
|
});
|
|
139
|
-
test('custom write checkpoints - standalone checkpoint', async (context) => {
|
|
206
|
+
test.runIf((storageVersion ?? 1) < 3)('custom write checkpoints - standalone checkpoint', async (context) => {
|
|
140
207
|
await using factory = await generateStorageFactory();
|
|
141
208
|
const r = await factory.configureSyncRules(updateSyncRulesFromYaml(`
|
|
142
209
|
bucket_definitions:
|
|
@@ -147,13 +214,18 @@ bucket_definitions:
|
|
|
147
214
|
storageVersion
|
|
148
215
|
}));
|
|
149
216
|
const bucketStorage = factory.getInstance(r.persisted_sync_rules);
|
|
150
|
-
bucketStorage.setWriteCheckpointMode(
|
|
217
|
+
bucketStorage.setWriteCheckpointMode({
|
|
218
|
+
mode: storage.WriteCheckpointMode.CUSTOM
|
|
219
|
+
});
|
|
151
220
|
await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
|
|
152
221
|
await writer.markAllSnapshotDone('1/1');
|
|
153
222
|
const abortController = new AbortController();
|
|
154
223
|
context.onTestFinished(() => abortController.abort());
|
|
155
224
|
const iter = bucketStorage
|
|
156
|
-
.watchCheckpointChanges({
|
|
225
|
+
.watchCheckpointChanges({
|
|
226
|
+
user_id: 'user1',
|
|
227
|
+
signal: abortController.signal
|
|
228
|
+
})[Symbol.asyncIterator]();
|
|
157
229
|
// Flush to clear state
|
|
158
230
|
await writer.flush();
|
|
159
231
|
writer.addCustomWriteCheckpoint({
|
|
@@ -173,7 +245,7 @@ bucket_definitions:
|
|
|
173
245
|
}
|
|
174
246
|
});
|
|
175
247
|
});
|
|
176
|
-
test('custom write checkpoints - write after checkpoint', async (context) => {
|
|
248
|
+
test.runIf((storageVersion ?? 1) < 3)('custom write checkpoints - write after checkpoint', async (context) => {
|
|
177
249
|
await using factory = await generateStorageFactory();
|
|
178
250
|
const r = await factory.configureSyncRules(updateSyncRulesFromYaml(`
|
|
179
251
|
bucket_definitions:
|
|
@@ -184,13 +256,18 @@ bucket_definitions:
|
|
|
184
256
|
storageVersion
|
|
185
257
|
}));
|
|
186
258
|
const bucketStorage = factory.getInstance(r.persisted_sync_rules);
|
|
187
|
-
bucketStorage.setWriteCheckpointMode(
|
|
259
|
+
bucketStorage.setWriteCheckpointMode({
|
|
260
|
+
mode: storage.WriteCheckpointMode.CUSTOM
|
|
261
|
+
});
|
|
188
262
|
await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
|
|
189
263
|
await writer.markAllSnapshotDone('1/1');
|
|
190
264
|
const abortController = new AbortController();
|
|
191
265
|
context.onTestFinished(() => abortController.abort());
|
|
192
266
|
const iter = bucketStorage
|
|
193
|
-
.watchCheckpointChanges({
|
|
267
|
+
.watchCheckpointChanges({
|
|
268
|
+
user_id: 'user1',
|
|
269
|
+
signal: abortController.signal
|
|
270
|
+
})[Symbol.asyncIterator]();
|
|
194
271
|
await writer.keepalive('5/0');
|
|
195
272
|
const result = await iter.next();
|
|
196
273
|
expect(result).toMatchObject({
|
|
@@ -237,11 +314,52 @@ bucket_definitions:
|
|
|
237
314
|
}
|
|
238
315
|
});
|
|
239
316
|
});
|
|
317
|
+
test.runIf((storageVersion ?? 1) < 3)('custom write checkpoints - checkpoint request markers are temporary', async () => {
|
|
318
|
+
await using factory = await generateStorageFactory();
|
|
319
|
+
const r = await factory.configureSyncRules(updateSyncRulesFromYaml(`
|
|
320
|
+
bucket_definitions:
|
|
321
|
+
mybucket:
|
|
322
|
+
data: []
|
|
323
|
+
`, {
|
|
324
|
+
validate: false,
|
|
325
|
+
storageVersion
|
|
326
|
+
}));
|
|
327
|
+
const bucketStorage = factory.getInstance(r.persisted_sync_rules);
|
|
328
|
+
bucketStorage.setWriteCheckpointMode({
|
|
329
|
+
mode: storage.WriteCheckpointMode.CUSTOM
|
|
330
|
+
});
|
|
331
|
+
await using writer = await bucketStorage.createWriter(test_utils.BATCH_OPTIONS);
|
|
332
|
+
await writer.markAllSnapshotDone('1/1');
|
|
333
|
+
writer.addCustomWriteCheckpoint({
|
|
334
|
+
checkpoint: 5n,
|
|
335
|
+
user_id: 'persistent'
|
|
336
|
+
});
|
|
337
|
+
writer.addCustomWriteCheckpoint({
|
|
338
|
+
checkpoint: 6n,
|
|
339
|
+
user_id: 'temporary',
|
|
340
|
+
checkpoint_requested_at: new Date('2024-01-01T00:00:00.000Z')
|
|
341
|
+
});
|
|
342
|
+
await writer.flush();
|
|
343
|
+
await writer.keepalive('1/1');
|
|
344
|
+
await expect(bucketStorage.lastWriteCheckpoint({ user_id: 'persistent' })).resolves.toEqual(5n);
|
|
345
|
+
await expect(bucketStorage.lastWriteCheckpoint({ user_id: 'temporary' })).resolves.toEqual(6n);
|
|
346
|
+
await compactActive(factory, {
|
|
347
|
+
compactBuckets: [],
|
|
348
|
+
deleteCheckpointRequestsBefore: new Date(Date.now() + 1_000)
|
|
349
|
+
});
|
|
350
|
+
await expect(bucketStorage.lastWriteCheckpoint({ user_id: 'persistent' })).resolves.toEqual(5n);
|
|
351
|
+
await expect(bucketStorage.lastWriteCheckpoint({ user_id: 'temporary' })).resolves.toBeNull();
|
|
352
|
+
});
|
|
240
353
|
}
|
|
241
354
|
async function createManagedWriteCheckpoint(bucketStorage, checkpoint) {
|
|
242
|
-
const
|
|
243
|
-
const writeCheckpoint =
|
|
355
|
+
const result = await createManagedWriteCheckpointResult(bucketStorage, checkpoint);
|
|
356
|
+
const writeCheckpoint = result.writeCheckpoints.get(checkpoint.user_id);
|
|
244
357
|
expect(writeCheckpoint).not.toBeUndefined();
|
|
245
358
|
return writeCheckpoint;
|
|
246
359
|
}
|
|
360
|
+
async function createManagedWriteCheckpointResult(bucketStorage, checkpoint) {
|
|
361
|
+
const result = await bucketStorage.createManagedWriteCheckpoints([checkpoint]);
|
|
362
|
+
expect(result.writeCheckpoints.get(checkpoint.user_id)).not.toBeUndefined();
|
|
363
|
+
return result;
|
|
364
|
+
}
|
|
247
365
|
//# sourceMappingURL=register-data-storage-checkpoint-tests.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-data-storage-checkpoint-tests.js","sourceRoot":"","sources":["../../src/tests/register-data-storage-checkpoint-tests.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"register-data-storage-checkpoint-tests.js","sourceRoot":"","sources":["../../src/tests/register-data-storage-checkpoint-tests.ts"],"names":[],"mappings":"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"}
|