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