@@ -256,12 +256,12 @@ void main() {
256
256
).toJson ());
257
257
final fetchFuture = model.fetchOlder ();
258
258
checkNotifiedOnce ();
259
- check (model).fetchingOlder .isTrue ();
259
+ check (model).busyFetchingMore .isTrue ();
260
260
261
261
await fetchFuture;
262
262
checkNotifiedOnce ();
263
263
check (model)
264
- ..fetchingOlder .isFalse ()
264
+ ..busyFetchingMore .isFalse ()
265
265
..messages.length.equals (200 );
266
266
checkLastRequest (
267
267
narrow: narrow.apiEncode (),
@@ -285,20 +285,20 @@ void main() {
285
285
).toJson ());
286
286
final fetchFuture = model.fetchOlder ();
287
287
checkNotifiedOnce ();
288
- check (model).fetchingOlder .isTrue ();
288
+ check (model).busyFetchingMore .isTrue ();
289
289
290
290
// Don't prepare another response.
291
291
final fetchFuture2 = model.fetchOlder ();
292
292
checkNotNotified ();
293
- check (model).fetchingOlder .isTrue ();
293
+ check (model).busyFetchingMore .isTrue ();
294
294
295
295
await fetchFuture;
296
296
await fetchFuture2;
297
297
// We must not have made another request, because we didn't
298
298
// prepare another response and didn't get an exception.
299
299
checkNotifiedOnce ();
300
300
check (model)
301
- ..fetchingOlder .isFalse ()
301
+ ..busyFetchingMore .isFalse ()
302
302
..messages.length.equals (200 );
303
303
});
304
304
@@ -330,18 +330,17 @@ void main() {
330
330
check (async .pendingTimers).isEmpty ();
331
331
await check (model.fetchOlder ()).throws <ZulipApiException >();
332
332
checkNotified (count: 2 );
333
- check (model).fetchOlderCoolingDown .isTrue ();
333
+ check (model).busyFetchingMore .isTrue ();
334
334
check (connection.takeRequests ()).single;
335
335
336
336
await model.fetchOlder ();
337
337
checkNotNotified ();
338
- check (model).fetchOlderCoolingDown.isTrue ();
339
- check (model).fetchingOlder.isFalse ();
338
+ check (model).busyFetchingMore.isTrue ();
340
339
check (connection.lastRequest).isNull ();
341
340
342
341
// Wait long enough that a first backoff is sure to finish.
343
342
async .elapse (const Duration (seconds: 1 ));
344
- check (model).fetchOlderCoolingDown .isFalse ();
343
+ check (model).busyFetchingMore .isFalse ();
345
344
checkNotifiedOnce ();
346
345
check (connection.lastRequest).isNull ();
347
346
@@ -366,7 +365,7 @@ void main() {
366
365
await model.fetchOlder ();
367
366
checkNotified (count: 2 );
368
367
check (model)
369
- ..fetchingOlder .isFalse ()
368
+ ..busyFetchingMore .isFalse ()
370
369
..messages.length.equals (200 );
371
370
});
372
371
@@ -1068,7 +1067,7 @@ void main() {
1068
1067
messages: olderMessages,
1069
1068
).toJson ());
1070
1069
final fetchFuture = model.fetchOlder ();
1071
- check (model).fetchingOlder .isTrue ();
1070
+ check (model).busyFetchingMore .isTrue ();
1072
1071
checkHasMessages (initialMessages);
1073
1072
checkNotifiedOnce ();
1074
1073
@@ -1081,7 +1080,7 @@ void main() {
1081
1080
origStreamId: otherStream.streamId,
1082
1081
newMessages: movedMessages,
1083
1082
));
1084
- check (model).fetchingOlder .isFalse ();
1083
+ check (model).busyFetchingMore .isFalse ();
1085
1084
checkHasMessages ([]);
1086
1085
checkNotifiedOnce ();
1087
1086
@@ -1104,7 +1103,7 @@ void main() {
1104
1103
).toJson ());
1105
1104
final fetchFuture = model.fetchOlder ();
1106
1105
checkHasMessages (initialMessages);
1107
- check (model).fetchingOlder .isTrue ();
1106
+ check (model).busyFetchingMore .isTrue ();
1108
1107
checkNotifiedOnce ();
1109
1108
1110
1109
connection.prepare (delay: const Duration (seconds: 1 ), json: newestResult (
@@ -1117,7 +1116,7 @@ void main() {
1117
1116
newMessages: movedMessages,
1118
1117
));
1119
1118
checkHasMessages ([]);
1120
- check (model).fetchingOlder .isFalse ();
1119
+ check (model).busyFetchingMore .isFalse ();
1121
1120
checkNotifiedOnce ();
1122
1121
1123
1122
async .elapse (const Duration (seconds: 1 ));
@@ -1138,7 +1137,7 @@ void main() {
1138
1137
BackoffMachine .debugDuration = const Duration (seconds: 1 );
1139
1138
await check (model.fetchOlder ()).throws <ZulipApiException >();
1140
1139
final backoffTimerA = async .pendingTimers.single;
1141
- check (model).fetchOlderCoolingDown .isTrue ();
1140
+ check (model).busyFetchingMore .isTrue ();
1142
1141
check (model).fetched.isTrue ();
1143
1142
checkHasMessages (initialMessages);
1144
1143
checkNotified (count: 2 );
@@ -1156,36 +1155,36 @@ void main() {
1156
1155
check (model).fetched.isFalse ();
1157
1156
checkHasMessages ([]);
1158
1157
checkNotifiedOnce ();
1159
- check (model).fetchOlderCoolingDown .isFalse ();
1158
+ check (model).busyFetchingMore .isFalse ();
1160
1159
check (backoffTimerA.isActive).isTrue ();
1161
1160
1162
1161
async .elapse (Duration .zero);
1163
1162
check (model).fetched.isTrue ();
1164
1163
checkHasMessages (initialMessages + movedMessages);
1165
1164
checkNotifiedOnce ();
1166
- check (model).fetchOlderCoolingDown .isFalse ();
1165
+ check (model).busyFetchingMore .isFalse ();
1167
1166
check (backoffTimerA.isActive).isTrue ();
1168
1167
1169
1168
connection.prepare (apiException: eg.apiBadRequest ());
1170
1169
BackoffMachine .debugDuration = const Duration (seconds: 2 );
1171
1170
await check (model.fetchOlder ()).throws <ZulipApiException >();
1172
1171
final backoffTimerB = async .pendingTimers.last;
1173
- check (model).fetchOlderCoolingDown .isTrue ();
1172
+ check (model).busyFetchingMore .isTrue ();
1174
1173
check (backoffTimerA.isActive).isTrue ();
1175
1174
check (backoffTimerB.isActive).isTrue ();
1176
1175
checkNotified (count: 2 );
1177
1176
1178
- // When `backoffTimerA` ends, `fetchOlderCoolingDown ` remains `true`
1177
+ // When `backoffTimerA` ends, `busyFetchingMore ` remains `true`
1179
1178
// because the backoff was from a previous generation.
1180
1179
async .elapse (const Duration (seconds: 1 ));
1181
- check (model).fetchOlderCoolingDown .isTrue ();
1180
+ check (model).busyFetchingMore .isTrue ();
1182
1181
check (backoffTimerA.isActive).isFalse ();
1183
1182
check (backoffTimerB.isActive).isTrue ();
1184
1183
checkNotNotified ();
1185
1184
1186
- // When `backoffTimerB` ends, `fetchOlderCoolingDown ` gets reset.
1185
+ // When `backoffTimerB` ends, `busyFetchingMore ` gets reset.
1187
1186
async .elapse (const Duration (seconds: 1 ));
1188
- check (model).fetchOlderCoolingDown .isFalse ();
1187
+ check (model).busyFetchingMore .isFalse ();
1189
1188
check (backoffTimerA.isActive).isFalse ();
1190
1189
check (backoffTimerB.isActive).isFalse ();
1191
1190
checkNotifiedOnce ();
@@ -1267,7 +1266,7 @@ void main() {
1267
1266
).toJson ());
1268
1267
final fetchFuture1 = model.fetchOlder ();
1269
1268
checkHasMessages (initialMessages);
1270
- check (model).fetchingOlder .isTrue ();
1269
+ check (model).busyFetchingMore .isTrue ();
1271
1270
checkNotifiedOnce ();
1272
1271
1273
1272
connection.prepare (delay: const Duration (seconds: 1 ), json: newestResult (
@@ -1280,7 +1279,7 @@ void main() {
1280
1279
newMessages: movedMessages,
1281
1280
));
1282
1281
checkHasMessages ([]);
1283
- check (model).fetchingOlder .isFalse ();
1282
+ check (model).busyFetchingMore .isFalse ();
1284
1283
checkNotifiedOnce ();
1285
1284
1286
1285
async .elapse (const Duration (seconds: 1 ));
@@ -1293,19 +1292,19 @@ void main() {
1293
1292
).toJson ());
1294
1293
final fetchFuture2 = model.fetchOlder ();
1295
1294
checkHasMessages (initialMessages + movedMessages);
1296
- check (model).fetchingOlder .isTrue ();
1295
+ check (model).busyFetchingMore .isTrue ();
1297
1296
checkNotifiedOnce ();
1298
1297
1299
1298
await fetchFuture1;
1300
1299
checkHasMessages (initialMessages + movedMessages);
1301
1300
// The older fetchOlder call should not override fetchingOlder set by
1302
1301
// the new fetchOlder call, nor should it notify the listeners.
1303
- check (model).fetchingOlder .isTrue ();
1302
+ check (model).busyFetchingMore .isTrue ();
1304
1303
checkNotNotified ();
1305
1304
1306
1305
await fetchFuture2;
1307
1306
checkHasMessages (olderMessages + initialMessages + movedMessages);
1308
- check (model).fetchingOlder .isFalse ();
1307
+ check (model).busyFetchingMore .isFalse ();
1309
1308
checkNotifiedOnce ();
1310
1309
}));
1311
1310
});
@@ -2140,15 +2139,10 @@ void checkInvariants(MessageListView model) {
2140
2139
check (model)
2141
2140
..messages.isEmpty ()
2142
2141
..haveOldest.isFalse ()
2143
- ..fetchingOlder.isFalse ()
2144
- ..fetchOlderCoolingDown.isFalse ();
2142
+ ..busyFetchingMore.isFalse ();
2145
2143
}
2146
2144
if (model.haveOldest) {
2147
- check (model).fetchingOlder.isFalse ();
2148
- check (model).fetchOlderCoolingDown.isFalse ();
2149
- }
2150
- if (model.fetchingOlder) {
2151
- check (model).fetchOlderCoolingDown.isFalse ();
2145
+ check (model).busyFetchingMore.isFalse ();
2152
2146
}
2153
2147
2154
2148
for (final message in model.messages) {
@@ -2281,6 +2275,5 @@ extension MessageListViewChecks on Subject<MessageListView> {
2281
2275
Subject <int > get middleItem => has ((x) => x.middleItem, 'middleItem' );
2282
2276
Subject <bool > get fetched => has ((x) => x.fetched, 'fetched' );
2283
2277
Subject <bool > get haveOldest => has ((x) => x.haveOldest, 'haveOldest' );
2284
- Subject <bool > get fetchingOlder => has ((x) => x.fetchingOlder, 'fetchingOlder' );
2285
- Subject <bool > get fetchOlderCoolingDown => has ((x) => x.fetchOlderCoolingDown, 'fetchOlderCoolingDown' );
2278
+ Subject <bool > get busyFetchingMore => has ((x) => x.busyFetchingMore, 'busyFetchingMore' );
2286
2279
}
0 commit comments