@@ -92,30 +92,45 @@ void main() {
92
92
}
93
93
94
94
group ('fetchInitial' , () {
95
- test ('smoke' , () async {
96
- const narrow = CombinedFeedNarrow ();
97
- await prepare (narrow: narrow);
98
- connection.prepare (json: newestResult (
99
- foundOldest: false ,
100
- messages: List .generate (kMessageListFetchBatchSize,
101
- (i) => eg.streamMessage ()),
102
- ).toJson ());
103
- final fetchFuture = model.fetchInitial ();
104
- check (model).fetched.isFalse ();
95
+ final someStream = eg.stream ();
96
+ const someTopic = 'some topic' ;
97
+
98
+ final smokeCases = [
99
+ (desc: 'CombinedFeedNarrow' , narrow: const CombinedFeedNarrow (),
100
+ generateMessages: (i) => eg.streamMessage ()),
101
+ (desc: 'TopicNarrow' ,
102
+ narrow: TopicNarrow (someStream.streamId, someTopic),
103
+ generateMessages: (i) => eg.streamMessage (
104
+ stream: someStream,
105
+ topic: someTopic)),
106
+ ];
107
+
108
+ for (final case_ in smokeCases) {
109
+ final (desc: desc, narrow: narrow, generateMessages: generateMessages) = case_;
110
+
111
+ test ('smoke: $desc ' , () async {
112
+ await prepare (narrow: narrow);
113
+ connection.prepare (json: newestResult (
114
+ foundOldest: false ,
115
+ messages: List .generate (kMessageListFetchBatchSize, generateMessages),
116
+ ).toJson ());
117
+ final fetchFuture = model.fetchInitial ();
118
+ check (model).fetched.isFalse ();
105
119
106
- checkNotNotified ();
107
- await fetchFuture;
108
- checkNotifiedOnce ();
109
- check (model)
110
- ..messages.length.equals (kMessageListFetchBatchSize)
111
- ..haveOldest.isFalse ();
112
- checkLastRequest (
113
- narrow: narrow.apiEncode (),
114
- anchor: 'newest' ,
115
- numBefore: kMessageListFetchBatchSize,
116
- numAfter: 0 ,
117
- );
118
- });
120
+ checkNotNotified ();
121
+ await fetchFuture;
122
+ checkNotifiedOnce ();
123
+ check (model)
124
+ ..messages.length.equals (kMessageListFetchBatchSize)
125
+ ..haveOldest.isFalse ();
126
+ checkLastRequest (
127
+ narrow: narrow.apiEncode (),
128
+ anchor: 'newest' ,
129
+ numBefore: kMessageListFetchBatchSize,
130
+ numAfter: 0 ,
131
+ );
132
+ });
133
+ }
119
134
120
135
test ('short history' , () async {
121
136
await prepare ();
0 commit comments