Skip to content

Commit b73962f

Browse files
chrisbobbegnprice
authored andcommitted
widget tests: Use whole [zulipThemeData] where [theme.extensions] is needed
This makes the tests more representative, and also more flexible when we want to change the [MaterialApp.theme] that our widgets want to consume.
1 parent cbeb74a commit b73962f

File tree

5 files changed

+19
-19
lines changed

5 files changed

+19
-19
lines changed

test/widgets/action_sheet_test.dart

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import 'package:zulip/widgets/icons.dart';
1818
import 'package:zulip/widgets/message_list.dart';
1919
import 'package:zulip/widgets/store.dart';
2020
import 'package:share_plus_platform_interface/method_channel/method_channel_share.dart';
21+
import 'package:zulip/widgets/theme.dart';
2122
import '../api/fake_api.dart';
2223

2324
import '../example_data.dart' as eg;
@@ -57,15 +58,15 @@ Future<void> setupToMessageActionSheet(WidgetTester tester, {
5758
messages: [message],
5859
).toJson());
5960

60-
await tester.pumpWidget(
61+
await tester.pumpWidget(Builder(builder: (context) =>
6162
MaterialApp(
62-
theme: ThemeData(extensions: [ContentTheme()]),
63+
theme: zulipThemeData(context),
6364
localizationsDelegates: ZulipLocalizations.localizationsDelegates,
6465
supportedLocales: ZulipLocalizations.supportedLocales,
6566
home: GlobalStoreWidget(
6667
child: PerAccountStoreWidget(
6768
accountId: eg.selfAccount.id,
68-
child: MessageListPage(narrow: narrow)))));
69+
child: MessageListPage(narrow: narrow))))));
6970

7071
// global store, per-account store, and message list get loaded
7172
await tester.pumpAndSettle();

test/widgets/autocomplete_test.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ import 'package:zulip/api/route/messages.dart';
77
import 'package:zulip/model/compose.dart';
88
import 'package:zulip/model/narrow.dart';
99
import 'package:zulip/model/store.dart';
10-
import 'package:zulip/widgets/content.dart';
1110
import 'package:zulip/widgets/message_list.dart';
1211
import 'package:zulip/widgets/store.dart';
12+
import 'package:zulip/widgets/theme.dart';
1313

1414
import '../api/fake_api.dart';
1515
import '../example_data.dart' as eg;
@@ -49,9 +49,9 @@ Future<Finder> setupToComposeInput(WidgetTester tester, {
4949

5050
prepareBoringImageHttpClient();
5151

52-
await tester.pumpWidget(
52+
await tester.pumpWidget(Builder(builder: (context) =>
5353
MaterialApp(
54-
theme: ThemeData(extensions: [ContentTheme()]),
54+
theme: zulipThemeData(context),
5555
localizationsDelegates: ZulipLocalizations.localizationsDelegates,
5656
supportedLocales: ZulipLocalizations.supportedLocales,
5757
home: GlobalStoreWidget(
@@ -61,7 +61,7 @@ Future<Finder> setupToComposeInput(WidgetTester tester, {
6161
narrow: DmNarrow(
6262
allRecipientIds: [eg.selfUser.userId, eg.otherUser.userId],
6363
selfUserId: eg.selfUser.userId,
64-
))))));
64+
)))))));
6565

6666
// global store, per-account store, and message list get loaded
6767
await tester.pumpAndSettle();

test/widgets/content_test.dart

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import 'package:zulip/widgets/icons.dart';
1414
import 'package:zulip/widgets/message_list.dart';
1515
import 'package:zulip/widgets/page.dart';
1616
import 'package:zulip/widgets/store.dart';
17-
import 'package:zulip/widgets/text.dart';
17+
import 'package:zulip/widgets/theme.dart';
1818

1919
import '../example_data.dart' as eg;
2020
import '../flutter_checks.dart';
@@ -126,10 +126,7 @@ void main() {
126126
await tester.pumpWidget(
127127
Builder(builder: (context) =>
128128
MaterialApp(
129-
theme: ThemeData(
130-
typography: zulipTypography(context),
131-
extensions: [ContentTheme()],
132-
),
129+
theme: zulipThemeData(context),
133130
localizationsDelegates: ZulipLocalizations.localizationsDelegates,
134131
supportedLocales: ZulipLocalizations.supportedLocales,
135132
navigatorObservers: navObservers,

test/widgets/message_list_test.dart

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import 'package:zulip/widgets/content.dart';
1919
import 'package:zulip/widgets/icons.dart';
2020
import 'package:zulip/widgets/message_list.dart';
2121
import 'package:zulip/widgets/store.dart';
22+
import 'package:zulip/widgets/theme.dart';
2223

2324
import '../api/fake_api.dart';
2425
import '../example_data.dart' as eg;
@@ -66,15 +67,15 @@ void main() {
6667
connection.prepare(json:
6768
newestResult(foundOldest: foundOldest, messages: messages).toJson());
6869

69-
await tester.pumpWidget(
70+
await tester.pumpWidget(Builder(builder: (context) =>
7071
MaterialApp(
71-
theme: ThemeData(extensions: [ContentTheme()]),
72+
theme: zulipThemeData(context),
7273
localizationsDelegates: ZulipLocalizations.localizationsDelegates,
7374
supportedLocales: ZulipLocalizations.supportedLocales,
7475
home: GlobalStoreWidget(
7576
child: PerAccountStoreWidget(
7677
accountId: eg.selfAccount.id,
77-
child: MessageListPage(narrow: narrow)))));
78+
child: MessageListPage(narrow: narrow))))));
7879

7980
// global store, per-account store, and message list get loaded
8081
await tester.pumpAndSettle();

test/widgets/profile_test.dart

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import 'package:zulip/widgets/message_list.dart';
1111
import 'package:zulip/widgets/page.dart';
1212
import 'package:zulip/widgets/profile.dart';
1313
import 'package:zulip/widgets/store.dart';
14+
import 'package:zulip/widgets/theme.dart';
1415

1516
import '../example_data.dart' as eg;
1617
import '../model/binding.dart';
@@ -41,15 +42,15 @@ Future<void> setupPage(WidgetTester tester, {
4142
}
4243

4344
await tester.pumpWidget(
44-
GlobalStoreWidget(
45-
child: MaterialApp(
46-
theme: ThemeData(extensions: [ContentTheme()]),
45+
GlobalStoreWidget(child: Builder(builder: (context) =>
46+
MaterialApp(
47+
theme: zulipThemeData(context),
4748
navigatorObservers: navigatorObserver != null ? [navigatorObserver] : [],
4849
localizationsDelegates: ZulipLocalizations.localizationsDelegates,
4950
supportedLocales: ZulipLocalizations.supportedLocales,
5051
home: PerAccountStoreWidget(
5152
accountId: eg.selfAccount.id,
52-
child: ProfilePage(userId: pageUserId)))));
53+
child: ProfilePage(userId: pageUserId))))));
5354

5455
// global store, per-account store, and page get loaded
5556
await tester.pumpAndSettle();

0 commit comments

Comments
 (0)