@@ -222,6 +222,7 @@ void main() {
222
222
223
223
test ('put' , () {
224
224
expect (src! .relManyA, isNotNull);
225
+ // Add three
225
226
src! .relManyA.add (RelatedEntityA (tInt: 1 ));
226
227
src! .relManyA.addAll (
227
228
[RelatedEntityA (tInt: 2 ), src! .relManyA[0 ], RelatedEntityA (tInt: 3 )]);
@@ -230,20 +231,29 @@ void main() {
230
231
src = env.box.get (1 );
231
232
check (src! .relManyA, items: [1 , 2 , 3 ], added: [], removed: []);
232
233
234
+ // Remove one
233
235
src! .relManyA.removeWhere ((e) => e.tInt == 2 );
234
236
check (src! .relManyA, items: [1 , 3 ], added: [], removed: [2 ]);
235
237
env.box.put (src! );
236
238
237
239
src = env.box.get (1 );
238
240
check (src! .relManyA, items: [1 , 3 ], added: [], removed: []);
239
241
242
+ // Add existing again, add new one
240
243
src! .relManyA.add (src! .relManyA[0 ]);
241
244
src! .relManyA.add (RelatedEntityA (tInt: 4 ));
242
245
check (src! .relManyA, items: [1 , 1 , 3 , 4 ], added: [1 , 4 ], removed: []);
243
246
env.box.put (src! );
244
247
245
248
src = env.box.get (1 );
246
249
check (src! .relManyA, items: [1 , 3 , 4 ], added: [], removed: []);
250
+
251
+ // Remove one, add one
252
+ src! .relManyA.removeWhere ((element) => element.tInt == 3 );
253
+ src! .relManyA.add (RelatedEntityA (tInt: 5 ));
254
+ env.box.put (src! );
255
+ src = env.box.get (1 );
256
+ check (src! .relManyA, items: [1 , 4 , 5 ], added: [], removed: []);
247
257
});
248
258
249
259
// note: this requires box.attach() in Java/Kotlin, should not here.
0 commit comments