From 06516f978f3122ad6490ec4a578eb340213ef468 Mon Sep 17 00:00:00 2001 From: alestiago Date: Tue, 8 Mar 2022 20:56:35 +0000 Subject: [PATCH] refactor: modified component tests --- test/game/pinball_game_test.dart | 36 ++++++++++++++------------------ 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/test/game/pinball_game_test.dart b/test/game/pinball_game_test.dart index 5490fad6..47b6e158 100644 --- a/test/game/pinball_game_test.dart +++ b/test/game/pinball_game_test.dart @@ -1,5 +1,6 @@ // ignore_for_file: cascade_invocations +import 'package:flame/components.dart'; import 'package:flame_test/flame_test.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:pinball/game/game.dart'; @@ -16,35 +17,30 @@ void main() { 'components', () { group('Flippers', () { + bool Function(Component) flipperSelector(BoardSide side) => + (component) => component is Flipper && component.side == side; + flameTester.test( 'has only one left flipper', (game) { - final flipper = game.children.firstWhere( - (e) => e is Flipper && e.side == BoardSide.left, - ) as Flipper; - - final anotherFlipper = game.children.lastWhere( - (e) => e is Flipper && e.side == BoardSide.left, - ) as Flipper; - - expect(flipper, equals(anotherFlipper)); - expect(flipper.side, equals(BoardSide.left)); + expect( + () => game.children.singleWhere( + flipperSelector(BoardSide.left), + ), + returnsNormally, + ); }, ); flameTester.test( 'has only one right flipper', (game) { - final flipper = game.children.firstWhere( - (e) => e is Flipper && e.side == BoardSide.right, - ) as Flipper; - - final anotherFlipper = game.children.lastWhere( - (e) => e is Flipper && e.side == BoardSide.right, - ) as Flipper; - - expect(flipper, equals(anotherFlipper)); - expect(flipper.side, equals(BoardSide.right)); + expect( + () => game.children.singleWhere( + flipperSelector(BoardSide.right), + ), + returnsNormally, + ); }, ); });