@@ -330,107 +330,6 @@ void main() {
330
330
});
331
331
});
332
332
333
- group ('UpdateMessageFlagsEvent' , () {
334
- UpdateMessageFlagsAddEvent mkAddEvent (
335
- MessageFlag flag,
336
- List <int > messageIds, {
337
- bool all = false ,
338
- }) {
339
- return UpdateMessageFlagsAddEvent (
340
- id: 1 ,
341
- flag: flag,
342
- messages: messageIds,
343
- all: all,
344
- );
345
- }
346
-
347
- const mkRemoveEvent = eg.updateMessageFlagsRemoveEvent;
348
-
349
- group ('add flag' , () {
350
- test ('not in list' , () async {
351
- await prepare ();
352
- final message = eg.streamMessage (flags: []);
353
- await prepareMessages (foundOldest: true , messages: [message]);
354
- await store.handleEvent (mkAddEvent (MessageFlag .read, [2 ]));
355
- checkNotNotified ();
356
- check (model).messages.single.flags.deepEquals ([]);
357
- });
358
-
359
- test ('affected message, unaffected message, absent message' , () async {
360
- await prepare ();
361
- final message1 = eg.streamMessage (flags: []);
362
- final message2 = eg.streamMessage (flags: []);
363
- await prepareMessages (foundOldest: true , messages: [message1, message2]);
364
- await store.handleEvent (mkAddEvent (MessageFlag .read, [message2.id, 3 ]));
365
- checkNotifiedOnce ();
366
- check (model).messages
367
- ..[0 ].flags.deepEquals ([])
368
- ..[1 ].flags.deepEquals ([MessageFlag .read]);
369
- });
370
-
371
- test ('all: true, list non-empty' , () async {
372
- await prepare ();
373
- final message1 = eg.streamMessage (flags: []);
374
- final message2 = eg.streamMessage (flags: []);
375
- await prepareMessages (foundOldest: true , messages: [message1, message2]);
376
- await store.handleEvent (mkAddEvent (MessageFlag .read, [], all: true ));
377
- checkNotifiedOnce ();
378
- check (model).messages
379
- ..[0 ].flags.deepEquals ([MessageFlag .read])
380
- ..[1 ].flags.deepEquals ([MessageFlag .read]);
381
- });
382
-
383
- test ('all: true, list empty' , () async {
384
- await prepare ();
385
- await prepareMessages (foundOldest: true , messages: []);
386
- await store.handleEvent (mkAddEvent (MessageFlag .read, [], all: true ));
387
- checkNotNotified ();
388
- });
389
-
390
- test ('other flags not clobbered' , () async {
391
- final message = eg.streamMessage (flags: [MessageFlag .starred]);
392
- await prepare ();
393
- await prepareMessages (foundOldest: true , messages: [message]);
394
- await store.handleEvent (mkAddEvent (MessageFlag .read, [message.id]));
395
- checkNotifiedOnce ();
396
- check (model).messages.single.flags.deepEquals ([MessageFlag .starred, MessageFlag .read]);
397
- });
398
- });
399
-
400
- group ('remove flag' , () {
401
- test ('not in list' , () async {
402
- await prepare ();
403
- final message = eg.streamMessage (flags: [MessageFlag .read]);
404
- await prepareMessages (foundOldest: true , messages: [message]);
405
- await store.handleEvent (mkAddEvent (MessageFlag .read, [2 ]));
406
- checkNotNotified ();
407
- check (model).messages.single.flags.deepEquals ([MessageFlag .read]);
408
- });
409
-
410
- test ('affected message, unaffected message, absent message' , () async {
411
- await prepare ();
412
- final message1 = eg.streamMessage (flags: [MessageFlag .read]);
413
- final message2 = eg.streamMessage (flags: [MessageFlag .read]);
414
- final message3 = eg.streamMessage (flags: [MessageFlag .read]);
415
- await prepareMessages (foundOldest: true , messages: [message1, message2]);
416
- await store.handleEvent (mkRemoveEvent (MessageFlag .read, [message2, message3]));
417
- checkNotifiedOnce ();
418
- check (model).messages
419
- ..[0 ].flags.deepEquals ([MessageFlag .read])
420
- ..[1 ].flags.deepEquals ([]);
421
- });
422
-
423
- test ('other flags not affected' , () async {
424
- final message = eg.streamMessage (flags: [MessageFlag .starred, MessageFlag .read]);
425
- await prepare ();
426
- await prepareMessages (foundOldest: true , messages: [message]);
427
- await store.handleEvent (mkRemoveEvent (MessageFlag .read, [message]));
428
- checkNotifiedOnce ();
429
- check (model).messages.single.flags.deepEquals ([MessageFlag .starred]);
430
- });
431
- });
432
- });
433
-
434
333
group ('regression tests for #455' , () {
435
334
test ('reaction events handled once, even when message is in two message lists' , () async {
436
335
final stream = eg.stream ();
0 commit comments