Skip to content

Commit 2f59c85

Browse files
chrisbobberishichirchi
authored andcommitted
compose_box test [nfc]: Make a enterContent helper
1 parent 4c91c98 commit 2f59c85

File tree

1 file changed

+15
-7
lines changed

1 file changed

+15
-7
lines changed

test/widgets/compose_box_test.dart

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,6 @@ void main() {
4141
late FakeApiConnection connection;
4242
late ComposeBoxController? controller;
4343

44-
final contentInputFinder = find.byWidgetPredicate(
45-
(widget) => widget is TextField && widget.controller is ComposeContentController);
46-
4744
Future<void> prepareComposeBox(WidgetTester tester, {
4845
required Narrow narrow,
4946
User? selfUser,
@@ -96,6 +93,17 @@ void main() {
9693
..url.path.equals('/api/v1/users/me/${narrow.streamId}/topics');
9794
}
9895

96+
/// A [Finder] for the content input.
97+
///
98+
/// To enter some text, use [enterContent].
99+
final contentInputFinder = find.byWidgetPredicate(
100+
(widget) => widget is TextField && widget.controller is ComposeContentController);
101+
102+
/// Set the content input's text to [content], using [WidgetTester.enterText].
103+
Future<void> enterContent(WidgetTester tester, String content) async {
104+
await tester.enterText(contentInputFinder, content);
105+
}
106+
99107
group('ComposeContentController', () {
100108
group('insertPadded', () {
101109
// Like `parseMarkedText` in test/model/autocomplete_test.dart,
@@ -245,7 +253,7 @@ void main() {
245253

246254
Future<void> checkStartTyping(WidgetTester tester, SendableNarrow narrow) async {
247255
connection.prepare(json: {});
248-
await tester.enterText(contentInputFinder, 'hello world');
256+
await enterContent(tester, 'hello world');
249257
checkTypingRequest(TypingOp.start, narrow);
250258
}
251259

@@ -290,7 +298,7 @@ void main() {
290298
await checkStartTyping(tester, narrow);
291299

292300
connection.prepare(json: {});
293-
await tester.enterText(contentInputFinder, '');
301+
await enterContent(tester, '');
294302
checkTypingRequest(TypingOp.stop, narrow);
295303
});
296304

@@ -406,7 +414,7 @@ void main() {
406414
await prepareComposeBox(tester, narrow: eg.topicNarrow(123, 'some topic'),
407415
streams: [eg.stream(streamId: 123)]);
408416

409-
await tester.enterText(contentInputFinder, 'hello world');
417+
await enterContent(tester, 'hello world');
410418

411419
prepareResponse(456);
412420
await tester.tap(find.byTooltip(zulipLocalizations.composeBoxSendTooltip));
@@ -817,7 +825,7 @@ void main() {
817825
double? height;
818826
for (numLines = 2; numLines <= 1000; numLines++) {
819827
final content = List.generate(numLines, (_) => 'foo').join('\n');
820-
await tester.enterText(contentInputFinder, content);
828+
await enterContent(tester, content);
821829
await tester.pump();
822830
final newHeight = tester.getRect(contentInputFinder).height;
823831
if (newHeight == height) {

0 commit comments

Comments
 (0)