Skip to content

Commit 638f8c0

Browse files
committed
msglist test: Also smoke test fetchInitial in a topic narrow
1 parent 1ffa4e7 commit 638f8c0

File tree

1 file changed

+38
-23
lines changed

1 file changed

+38
-23
lines changed

test/model/message_list_test.dart

Lines changed: 38 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -92,30 +92,45 @@ void main() {
9292
}
9393

9494
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();
105119

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+
}
119134

120135
test('short history', () async {
121136
await prepare();

0 commit comments

Comments
 (0)