@@ -227,6 +227,34 @@ void main() {
227227 await expectNoAssets ();
228228 });
229229
230+ test ('put | put remove' , () async {
231+ await bucketStorage.saveSyncData (SyncDataBatch ([
232+ SyncBucketData (bucket: 'bucket1' , data: [putAsset1_1]),
233+ ]));
234+
235+ await syncLocalChecked (Checkpoint (lastOpId: '1' , checksums: [
236+ BucketChecksum (bucket: 'bucket1' , checksum: 1 ),
237+ ]));
238+
239+ expect (
240+ await powersync.execute (
241+ "SELECT id, description, make FROM assets WHERE id = 'O1'" ),
242+ equals ([
243+ {'id' : 'O1' , 'description' : 'bar' , 'make' : null }
244+ ]));
245+
246+ await bucketStorage.saveSyncData (SyncDataBatch ([
247+ SyncBucketData (bucket: 'bucket1' , data: [putAsset1_3]),
248+ SyncBucketData (bucket: 'bucket1' , data: [removeAsset1_5])
249+ ]));
250+
251+ await syncLocalChecked (Checkpoint (lastOpId: '5' , checksums: [
252+ BucketChecksum (bucket: 'bucket1' , checksum: 9 ),
253+ ]));
254+
255+ await expectNoAssets ();
256+ });
257+
230258 test ('should use subkeys' , () async {
231259 // subkeys cause this to be treated as a separate entity in the oplog,
232260 // but same entity in the local db.
0 commit comments