@@ -6,6 +6,7 @@ import 'package:http/http.dart' as http;
66import  'package:flutter/material.dart' ;
77import  'package:flutter_test/flutter_test.dart' ;
88import  'package:image_picker/image_picker.dart' ;
9+ import  'package:zulip/api/model/model.dart' ;
910import  'package:zulip/api/route/messages.dart' ;
1011import  'package:zulip/model/localizations.dart' ;
1112import  'package:zulip/model/narrow.dart' ;
@@ -16,6 +17,7 @@ import '../api/fake_api.dart';
1617import  '../example_data.dart'  as  eg;
1718import  '../flutter_checks.dart' ;
1819import  '../model/binding.dart' ;
20+ import  '../model/test_store.dart' ;
1921import  '../stdlib_checks.dart' ;
2022import  'dialog_checks.dart' ;
2123import  'test_app.dart' ;
@@ -26,11 +28,14 @@ void main() {
2628  late  PerAccountStore  store;
2729  late  FakeApiConnection  connection;
2830
29-   Future <GlobalKey <ComposeBoxController >> prepareComposeBox (WidgetTester  tester, Narrow  narrow) async  {
31+   Future <GlobalKey <ComposeBoxController >> prepareComposeBox (WidgetTester  tester,
32+       {required  Narrow  narrow, List <User > users =  const  []}) async  {
3033    addTearDown (testBinding.reset);
3134    await  testBinding.globalStore.add (eg.selfAccount, eg.initialSnapshot ());
3235
3336    store =  await  testBinding.globalStore.perAccount (eg.selfAccount.id);
37+ 
38+     await  store.addUsers ([eg.selfUser, ...users]);
3439    connection =  store.connection as  FakeApiConnection ;
3540
3641    final  controllerKey =  GlobalKey <ComposeBoxController >();
@@ -169,14 +174,14 @@ void main() {
169174
170175    testWidgets ('_StreamComposeBox' , (tester) async  {
171176      final  key =  await  prepareComposeBox (tester,
172-         ChannelNarrow (eg.stream ().streamId));
177+         narrow :   ChannelNarrow (eg.stream ().streamId));
173178      checkComposeBoxTextFields (tester, controllerKey:  key,
174179        expectTopicTextField:  true );
175180    });
176181
177182    testWidgets ('_FixedDestinationComposeBox' , (tester) async  {
178183      final  key =  await  prepareComposeBox (tester,
179-         TopicNarrow .ofMessage (eg.streamMessage ()));
184+         narrow :   TopicNarrow .ofMessage (eg.streamMessage ()));
180185      checkComposeBoxTextFields (tester, controllerKey:  key,
181186        expectTopicTextField:  false );
182187    });
@@ -187,7 +192,7 @@ void main() {
187192      required  void  Function (int  messageId) prepareResponse,
188193    }) async  {
189194      final  zulipLocalizations =  GlobalLocalizations .zulipLocalizations;
190-       await  prepareComposeBox (tester, const  TopicNarrow (123 , 'some topic' ));
195+       await  prepareComposeBox (tester, narrow :   const  TopicNarrow (123 , 'some topic' ));
191196
192197      final  contentInputFinder =  find.byWidgetPredicate (
193198        (widget) =>  widget is  TextField  &&  widget.controller is  ComposeContentController );
@@ -251,7 +256,7 @@ void main() {
251256
252257    group ('attach from media library' , () {
253258      testWidgets ('success' , (tester) async  {
254-         final  controllerKey =  await  prepareComposeBox (tester, ChannelNarrow (eg.stream ().streamId));
259+         final  controllerKey =  await  prepareComposeBox (tester, narrow :   ChannelNarrow (eg.stream ().streamId));
255260        final  composeBoxController =  controllerKey.currentState! ;
256261
257262        // (When we check that the send button looks disabled, it should be because 
@@ -307,7 +312,7 @@ void main() {
307312
308313    group ('attach from camera' , () {
309314      testWidgets ('success' , (tester) async  {
310-         final  controllerKey =  await  prepareComposeBox (tester, ChannelNarrow (eg.stream ().streamId));
315+         final  controllerKey =  await  prepareComposeBox (tester, narrow :   ChannelNarrow (eg.stream ().streamId));
311316        final  composeBoxController =  controllerKey.currentState! ;
312317
313318        // (When we check that the send button looks disabled, it should be because 
0 commit comments