diff --git a/packages/flutter/test/rendering/rendering_tester.dart b/packages/flutter/test/rendering/rendering_tester.dart index 6ebfc38f4de..d3aafafca56 100644 --- a/packages/flutter/test/rendering/rendering_tester.dart +++ b/packages/flutter/test/rendering/rendering_tester.dart @@ -381,7 +381,11 @@ class FakeTicker implements Ticker { } class TestClipPaintingContext extends PaintingContext { - TestClipPaintingContext() : super(ContainerLayer(), Rect.zero); + TestClipPaintingContext() : this._(ContainerLayer()); + + TestClipPaintingContext._(this._containerLayer) : super(_containerLayer, Rect.zero); + + final ContainerLayer _containerLayer; @override ClipRectLayer? pushClipRect( @@ -397,6 +401,11 @@ class TestClipPaintingContext extends PaintingContext { } Clip clipBehavior = Clip.none; + + @mustCallSuper + void dispose() { + _containerLayer.dispose(); + } } class TestPushLayerPaintingContext extends PaintingContext { diff --git a/packages/flutter/test/widgets/grid_view_test.dart b/packages/flutter/test/widgets/grid_view_test.dart index 03014dbd298..b87a1444266 100644 --- a/packages/flutter/test/widgets/grid_view_test.dart +++ b/packages/flutter/test/widgets/grid_view_test.dart @@ -664,16 +664,8 @@ void main() { final TestClipPaintingContext context = TestClipPaintingContext(); renderObject.paint(context, Offset.zero); expect(context.clipBehavior, equals(Clip.none)); - }, - leakTrackingTestConfig: const LeakTrackingTestConfig( - // TODO(ksokolovskyi): remove after fixing - notDisposedAllowList: { - // https://github.com/flutter/flutter/issues/134575 - 'OffsetLayer': 1, - // https://github.com/flutter/flutter/issues/134572 - 'ContainerLayer': 1, - }, - )); + context.dispose(); + }); testWidgetsWithLeakTracking('GridView respects clipBehavior', (WidgetTester tester) async { await tester.pumpWidget( @@ -739,12 +731,8 @@ void main() { // 4th, check that a non-default clip behavior can be sent to the painting context. renderObject.paint(context, Offset.zero); expect(context.clipBehavior, equals(Clip.antiAlias)); - }, - leakTrackingTestConfig: const LeakTrackingTestConfig( - // TODO(ksokolovskyi): remove after fixing - // https://github.com/flutter/flutter/issues/134572 - notDisposedAllowList: {'ContainerLayer': 1}, - )); + context.dispose(); + }); testWidgetsWithLeakTracking('GridView.builder respects clipBehavior', (WidgetTester tester) async { await tester.pumpWidget( diff --git a/packages/flutter/test/widgets/list_view_test.dart b/packages/flutter/test/widgets/list_view_test.dart index a9ef0063f05..8a5ba4797e9 100644 --- a/packages/flutter/test/widgets/list_view_test.dart +++ b/packages/flutter/test/widgets/list_view_test.dart @@ -730,12 +730,8 @@ void main() { // 4th, check that a non-default clip behavior can be sent to the painting context. renderObject.paint(context, Offset.zero); expect(context.clipBehavior, equals(Clip.antiAlias)); - }, - leakTrackingTestConfig: const LeakTrackingTestConfig( - // TODO(ksokolovskyi): remove after fixing - // https://github.com/flutter/flutter/issues/134572 - notDisposedAllowList: {'ContainerLayer': 1}, - )); + context.dispose(); + }); testWidgetsWithLeakTracking('ListView.builder respects clipBehavior', (WidgetTester tester) async { await tester.pumpWidget(