Skip to content

Commit 86eecd3

Browse files
authored
Fix leaky tests. (#148434)
1 parent cc2bc89 commit 86eecd3

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

packages/flutter/test/widgets/system_context_menu_test.dart

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import 'package:flutter/foundation.dart';
66
import 'package:flutter/material.dart';
77
import 'package:flutter/services.dart';
88
import 'package:flutter_test/flutter_test.dart';
9+
import 'package:leak_tracker_flutter_testing/leak_tracker_flutter_testing.dart';
910

1011
void main() {
1112
final TestWidgetsFlutterBinding binding = TestWidgetsFlutterBinding.ensureInitialized();
@@ -14,6 +15,7 @@ void main() {
1415
final TextEditingController controller = TextEditingController(
1516
text: 'one two three',
1617
);
18+
addTearDown(controller.dispose);
1719
await tester.pumpWidget(
1820
// By default, MediaQueryData.supportsShowingSystemContextMenu is false.
1921
MaterialApp(
@@ -62,6 +64,7 @@ void main() {
6264
final TextEditingController controller = TextEditingController(
6365
text: 'one two three',
6466
);
67+
addTearDown(controller.dispose);
6568
await tester.pumpWidget(
6669
// By default, MediaQueryData.supportsShowingSystemContextMenu is false.
6770
MaterialApp(
@@ -95,6 +98,7 @@ void main() {
9598
final TextEditingController controller = TextEditingController(
9699
text: 'one two three',
97100
);
101+
addTearDown(controller.dispose);
98102
await tester.pumpWidget(
99103
Builder(
100104
builder: (BuildContext context) {
@@ -160,6 +164,7 @@ void main() {
160164
final TextEditingController controller = TextEditingController(
161165
text: 'one two three',
162166
);
167+
addTearDown(controller.dispose);
163168
await tester.pumpWidget(
164169
Builder(
165170
builder: (BuildContext context) {
@@ -214,6 +219,7 @@ void main() {
214219
final TextEditingController controller = TextEditingController(
215220
text: 'one two three',
216221
);
222+
addTearDown(controller.dispose);
217223
late StateSetter setState;
218224
await tester.pumpWidget(
219225
Builder(
@@ -265,9 +271,11 @@ void main() {
265271
final TextEditingController controller1 = TextEditingController(
266272
text: 'one two three',
267273
);
274+
addTearDown(controller1.dispose);
268275
final TextEditingController controller2 = TextEditingController(
269276
text: 'four five six',
270277
);
278+
addTearDown(controller2.dispose);
271279
final GlobalKey field1Key = GlobalKey();
272280
final GlobalKey field2Key = GlobalKey();
273281
final GlobalKey menu1Key = GlobalKey();
@@ -358,7 +366,9 @@ void main() {
358366
variant: TargetPlatformVariant.only(TargetPlatform.iOS),
359367
);
360368

361-
testWidgets('asserts when built with no text input connection', (WidgetTester tester) async {
369+
testWidgets('asserts when built with no text input connection',
370+
experimentalLeakTesting: LeakTesting.settings.withIgnoredAll(), // leaking by design because of exception
371+
(WidgetTester tester) async {
362372
SystemContextMenu? systemContextMenu;
363373
late StateSetter setState;
364374
await tester.pumpWidget(

0 commit comments

Comments
 (0)