55import 'package:flutter/material.dart' ;
66import 'package:flutter/rendering.dart' ;
77import 'package:flutter_test/flutter_test.dart' ;
8+ import 'package:leak_tracker_flutter_testing/leak_tracker_flutter_testing.dart' ;
89
910void main () {
1011
@@ -20,9 +21,11 @@ void main() {
2021 );
2122 }
2223
23- testWidgets ('updates its registrar and delegate based on the number of selectables' , (WidgetTester tester) async {
24+ testWidgetsWithLeakTracking ('updates its registrar and delegate based on the number of selectables' , (WidgetTester tester) async {
2425 final TestSelectionRegistrar registrar = TestSelectionRegistrar ();
2526 final TestContainerDelegate delegate = TestContainerDelegate ();
27+ addTearDown (delegate.dispose);
28+
2629 await pumpContainer (
2730 tester,
2831 SelectionContainer (
@@ -42,9 +45,11 @@ void main() {
4245 expect (delegate.selectables.length, 3 );
4346 });
4447
45- testWidgets ('disabled container' , (WidgetTester tester) async {
48+ testWidgetsWithLeakTracking ('disabled container' , (WidgetTester tester) async {
4649 final TestSelectionRegistrar registrar = TestSelectionRegistrar ();
4750 final TestContainerDelegate delegate = TestContainerDelegate ();
51+ addTearDown (delegate.dispose);
52+
4853 await pumpContainer (
4954 tester,
5055 SelectionContainer (
@@ -65,10 +70,13 @@ void main() {
6570 expect (delegate.selectables.length, 0 );
6671 });
6772
68- testWidgets ('Swapping out container delegate does not crash' , (WidgetTester tester) async {
73+ testWidgetsWithLeakTracking ('Swapping out container delegate does not crash' , (WidgetTester tester) async {
6974 final TestSelectionRegistrar registrar = TestSelectionRegistrar ();
7075 final TestContainerDelegate delegate = TestContainerDelegate ();
76+ addTearDown (delegate.dispose);
7177 final TestContainerDelegate childDelegate = TestContainerDelegate ();
78+ addTearDown (childDelegate.dispose);
79+
7280 await pumpContainer (
7381 tester,
7482 SelectionContainer (
@@ -90,6 +98,8 @@ void main() {
9098 expect (delegate.value.hasContent, isTrue);
9199
92100 final TestContainerDelegate newDelegate = TestContainerDelegate ();
101+ addTearDown (newDelegate.dispose);
102+
93103 await pumpContainer (
94104 tester,
95105 SelectionContainer (
@@ -112,10 +122,13 @@ void main() {
112122 expect (tester.takeException (), isNull);
113123 });
114124
115- testWidgets ('Can update within one frame' , (WidgetTester tester) async {
125+ testWidgetsWithLeakTracking ('Can update within one frame' , (WidgetTester tester) async {
116126 final TestSelectionRegistrar registrar = TestSelectionRegistrar ();
117127 final TestContainerDelegate delegate = TestContainerDelegate ();
128+ addTearDown (delegate.dispose);
118129 final TestContainerDelegate childDelegate = TestContainerDelegate ();
130+ addTearDown (childDelegate.dispose);
131+
119132 await pumpContainer (
120133 tester,
121134 SelectionContainer (
@@ -139,9 +152,11 @@ void main() {
139152 expect (delegate.value.hasContent, isTrue);
140153 });
141154
142- testWidgets ('selection container registers itself if there is a selectable child' , (WidgetTester tester) async {
155+ testWidgetsWithLeakTracking ('selection container registers itself if there is a selectable child' , (WidgetTester tester) async {
143156 final TestSelectionRegistrar registrar = TestSelectionRegistrar ();
144157 final TestContainerDelegate delegate = TestContainerDelegate ();
158+ addTearDown (delegate.dispose);
159+
145160 await pumpContainer (
146161 tester,
147162 SelectionContainer (
@@ -181,9 +196,10 @@ void main() {
181196 expect (registrar.selectables.length, 0 );
182197 });
183198
184- testWidgets ('selection container gets registrar from context if not provided' , (WidgetTester tester) async {
199+ testWidgetsWithLeakTracking ('selection container gets registrar from context if not provided' , (WidgetTester tester) async {
185200 final TestSelectionRegistrar registrar = TestSelectionRegistrar ();
186201 final TestContainerDelegate delegate = TestContainerDelegate ();
202+ addTearDown (delegate.dispose);
187203
188204 await pumpContainer (
189205 tester,
0 commit comments