Skip to content

Commit f8eca24

Browse files
ToMany: test removing and adding in one put.
1 parent b0a5c2b commit f8eca24

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

objectbox/test/relations_test.dart

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,7 @@ void main() {
222222

223223
test('put', () {
224224
expect(src!.relManyA, isNotNull);
225+
// Add three
225226
src!.relManyA.add(RelatedEntityA(tInt: 1));
226227
src!.relManyA.addAll(
227228
[RelatedEntityA(tInt: 2), src!.relManyA[0], RelatedEntityA(tInt: 3)]);
@@ -230,20 +231,29 @@ void main() {
230231
src = env.box.get(1);
231232
check(src!.relManyA, items: [1, 2, 3], added: [], removed: []);
232233

234+
// Remove one
233235
src!.relManyA.removeWhere((e) => e.tInt == 2);
234236
check(src!.relManyA, items: [1, 3], added: [], removed: [2]);
235237
env.box.put(src!);
236238

237239
src = env.box.get(1);
238240
check(src!.relManyA, items: [1, 3], added: [], removed: []);
239241

242+
// Add existing again, add new one
240243
src!.relManyA.add(src!.relManyA[0]);
241244
src!.relManyA.add(RelatedEntityA(tInt: 4));
242245
check(src!.relManyA, items: [1, 1, 3, 4], added: [1, 4], removed: []);
243246
env.box.put(src!);
244247

245248
src = env.box.get(1);
246249
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: []);
247257
});
248258

249259
// note: this requires box.attach() in Java/Kotlin, should not here.

0 commit comments

Comments
 (0)