diff --git a/packages/pinball_components/test/src/components/backboard_test.dart b/packages/pinball_components/test/src/components/backboard_test.dart new file mode 100644 index 00000000..2d95cc47 --- /dev/null +++ b/packages/pinball_components/test/src/components/backboard_test.dart @@ -0,0 +1,53 @@ +// ignore_for_file: unawaited_futures + +import 'package:flame/components.dart'; +import 'package:flame_test/flame_test.dart'; +import 'package:flutter_test/flutter_test.dart'; +import 'package:pinball_components/pinball_components.dart'; + +import '../../helpers/helpers.dart'; + +void main() { + group('Backboard', () { + final tester = FlameTester(TestGame.new); + + group('on waitingMode', () { + tester.testGameWidget( + 'renders correctly', + setUp: (game, tester) async { + game.camera.zoom = 2; + game.camera.followVector2(Vector2.zero()); + await game.ensureAdd(Backboard(position: Vector2(0, 15))); + }, + verify: (game, tester) async { + await expectLater( + find.byGame(), + matchesGoldenFile('golden/backboard/waiting.png'), + ); + }, + ); + }); + + group('on gameOverMode', () { + tester.testGameWidget( + 'renders correctly', + setUp: (game, tester) async { + game.camera.zoom = 2; + game.camera.followVector2(Vector2.zero()); + final backboard = Backboard(position: Vector2(0, 15)); + await game.ensureAdd(backboard); + + await backboard.gameOverMode(); + await game.ready(); + await tester.pump(); + }, + verify: (game, tester) async { + await expectLater( + find.byGame(), + matchesGoldenFile('golden/backboard/game_over.png'), + ); + }, + ); + }); + }); +} diff --git a/packages/pinball_components/test/src/components/golden/backboard/game_over.png b/packages/pinball_components/test/src/components/golden/backboard/game_over.png new file mode 100644 index 00000000..1d12e7ce Binary files /dev/null and b/packages/pinball_components/test/src/components/golden/backboard/game_over.png differ diff --git a/packages/pinball_components/test/src/components/golden/backboard/waiting.png b/packages/pinball_components/test/src/components/golden/backboard/waiting.png new file mode 100644 index 00000000..2c58c750 Binary files /dev/null and b/packages/pinball_components/test/src/components/golden/backboard/waiting.png differ