@@ -275,42 +275,6 @@ void main() {
275
275
[...initialMessages, ...oldMessages]);
276
276
});
277
277
278
- test ('MessageEvent' , () async {
279
- final stream = eg.stream ();
280
- await prepare (narrow: ChannelNarrow (stream.streamId));
281
- await prepareMessages (foundOldest: true , messages:
282
- List .generate (30 , (i) => eg.streamMessage (stream: stream)));
283
-
284
- check (model).messages.length.equals (30 );
285
- await store.handleEvent (MessageEvent (id: 0 ,
286
- message: eg.streamMessage (stream: stream)));
287
- checkNotifiedOnce ();
288
- check (model).messages.length.equals (31 );
289
- });
290
-
291
- test ('MessageEvent, not in narrow' , () async {
292
- final stream = eg.stream ();
293
- await prepare (narrow: ChannelNarrow (stream.streamId));
294
- await prepareMessages (foundOldest: true , messages:
295
- List .generate (30 , (i) => eg.streamMessage (stream: stream)));
296
-
297
- check (model).messages.length.equals (30 );
298
- final otherStream = eg.stream ();
299
- await store.handleEvent (MessageEvent (id: 0 ,
300
- message: eg.streamMessage (stream: otherStream)));
301
- checkNotNotified ();
302
- check (model).messages.length.equals (30 );
303
- });
304
-
305
- test ('MessageEvent, before fetch' , () async {
306
- final stream = eg.stream ();
307
- await prepare (narrow: ChannelNarrow (stream.streamId));
308
- await store.handleEvent (MessageEvent (id: 0 ,
309
- message: eg.streamMessage (stream: stream)));
310
- checkNotNotified ();
311
- check (model).fetched.isFalse ();
312
- });
313
-
314
278
group ('UserTopicEvent' , () {
315
279
// The ChannelStore.willChangeIfTopicVisible/InStream methods have their own
316
280
// thorough unit tests. So these tests focus on the rest of the logic.
@@ -606,6 +570,44 @@ void main() {
606
570
});
607
571
});
608
572
573
+ group ('MessageEvent' , () {
574
+ test ('in narrow' , () async {
575
+ final stream = eg.stream ();
576
+ await prepare (narrow: ChannelNarrow (stream.streamId));
577
+ await prepareMessages (foundOldest: true , messages:
578
+ List .generate (30 , (i) => eg.streamMessage (stream: stream)));
579
+
580
+ check (model).messages.length.equals (30 );
581
+ await store.handleEvent (MessageEvent (id: 0 ,
582
+ message: eg.streamMessage (stream: stream)));
583
+ checkNotifiedOnce ();
584
+ check (model).messages.length.equals (31 );
585
+ });
586
+
587
+ test ('not in narrow' , () async {
588
+ final stream = eg.stream ();
589
+ await prepare (narrow: ChannelNarrow (stream.streamId));
590
+ await prepareMessages (foundOldest: true , messages:
591
+ List .generate (30 , (i) => eg.streamMessage (stream: stream)));
592
+
593
+ check (model).messages.length.equals (30 );
594
+ final otherStream = eg.stream ();
595
+ await store.handleEvent (MessageEvent (id: 0 ,
596
+ message: eg.streamMessage (stream: otherStream)));
597
+ checkNotNotified ();
598
+ check (model).messages.length.equals (30 );
599
+ });
600
+
601
+ test ('before fetch' , () async {
602
+ final stream = eg.stream ();
603
+ await prepare (narrow: ChannelNarrow (stream.streamId));
604
+ await store.handleEvent (MessageEvent (id: 0 ,
605
+ message: eg.streamMessage (stream: stream)));
606
+ checkNotNotified ();
607
+ check (model).fetched.isFalse ();
608
+ });
609
+ });
610
+
609
611
group ('messageContentChanged' , () {
610
612
test ('message present' , () async {
611
613
await prepare (narrow: const CombinedFeedNarrow ());
0 commit comments