Skip to content

Commit 83e3acd

Browse files
committed
test [nfc]: Add streams and eg.selfUser to store in several tests
Adding of these is necessary in the next commit(s), otherwise these tests will fail.
1 parent e2ba2b2 commit 83e3acd

File tree

4 files changed

+25
-9
lines changed

4 files changed

+25
-9
lines changed

test/widgets/action_sheet_test.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ Future<void> setupToMessageActionSheet(WidgetTester tester, {
4343

4444
await testBinding.globalStore.add(eg.selfAccount, eg.initialSnapshot());
4545
final store = await testBinding.globalStore.perAccount(eg.selfAccount.id);
46-
await store.addUser(eg.user(userId: message.senderId));
46+
await store.addUsers([eg.selfUser, eg.user(userId: message.senderId)]);
4747
if (message is StreamMessage) {
4848
final stream = eg.stream(streamId: message.streamId);
4949
await store.addStream(stream);

test/widgets/autocomplete_test.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,10 +76,12 @@ Future<Finder> setupToTopicInput(WidgetTester tester, {
7676
addTearDown(testBinding.reset);
7777
await testBinding.globalStore.add(eg.selfAccount, eg.initialSnapshot());
7878
final store = await testBinding.globalStore.perAccount(eg.selfAccount.id);
79+
await store.addUser(eg.selfUser);
7980
final connection = store.connection as FakeApiConnection;
8081

8182
// prepare message list data
8283
final stream = eg.stream();
84+
await store.addStream(stream);
8385
final message = eg.streamMessage(stream: stream, sender: eg.selfUser);
8486
connection.prepare(json: GetMessagesResult(
8587
anchor: message.id,

test/widgets/compose_box_test.dart

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,11 @@ void main() {
3737
List<User> users = const [],
3838
List<ZulipStream> streams = const [],
3939
}) async {
40+
if (narrow is ChannelNarrow || narrow is TopicNarrow) {
41+
final channelId = narrow is ChannelNarrow ? narrow.streamId : (narrow as TopicNarrow).streamId;
42+
assert(streams.any((stream) => stream.streamId == channelId),
43+
'Add a channel with "streamId" the same as of $narrow.streamId to the store.');
44+
}
4045
addTearDown(testBinding.reset);
4146
final account = eg.account(user: selfUser ?? eg.selfUser);
4247
await testBinding.globalStore.add(account, eg.initialSnapshot(
@@ -188,15 +193,17 @@ void main() {
188193
}
189194

190195
testWidgets('_StreamComposeBox', (tester) async {
196+
final channel = eg.stream();
191197
final key = await prepareComposeBox(tester,
192-
narrow: ChannelNarrow(eg.stream().streamId));
198+
narrow: ChannelNarrow(channel.streamId), streams: [channel]);
193199
checkComposeBoxTextFields(tester, controllerKey: key,
194200
expectTopicTextField: true);
195201
});
196202

197203
testWidgets('_FixedDestinationComposeBox', (tester) async {
204+
final channel = eg.stream();
198205
final key = await prepareComposeBox(tester,
199-
narrow: TopicNarrow.ofMessage(eg.streamMessage()));
206+
narrow: TopicNarrow(channel.streamId, 'topic'), streams: [channel]);
200207
checkComposeBoxTextFields(tester, controllerKey: key,
201208
expectTopicTextField: false);
202209
});
@@ -207,7 +214,8 @@ void main() {
207214
required void Function(int messageId) prepareResponse,
208215
}) async {
209216
final zulipLocalizations = GlobalLocalizations.zulipLocalizations;
210-
await prepareComposeBox(tester, narrow: const TopicNarrow(123, 'some topic'));
217+
await prepareComposeBox(tester, narrow: const TopicNarrow(123, 'some topic'),
218+
streams: [eg.stream(streamId: 123)]);
211219

212220
final contentInputFinder = find.byWidgetPredicate(
213221
(widget) => widget is TextField && widget.controller is ComposeContentController);
@@ -271,7 +279,9 @@ void main() {
271279

272280
group('attach from media library', () {
273281
testWidgets('success', (tester) async {
274-
final controllerKey = await prepareComposeBox(tester, narrow: ChannelNarrow(eg.stream().streamId));
282+
final channel = eg.stream();
283+
final controllerKey = await prepareComposeBox(tester,
284+
narrow: ChannelNarrow(channel.streamId), streams: [channel]);
275285
final composeBoxController = controllerKey.currentState!;
276286

277287
// (When we check that the send button looks disabled, it should be because
@@ -326,8 +336,10 @@ void main() {
326336
});
327337

328338
group('attach from camera', () {
329-
testWidgets('success', (tester) async {
330-
final controllerKey = await prepareComposeBox(tester, narrow: ChannelNarrow(eg.stream().streamId));
339+
testWidgets('succMessageListPageState.narrowess', (tester) async {
340+
final channel = eg.stream();
341+
final controllerKey = await prepareComposeBox(tester,
342+
narrow: ChannelNarrow(channel.streamId), streams: [channel]);
331343
final composeBoxController = controllerKey.currentState!;
332344

333345
// (When we check that the send button looks disabled, it should be because

test/widgets/message_list_test.dart

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,15 +100,17 @@ void main() {
100100
testWidgets('MessageListPageState.narrow', (tester) async {
101101
final stream = eg.stream();
102102
await setupMessageListPage(tester, narrow: ChannelNarrow(stream.streamId),
103-
messages: [eg.streamMessage(stream: stream, content: "<p>a message</p>")]);
103+
messages: [eg.streamMessage(stream: stream, content: "<p>a message</p>")],
104+
streams: [stream]);
104105
final state = MessageListPage.ancestorOf(tester.element(find.text("a message")));
105106
check(state.narrow).equals(ChannelNarrow(stream.streamId));
106107
});
107108

108109
testWidgets('composeBoxController finds compose box', (tester) async {
109110
final stream = eg.stream();
110111
await setupMessageListPage(tester, narrow: ChannelNarrow(stream.streamId),
111-
messages: [eg.streamMessage(stream: stream, content: "<p>a message</p>")]);
112+
messages: [eg.streamMessage(stream: stream, content: "<p>a message</p>")],
113+
streams: [stream]);
112114
final state = MessageListPage.ancestorOf(tester.element(find.text("a message")));
113115
check(state.composeBoxController).isNotNull();
114116
});

0 commit comments

Comments
 (0)