diff --git a/packages/pinball_components/test/src/components/board_background_sprite_component_test.dart b/packages/pinball_components/test/src/components/board_background_sprite_component_test.dart new file mode 100644 index 00000000..df35594f --- /dev/null +++ b/packages/pinball_components/test/src/components/board_background_sprite_component_test.dart @@ -0,0 +1,48 @@ +// 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_components/pinball_components.dart'; + +import '../../helpers/helpers.dart'; + +void main() { + TestWidgetsFlutterBinding.ensureInitialized(); + final assets = [ + Assets.images.boardBackground.keyName, + ]; + final flameTester = FlameTester(() => TestGame(assets)); + + group('BoardBackgroundSpriteComponent', () { + flameTester.test( + 'loads correctly', + (game) async { + final boardBackground = BoardBackgroundSpriteComponent(); + await game.ensureAdd(boardBackground); + + expect(game.contains(boardBackground), isTrue); + }, + ); + + flameTester.testGameWidget( + 'renders correctly', + setUp: (game, tester) async { + await game.images.loadAll(assets); + final boardBackground = BoardBackgroundSpriteComponent(); + await game.ensureAdd(boardBackground); + await tester.pump(); + + game.camera + ..followVector2(Vector2.zero()) + ..zoom = 3.7; + }, + verify: (game, tester) async { + await expectLater( + find.byGame(), + matchesGoldenFile('golden/board-background.png'), + ); + }, + ); + }); +} diff --git a/packages/pinball_components/test/src/components/golden/board-background.png b/packages/pinball_components/test/src/components/golden/board-background.png new file mode 100644 index 00000000..789c5465 Binary files /dev/null and b/packages/pinball_components/test/src/components/golden/board-background.png differ diff --git a/test/game/pinball_game_test.dart b/test/game/pinball_game_test.dart index 3a531cac..b395020e 100644 --- a/test/game/pinball_game_test.dart +++ b/test/game/pinball_game_test.dart @@ -24,6 +24,7 @@ void main() { Assets.images.backboard.backboardScores.keyName, Assets.images.backboard.backboardGameOver.keyName, Assets.images.backboard.display.keyName, + Assets.images.boardBackground.keyName, Assets.images.ball.ball.keyName, Assets.images.ball.flameEffect.keyName, Assets.images.baseboard.left.keyName,