From 160618b103740280d563057766c2bfc51cf67652 Mon Sep 17 00:00:00 2001 From: Taha Tesser Date: Wed, 17 May 2023 18:36:24 +0300 Subject: [PATCH] Add missing `Switch.onFocusChange` test (#126685) --- .../flutter/test/material/switch_test.dart | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/packages/flutter/test/material/switch_test.dart b/packages/flutter/test/material/switch_test.dart index 41f18bb980..dfeb57d20d 100644 --- a/packages/flutter/test/material/switch_test.dart +++ b/packages/flutter/test/material/switch_test.dart @@ -3370,6 +3370,35 @@ void main() { ..rrect(color: const Color(0xffffffff)), ); }); + + testWidgets('Switch.onFocusChange callback', (WidgetTester tester) async { + final FocusNode focusNode = FocusNode(debugLabel: 'Switch'); + bool focused = false; + await tester.pumpWidget(MaterialApp( + home: Material( + child: Center( + child: Switch( + value: true, + focusNode: focusNode, + onFocusChange: (bool value) { + focused = value; + }, + onChanged:(bool newValue) {}, + ), + ), + ), + )); + + focusNode.requestFocus(); + await tester.pump(); + expect(focused, isTrue); + expect(focusNode.hasFocus, isTrue); + + focusNode.unfocus(); + await tester.pump(); + expect(focused, isFalse); + expect(focusNode.hasFocus, isFalse); + }); } class DelayedImageProvider extends ImageProvider {