From 52085fdfd36d5d3e93fd479b78ba803f742305a9 Mon Sep 17 00:00:00 2001 From: Erick Date: Sat, 7 May 2022 18:15:36 -0300 Subject: [PATCH] refactor: renaming to `PinballPlayer` to `PinballAudioPlayer` (#396) * refactor: renaming to * fix merge * lint * suggestions * suggestions * suggestions --- lib/app/view/app.dart | 8 +-- .../cubit/assets_manager_cubit.dart | 6 +- lib/game/behaviors/bonus_noise_behavior.dart | 2 +- lib/game/behaviors/bumper_noise_behavior.dart | 2 +- lib/game/components/controlled_plunger.dart | 2 +- .../components/game_bloc_status_listener.dart | 4 +- lib/game/pinball_game.dart | 12 ++-- lib/game/view/pinball_game_page.dart | 9 +-- .../widgets/how_to_play_dialog.dart | 4 +- lib/main_development.dart | 4 +- lib/main_production.dart | 4 +- lib/main_staging.dart | 4 +- .../pinball_audio/lib/src/pinball_audio.dart | 8 +-- .../test/src/pinball_audio_test.dart | 69 ++++++++++--------- test/app/view/app_test.dart | 10 +-- .../behaviors/bonus_noise_behavior_test.dart | 34 ++++----- .../behaviors/bumper_noise_behavior_test.dart | 19 ++--- .../components/controlled_plunger_test.dart | 16 ++--- .../flutter_forest/flutter_forest_test.dart | 4 +- .../game_bloc_status_listener_test.dart | 31 ++++++--- .../google_word_bonus_behavior_test.dart | 6 +- test/game/pinball_game_test.dart | 6 +- test/game/view/pinball_game_page_test.dart | 4 +- test/helpers/pump_app.dart | 14 ++-- .../widgets/start_game_listener_test.dart | 10 +-- 25 files changed, 156 insertions(+), 136 deletions(-) diff --git a/lib/app/view/app.dart b/lib/app/view/app.dart index eccff7a6..89f03dfa 100644 --- a/lib/app/view/app.dart +++ b/lib/app/view/app.dart @@ -15,15 +15,15 @@ class App extends StatelessWidget { Key? key, required AuthenticationRepository authenticationRepository, required LeaderboardRepository leaderboardRepository, - required PinballPlayer pinballPlayer, + required PinballAudioPlayer pinballAudioPlayer, }) : _authenticationRepository = authenticationRepository, _leaderboardRepository = leaderboardRepository, - _pinballPlayer = pinballPlayer, + _pinballAudioPlayer = pinballAudioPlayer, super(key: key); final AuthenticationRepository _authenticationRepository; final LeaderboardRepository _leaderboardRepository; - final PinballPlayer _pinballPlayer; + final PinballAudioPlayer _pinballAudioPlayer; @override Widget build(BuildContext context) { @@ -31,7 +31,7 @@ class App extends StatelessWidget { providers: [ RepositoryProvider.value(value: _authenticationRepository), RepositoryProvider.value(value: _leaderboardRepository), - RepositoryProvider.value(value: _pinballPlayer), + RepositoryProvider.value(value: _pinballAudioPlayer), ], child: MultiBlocProvider( providers: [ diff --git a/lib/assets_manager/cubit/assets_manager_cubit.dart b/lib/assets_manager/cubit/assets_manager_cubit.dart index 5d3dd7c9..65b780c2 100644 --- a/lib/assets_manager/cubit/assets_manager_cubit.dart +++ b/lib/assets_manager/cubit/assets_manager_cubit.dart @@ -7,11 +7,11 @@ import 'package:pinball_audio/pinball_audio.dart'; part 'assets_manager_state.dart'; class AssetsManagerCubit extends Cubit { - AssetsManagerCubit(this._game, this._player) + AssetsManagerCubit(this._game, this._audioPlayer) : super(const AssetsManagerState.initial()); final PinballGame _game; - final PinballPlayer _player; + final PinballAudioPlayer _audioPlayer; Future load() async { /// Assigning loadables is a very expensive operation. With this purposeful @@ -24,7 +24,7 @@ class AssetsManagerCubit extends Cubit { loadables: [ _game.preFetchLeaderboard(), ..._game.preLoadAssets(), - ..._player.load(), + ..._audioPlayer.load(), ...BonusAnimation.loadAssets(), ...SelectedCharacter.loadAssets(), ], diff --git a/lib/game/behaviors/bonus_noise_behavior.dart b/lib/game/behaviors/bonus_noise_behavior.dart index c071f064..b330dc9f 100644 --- a/lib/game/behaviors/bonus_noise_behavior.dart +++ b/lib/game/behaviors/bonus_noise_behavior.dart @@ -15,7 +15,7 @@ class BonusNoiseBehavior extends Component { }, onNewState: (state) { final bonus = state.bonusHistory.last; - final audioPlayer = readProvider(); + final audioPlayer = readProvider(); switch (bonus) { case GameBonus.googleWord: diff --git a/lib/game/behaviors/bumper_noise_behavior.dart b/lib/game/behaviors/bumper_noise_behavior.dart index 926fff96..4144241a 100644 --- a/lib/game/behaviors/bumper_noise_behavior.dart +++ b/lib/game/behaviors/bumper_noise_behavior.dart @@ -6,6 +6,6 @@ class BumperNoiseBehavior extends ContactBehavior { @override void beginContact(Object other, Contact contact) { super.beginContact(other, contact); - readProvider().play(PinballAudio.bumper); + readProvider().play(PinballAudio.bumper); } } diff --git a/lib/game/components/controlled_plunger.dart b/lib/game/components/controlled_plunger.dart index c8cb90fb..f709de66 100644 --- a/lib/game/components/controlled_plunger.dart +++ b/lib/game/components/controlled_plunger.dart @@ -30,7 +30,7 @@ class PlungerNoiseBehavior extends Component { @override Future onLoad() async { await super.onLoad(); - readProvider().play(PinballAudio.launcher); + readProvider().play(PinballAudio.launcher); } @override diff --git a/lib/game/components/game_bloc_status_listener.dart b/lib/game/components/game_bloc_status_listener.dart index cf2f75b3..1a5a06df 100644 --- a/lib/game/components/game_bloc_status_listener.dart +++ b/lib/game/components/game_bloc_status_listener.dart @@ -20,7 +20,7 @@ class GameBlocStatusListener extends Component case GameStatus.waiting: break; case GameStatus.playing: - readProvider().play(PinballAudio.backgroundMusic); + readProvider().play(PinballAudio.backgroundMusic); gameRef .descendants() .whereType() @@ -29,7 +29,7 @@ class GameBlocStatusListener extends Component gameRef.overlays.remove(PinballGame.playButtonOverlay); break; case GameStatus.gameOver: - readProvider().play(PinballAudio.gameOverVoiceOver); + readProvider().play(PinballAudio.gameOverVoiceOver); gameRef.descendants().whereType().first.requestInitials( score: state.displayScore, character: readBloc() diff --git a/lib/game/pinball_game.dart b/lib/game/pinball_game.dart index 5e89b0cb..026471c7 100644 --- a/lib/game/pinball_game.dart +++ b/lib/game/pinball_game.dart @@ -22,10 +22,10 @@ class PinballGame extends PinballForge2DGame required this.leaderboardRepository, required GameBloc gameBloc, required AppLocalizations l10n, - required PinballPlayer player, + required PinballAudioPlayer audioPlayer, }) : focusNode = FocusNode(), _gameBloc = gameBloc, - _player = player, + _audioPlayer = audioPlayer, _characterThemeBloc = characterThemeBloc, _l10n = l10n, super( @@ -47,7 +47,7 @@ class PinballGame extends PinballForge2DGame final CharacterThemeCubit _characterThemeBloc; - final PinballPlayer _player; + final PinballAudioPlayer _audioPlayer; final LeaderboardRepository leaderboardRepository; @@ -82,7 +82,7 @@ class PinballGame extends PinballForge2DGame children: [ MultiFlameProvider( providers: [ - FlameProvider.value(_player), + FlameProvider.value(_audioPlayer), FlameProvider.value(leaderboardRepository), FlameProvider.value(_l10n), ], @@ -188,11 +188,11 @@ class DebugPinballGame extends PinballGame with FPSCounter, PanDetector { required CharacterThemeCubit characterThemeBloc, required LeaderboardRepository leaderboardRepository, required AppLocalizations l10n, - required PinballPlayer player, + required PinballAudioPlayer audioPlayer, required GameBloc gameBloc, }) : super( characterThemeBloc: characterThemeBloc, - player: player, + audioPlayer: audioPlayer, leaderboardRepository: leaderboardRepository, l10n: l10n, gameBloc: gameBloc, diff --git a/lib/game/view/pinball_game_page.dart b/lib/game/view/pinball_game_page.dart index dc36c74c..5c21f257 100644 --- a/lib/game/view/pinball_game_page.dart +++ b/lib/game/view/pinball_game_page.dart @@ -24,30 +24,31 @@ class PinballGamePage extends StatelessWidget { @override Widget build(BuildContext context) { final characterThemeBloc = context.read(); - final player = context.read(); + final audioPlayer = context.read(); final leaderboardRepository = context.read(); final gameBloc = context.read(); final game = isDebugMode ? DebugPinballGame( characterThemeBloc: characterThemeBloc, - player: player, + audioPlayer: audioPlayer, leaderboardRepository: leaderboardRepository, l10n: context.l10n, gameBloc: gameBloc, ) : PinballGame( characterThemeBloc: characterThemeBloc, - player: player, + audioPlayer: audioPlayer, leaderboardRepository: leaderboardRepository, l10n: context.l10n, gameBloc: gameBloc, ); + return Container( decoration: const CrtBackground(), child: Scaffold( backgroundColor: PinballColors.transparent, body: BlocProvider( - create: (_) => AssetsManagerCubit(game, player)..load(), + create: (_) => AssetsManagerCubit(game, audioPlayer)..load(), child: PinballGameView(game), ), ), diff --git a/lib/how_to_play/widgets/how_to_play_dialog.dart b/lib/how_to_play/widgets/how_to_play_dialog.dart index 55aff1db..8a709605 100644 --- a/lib/how_to_play/widgets/how_to_play_dialog.dart +++ b/lib/how_to_play/widgets/how_to_play_dialog.dart @@ -91,7 +91,9 @@ class _HowToPlayDialogState extends State { return WillPopScope( onWillPop: () { widget.onDismissCallback.call(); - context.read().play(PinballAudio.ioPinballVoiceOver); + context + .read() + .play(PinballAudio.ioPinballVoiceOver); return Future.value(true); }, child: PinballDialog( diff --git a/lib/main_development.dart b/lib/main_development.dart index 67d83b81..158966c8 100644 --- a/lib/main_development.dart +++ b/lib/main_development.dart @@ -11,7 +11,7 @@ void main() { bootstrap((firestore, firebaseAuth) async { final leaderboardRepository = LeaderboardRepository(firestore); final authenticationRepository = AuthenticationRepository(firebaseAuth); - final pinballPlayer = PinballPlayer(); + final pinballAudioPlayer = PinballAudioPlayer(); unawaited( Firebase.initializeApp().then( (_) => authenticationRepository.authenticateAnonymously(), @@ -20,7 +20,7 @@ void main() { return App( authenticationRepository: authenticationRepository, leaderboardRepository: leaderboardRepository, - pinballPlayer: pinballPlayer, + pinballAudioPlayer: pinballAudioPlayer, ); }); } diff --git a/lib/main_production.dart b/lib/main_production.dart index 67d83b81..158966c8 100644 --- a/lib/main_production.dart +++ b/lib/main_production.dart @@ -11,7 +11,7 @@ void main() { bootstrap((firestore, firebaseAuth) async { final leaderboardRepository = LeaderboardRepository(firestore); final authenticationRepository = AuthenticationRepository(firebaseAuth); - final pinballPlayer = PinballPlayer(); + final pinballAudioPlayer = PinballAudioPlayer(); unawaited( Firebase.initializeApp().then( (_) => authenticationRepository.authenticateAnonymously(), @@ -20,7 +20,7 @@ void main() { return App( authenticationRepository: authenticationRepository, leaderboardRepository: leaderboardRepository, - pinballPlayer: pinballPlayer, + pinballAudioPlayer: pinballAudioPlayer, ); }); } diff --git a/lib/main_staging.dart b/lib/main_staging.dart index 67d83b81..158966c8 100644 --- a/lib/main_staging.dart +++ b/lib/main_staging.dart @@ -11,7 +11,7 @@ void main() { bootstrap((firestore, firebaseAuth) async { final leaderboardRepository = LeaderboardRepository(firestore); final authenticationRepository = AuthenticationRepository(firebaseAuth); - final pinballPlayer = PinballPlayer(); + final pinballAudioPlayer = PinballAudioPlayer(); unawaited( Firebase.initializeApp().then( (_) => authenticationRepository.authenticateAnonymously(), @@ -20,7 +20,7 @@ void main() { return App( authenticationRepository: authenticationRepository, leaderboardRepository: leaderboardRepository, - pinballPlayer: pinballPlayer, + pinballAudioPlayer: pinballAudioPlayer, ); }); } diff --git a/packages/pinball_audio/lib/src/pinball_audio.dart b/packages/pinball_audio/lib/src/pinball_audio.dart index 767fc3a6..0364c923 100644 --- a/packages/pinball_audio/lib/src/pinball_audio.dart +++ b/packages/pinball_audio/lib/src/pinball_audio.dart @@ -145,12 +145,12 @@ class _BumperAudio extends _Audio { } } -/// {@template pinball_player} +/// {@template pinball_audio_player} /// Sound manager for the pinball game /// {@endtemplate} -class PinballPlayer { - /// {@macro pinball_player} - PinballPlayer({ +class PinballAudioPlayer { + /// {@macro pinball_audio_player} + PinballAudioPlayer({ CreateAudioPool? createAudioPool, PlaySingleAudio? playSingleAudio, LoopSingleAudio? loopSingleAudio, diff --git a/packages/pinball_audio/test/src/pinball_audio_test.dart b/packages/pinball_audio/test/src/pinball_audio_test.dart index e95eb8f7..8374e820 100644 --- a/packages/pinball_audio/test/src/pinball_audio_test.dart +++ b/packages/pinball_audio/test/src/pinball_audio_test.dart @@ -51,7 +51,7 @@ void main() { late _MockLoopSingleAudio loopSingleAudio; late _PreCacheSingleAudio preCacheSingleAudio; late Random seed; - late PinballPlayer player; + late PinballAudioPlayer audioPlayer; setUpAll(() { registerFallbackValue(_MockAudioCache()); @@ -81,7 +81,7 @@ void main() { seed = _MockRandom(); - player = PinballPlayer( + audioPlayer = PinballAudioPlayer( configureAudioCache: configureAudioCache.onCall, createAudioPool: createAudioPool.onCall, playSingleAudio: playSingleAudio.onCall, @@ -92,12 +92,12 @@ void main() { }); test('can be instantiated', () { - expect(PinballPlayer(), isNotNull); + expect(PinballAudioPlayer(), isNotNull); }); group('load', () { test('creates the bumpers pools', () async { - await Future.wait(player.load()); + await Future.wait(audioPlayer.load()); verify( () => createAudioPool.onCall( @@ -117,25 +117,25 @@ void main() { }); test('configures the audio cache instance', () async { - await Future.wait(player.load()); + await Future.wait(audioPlayer.load()); verify(() => configureAudioCache.onCall(FlameAudio.audioCache)) .called(1); }); test('sets the correct prefix', () async { - player = PinballPlayer( + audioPlayer = PinballAudioPlayer( createAudioPool: createAudioPool.onCall, playSingleAudio: playSingleAudio.onCall, preCacheSingleAudio: preCacheSingleAudio.onCall, ); - await Future.wait(player.load()); + await Future.wait(audioPlayer.load()); expect(FlameAudio.audioCache.prefix, equals('')); }); test('pre cache the assets', () async { - await Future.wait(player.load()); + await Future.wait(audioPlayer.load()); verify( () => preCacheSingleAudio @@ -209,8 +209,8 @@ void main() { group('when seed is true', () { test('plays the bumper A sound pool', () async { when(seed.nextBool).thenReturn(true); - await Future.wait(player.load()); - player.play(PinballAudio.bumper); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.bumper); verify(() => bumperAPool.start(volume: 0.6)).called(1); }); @@ -219,8 +219,8 @@ void main() { group('when seed is false', () { test('plays the bumper B sound pool', () async { when(seed.nextBool).thenReturn(false); - await Future.wait(player.load()); - player.play(PinballAudio.bumper); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.bumper); verify(() => bumperBPool.start(volume: 0.6)).called(1); }); @@ -229,8 +229,8 @@ void main() { group('google', () { test('plays the correct file', () async { - await Future.wait(player.load()); - player.play(PinballAudio.google); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.google); verify( () => playSingleAudio @@ -241,8 +241,8 @@ void main() { group('sparky', () { test('plays the correct file', () async { - await Future.wait(player.load()); - player.play(PinballAudio.sparky); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.sparky); verify( () => playSingleAudio @@ -253,8 +253,8 @@ void main() { group('dino', () { test('plays the correct file', () async { - await Future.wait(player.load()); - player.play(PinballAudio.dino); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.dino); verify( () => playSingleAudio @@ -265,8 +265,8 @@ void main() { group('android', () { test('plays the correct file', () async { - await Future.wait(player.load()); - player.play(PinballAudio.android); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.android); verify( () => playSingleAudio @@ -277,8 +277,8 @@ void main() { group('dash', () { test('plays the correct file', () async { - await Future.wait(player.load()); - player.play(PinballAudio.dash); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.dash); verify( () => playSingleAudio @@ -289,8 +289,8 @@ void main() { group('launcher', () { test('plays the correct file', () async { - await Future.wait(player.load()); - player.play(PinballAudio.launcher); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.launcher); verify( () => playSingleAudio @@ -301,8 +301,8 @@ void main() { group('ioPinballVoiceOver', () { test('plays the correct file', () async { - await Future.wait(player.load()); - player.play(PinballAudio.ioPinballVoiceOver); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.ioPinballVoiceOver); verify( () => playSingleAudio.onCall( @@ -314,8 +314,8 @@ void main() { group('gameOverVoiceOver', () { test('plays the correct file', () async { - await Future.wait(player.load()); - player.play(PinballAudio.gameOverVoiceOver); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.gameOverVoiceOver); verify( () => playSingleAudio.onCall( @@ -327,8 +327,8 @@ void main() { group('backgroundMusic', () { test('plays the correct file', () async { - await Future.wait(player.load()); - player.play(PinballAudio.backgroundMusic); + await Future.wait(audioPlayer.load()); + audioPlayer.play(PinballAudio.backgroundMusic); verify( () => loopSingleAudio @@ -340,10 +340,13 @@ void main() { test( 'throws assertions error when playing an unregistered audio', () async { - player.audios.remove(PinballAudio.google); - await Future.wait(player.load()); + audioPlayer.audios.remove(PinballAudio.google); + await Future.wait(audioPlayer.load()); - expect(() => player.play(PinballAudio.google), throwsAssertionError); + expect( + () => audioPlayer.play(PinballAudio.google), + throwsAssertionError, + ); }, ); }); diff --git a/test/app/view/app_test.dart b/test/app/view/app_test.dart index 0f34b66e..4612641d 100644 --- a/test/app/view/app_test.dart +++ b/test/app/view/app_test.dart @@ -9,7 +9,7 @@ import 'package:pinball_audio/pinball_audio.dart'; class _MockAuthenticationRepository extends Mock implements AuthenticationRepository {} -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} class _MockLeaderboardRepository extends Mock implements LeaderboardRepository { } @@ -18,13 +18,13 @@ void main() { group('App', () { late AuthenticationRepository authenticationRepository; late LeaderboardRepository leaderboardRepository; - late PinballPlayer pinballPlayer; + late PinballAudioPlayer pinballAudioPlayer; setUp(() { authenticationRepository = _MockAuthenticationRepository(); leaderboardRepository = _MockLeaderboardRepository(); - pinballPlayer = _MockPinballPlayer(); - when(pinballPlayer.load).thenAnswer((_) => [Future.value()]); + pinballAudioPlayer = _MockPinballAudioPlayer(); + when(pinballAudioPlayer.load).thenAnswer((_) => [Future.value()]); }); testWidgets('renders PinballGamePage', (tester) async { @@ -32,7 +32,7 @@ void main() { App( authenticationRepository: authenticationRepository, leaderboardRepository: leaderboardRepository, - pinballPlayer: pinballPlayer, + pinballAudioPlayer: pinballAudioPlayer, ), ); await tester.pump(const Duration(milliseconds: 400)); diff --git a/test/game/behaviors/bonus_noise_behavior_test.dart b/test/game/behaviors/bonus_noise_behavior_test.dart index fada7d1e..b67659c0 100644 --- a/test/game/behaviors/bonus_noise_behavior_test.dart +++ b/test/game/behaviors/bonus_noise_behavior_test.dart @@ -14,15 +14,15 @@ import 'package:pinball_flame/pinball_flame.dart'; class _TestGame extends Forge2DGame { Future pump( BonusNoiseBehavior child, { - required PinballPlayer player, + required PinballAudioPlayer audioPlayer, required GameBloc bloc, }) { return ensureAdd( FlameBlocProvider.value( value: bloc, children: [ - FlameProvider.value( - player, + FlameProvider.value( + audioPlayer, children: [ child, ], @@ -33,7 +33,7 @@ class _TestGame extends Forge2DGame { } } -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} class _MockGameBloc extends Mock implements GameBloc {} @@ -41,7 +41,7 @@ void main() { TestWidgetsFlutterBinding.ensureInitialized(); group('BonusNoiseBehavior', () { - late PinballPlayer player; + late PinballAudioPlayer audioPlayer; late GameBloc bloc; final flameTester = FlameTester(_TestGame.new); @@ -50,8 +50,8 @@ void main() { }); setUp(() { - player = _MockPinballPlayer(); - when(() => player.play(any())).thenAnswer((_) {}); + audioPlayer = _MockPinballAudioPlayer(); + when(() => audioPlayer.play(any())).thenAnswer((_) {}); bloc = _MockGameBloc(); }); @@ -73,10 +73,10 @@ void main() { initialState: initialState, ); final behavior = BonusNoiseBehavior(); - await game.pump(behavior, player: player, bloc: bloc); + await game.pump(behavior, audioPlayer: audioPlayer, bloc: bloc); }, verify: (_, __) async { - verify(() => player.play(PinballAudio.google)).called(1); + verify(() => audioPlayer.play(PinballAudio.google)).called(1); }, ); @@ -98,10 +98,10 @@ void main() { initialState: initialState, ); final behavior = BonusNoiseBehavior(); - await game.pump(behavior, player: player, bloc: bloc); + await game.pump(behavior, audioPlayer: audioPlayer, bloc: bloc); }, verify: (_, __) async { - verify(() => player.play(PinballAudio.sparky)).called(1); + verify(() => audioPlayer.play(PinballAudio.sparky)).called(1); }, ); @@ -123,10 +123,10 @@ void main() { initialState: initialState, ); final behavior = BonusNoiseBehavior(); - await game.pump(behavior, player: player, bloc: bloc); + await game.pump(behavior, audioPlayer: audioPlayer, bloc: bloc); }, verify: (_, __) async { - verify(() => player.play(PinballAudio.dino)).called(1); + verify(() => audioPlayer.play(PinballAudio.dino)).called(1); }, ); @@ -148,10 +148,10 @@ void main() { initialState: initialState, ); final behavior = BonusNoiseBehavior(); - await game.pump(behavior, player: player, bloc: bloc); + await game.pump(behavior, audioPlayer: audioPlayer, bloc: bloc); }, verify: (_, __) async { - verify(() => player.play(PinballAudio.android)).called(1); + verify(() => audioPlayer.play(PinballAudio.android)).called(1); }, ); @@ -173,10 +173,10 @@ void main() { initialState: initialState, ); final behavior = BonusNoiseBehavior(); - await game.pump(behavior, player: player, bloc: bloc); + await game.pump(behavior, audioPlayer: audioPlayer, bloc: bloc); }, verify: (_, __) async { - verify(() => player.play(PinballAudio.dash)).called(1); + verify(() => audioPlayer.play(PinballAudio.dash)).called(1); }, ); }); diff --git a/test/game/behaviors/bumper_noise_behavior_test.dart b/test/game/behaviors/bumper_noise_behavior_test.dart index d8075726..636da6ad 100644 --- a/test/game/behaviors/bumper_noise_behavior_test.dart +++ b/test/game/behaviors/bumper_noise_behavior_test.dart @@ -9,10 +9,13 @@ import 'package:pinball_audio/pinball_audio.dart'; import 'package:pinball_flame/pinball_flame.dart'; class _TestGame extends Forge2DGame { - Future pump(_TestBodyComponent child, {required PinballPlayer player}) { + Future pump( + _TestBodyComponent child, { + required PinballAudioPlayer audioPlayer, + }) { return ensureAdd( - FlameProvider.value( - player, + FlameProvider.value( + audioPlayer, children: [ child, ], @@ -26,7 +29,7 @@ class _TestBodyComponent extends BodyComponent { Body createBody() => world.createBody(BodyDef()); } -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} class _MockContact extends Mock implements Contact {} @@ -35,11 +38,11 @@ void main() { group('BumperNoiseBehavior', () {}); - late PinballPlayer player; + late PinballAudioPlayer audioPlayer; final flameTester = FlameTester(_TestGame.new); setUp(() { - player = _MockPinballPlayer(); + audioPlayer = _MockPinballAudioPlayer(); }); flameTester.testGameWidget( @@ -47,12 +50,12 @@ void main() { setUp: (game, _) async { final behavior = BumperNoiseBehavior(); final parent = _TestBodyComponent(); - await game.pump(parent, player: player); + await game.pump(parent, audioPlayer: audioPlayer); await parent.ensureAdd(behavior); behavior.beginContact(Object(), _MockContact()); }, verify: (_, __) async { - verify(() => player.play(PinballAudio.bumper)).called(1); + verify(() => audioPlayer.play(PinballAudio.bumper)).called(1); }, ); } diff --git a/test/game/components/controlled_plunger_test.dart b/test/game/components/controlled_plunger_test.dart index 25b1f739..68bde767 100644 --- a/test/game/components/controlled_plunger_test.dart +++ b/test/game/components/controlled_plunger_test.dart @@ -28,15 +28,15 @@ class _TestGame extends Forge2DGame with HasKeyboardHandlerComponents { Future pump( Plunger child, { GameBloc? gameBloc, - PinballPlayer? pinballPlayer, + PinballAudioPlayer? pinballAudioPlayer, }) { return ensureAdd( FlameBlocProvider.value( value: gameBloc ?? GameBloc() ..add(const GameStarted()), children: [ - FlameProvider.value( - pinballPlayer ?? _MockPinballPlayer(), + FlameProvider.value( + pinballAudioPlayer ?? _MockPinballAudioPlayer(), children: [child], ) ], @@ -47,7 +47,7 @@ class _TestGame extends Forge2DGame with HasKeyboardHandlerComponents { class _MockGameBloc extends Mock implements GameBloc {} -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} void main() { TestWidgetsFlutterBinding.ensureInitialized(); @@ -158,17 +158,17 @@ void main() { }); group('PlungerNoiseBehavior', () { - late PinballPlayer player; + late PinballAudioPlayer audioPlayer; setUp(() { - player = _MockPinballPlayer(); + audioPlayer = _MockPinballAudioPlayer(); }); flameTester.test('plays the correct sound on load', (game) async { final parent = ControlledPlunger(compressionDistance: 10); - await game.pump(parent, pinballPlayer: player); + await game.pump(parent, pinballAudioPlayer: audioPlayer); await parent.ensureAdd(PlungerNoiseBehavior()); - verify(() => player.play(PinballAudio.launcher)).called(1); + verify(() => audioPlayer.play(PinballAudio.launcher)).called(1); }); test('is removed on the first update', () { diff --git a/test/game/components/flutter_forest/flutter_forest_test.dart b/test/game/components/flutter_forest/flutter_forest_test.dart index bce4b6ac..ae5d86ee 100644 --- a/test/game/components/flutter_forest/flutter_forest_test.dart +++ b/test/game/components/flutter_forest/flutter_forest_test.dart @@ -36,7 +36,7 @@ class _TestGame extends Forge2DGame { value: _MockGameBloc(), children: [ FlameProvider.value( - _MockPinballPlayer(), + _MockPinballAudioPlayer(), children: [ ZCanvasComponent(children: [child]), ], @@ -47,7 +47,7 @@ class _TestGame extends Forge2DGame { } } -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} class _MockGameBloc extends Mock implements GameBloc {} diff --git a/test/game/components/game_bloc_status_listener_test.dart b/test/game/components/game_bloc_status_listener_test.dart index e8685c3e..f2018fbd 100644 --- a/test/game/components/game_bloc_status_listener_test.dart +++ b/test/game/components/game_bloc_status_listener_test.dart @@ -30,7 +30,7 @@ class _TestGame extends Forge2DGame { Future pump( Iterable children, { - PinballPlayer? pinballPlayer, + PinballAudioPlayer? pinballAudioPlayer, }) async { return ensureAdd( FlameMultiBlocProvider( @@ -45,8 +45,8 @@ class _TestGame extends Forge2DGame { children: [ MultiFlameProvider( providers: [ - FlameProvider.value( - pinballPlayer ?? _MockPinballPlayer(), + FlameProvider.value( + pinballAudioPlayer ?? _MockPinballAudioPlayer(), ), FlameProvider.value( _MockAppLocalizations(), @@ -60,7 +60,7 @@ class _TestGame extends Forge2DGame { } } -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} class _MockLeaderboardRepository extends Mock implements LeaderboardRepository { } @@ -191,18 +191,25 @@ void main() { flameTester.test( 'plays the game over voice over', (game) async { - final player = _MockPinballPlayer(); + final audioPlayer = _MockPinballAudioPlayer(); final component = GameBlocStatusListener(); final repository = _MockLeaderboardRepository(); final backbox = Backbox( leaderboardRepository: repository, entries: const [], ); - await game.pump([component, backbox], pinballPlayer: player); + await game.pump( + [component, backbox], + pinballAudioPlayer: audioPlayer, + ); component.onNewState(state); - verify(() => player.play(PinballAudio.gameOverVoiceOver)).called(1); + verify( + () => audioPlayer.play( + PinballAudio.gameOverVoiceOver, + ), + ).called(1); }, ); }); @@ -219,14 +226,18 @@ void main() { flameTester.test( 'plays the background music on start', (game) async { - final player = _MockPinballPlayer(); + final audioPlayer = _MockPinballAudioPlayer(); final component = GameBlocStatusListener(); - await game.pump([component], pinballPlayer: player); + await game.pump([component], pinballAudioPlayer: audioPlayer); expect(state.status, equals(GameStatus.playing)); component.onNewState(state); - verify(() => player.play(PinballAudio.backgroundMusic)).called(1); + verify( + () => audioPlayer.play( + PinballAudio.backgroundMusic, + ), + ).called(1); }, ); diff --git a/test/game/components/google_word/behaviors/google_word_bonus_behavior_test.dart b/test/game/components/google_word/behaviors/google_word_bonus_behavior_test.dart index 40afeb09..e23c1fd2 100644 --- a/test/game/components/google_word/behaviors/google_word_bonus_behavior_test.dart +++ b/test/game/components/google_word/behaviors/google_word_bonus_behavior_test.dart @@ -36,8 +36,8 @@ class _TestGame extends Forge2DGame { FlameBlocProvider.value( value: gameBloc, children: [ - FlameProvider.value( - _MockPinballPlayer(), + FlameProvider.value( + _MockPinballAudioPlayer(), children: [child], ) ], @@ -48,7 +48,7 @@ class _TestGame extends Forge2DGame { class _MockGameBloc extends Mock implements GameBloc {} -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} void main() { TestWidgetsFlutterBinding.ensureInitialized(); diff --git a/test/game/pinball_game_test.dart b/test/game/pinball_game_test.dart index 3b034c8f..b05e349f 100644 --- a/test/game/pinball_game_test.dart +++ b/test/game/pinball_game_test.dart @@ -24,7 +24,7 @@ class _TestPinballGame extends PinballGame { leaderboardRepository: _MockLeaderboardRepository(), gameBloc: GameBloc(), l10n: _MockAppLocalizations(), - player: _MockPinballPlayer(), + audioPlayer: _MockPinballAudioPlayer(), ); @override @@ -43,7 +43,7 @@ class _TestDebugPinballGame extends DebugPinballGame { leaderboardRepository: _MockLeaderboardRepository(), gameBloc: GameBloc(), l10n: _MockAppLocalizations(), - player: _MockPinballPlayer(), + audioPlayer: _MockPinballAudioPlayer(), ); @override @@ -78,7 +78,7 @@ class _MockDragEndInfo extends Mock implements DragEndInfo {} class _MockLeaderboardRepository extends Mock implements LeaderboardRepository { } -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} void main() { TestWidgetsFlutterBinding.ensureInitialized(); diff --git a/test/game/view/pinball_game_page_test.dart b/test/game/view/pinball_game_page_test.dart index 8c6d3042..18dbeec7 100644 --- a/test/game/view/pinball_game_page_test.dart +++ b/test/game/view/pinball_game_page_test.dart @@ -26,7 +26,7 @@ class _TestPinballGame extends PinballGame { leaderboardRepository: _MockLeaderboardRepository(), gameBloc: GameBloc(), l10n: _MockAppLocalizations(), - player: _MockPinballPlayer(), + audioPlayer: _MockPinballAudioPlayer(), ); @override @@ -52,7 +52,7 @@ class _MockStartGameBloc extends Mock implements StartGameBloc {} class _MockAppLocalizations extends Mock implements AppLocalizations {} -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} class _MockLeaderboardRepository extends Mock implements LeaderboardRepository { } diff --git a/test/helpers/pump_app.dart b/test/helpers/pump_app.dart index 45929978..8be03f03 100644 --- a/test/helpers/pump_app.dart +++ b/test/helpers/pump_app.dart @@ -24,12 +24,12 @@ class _MockGameBloc extends Mock implements GameBloc {} class _MockStartGameBloc extends Mock implements StartGameBloc {} -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} -PinballPlayer _buildDefaultPinballPlayer() { - final player = _MockPinballPlayer(); - when(player.load).thenAnswer((_) => [Future.value()]); - return player; +PinballAudioPlayer _buildDefaultPinballAudioPlayer() { + final audioPlayer = _MockPinballAudioPlayer(); + when(audioPlayer.load).thenAnswer((_) => [Future.value()]); + return audioPlayer; } AssetsManagerCubit _buildDefaultAssetsManagerCubit() { @@ -55,7 +55,7 @@ extension PumpApp on WidgetTester { AssetsManagerCubit? assetsManagerCubit, CharacterThemeCubit? characterThemeCubit, LeaderboardRepository? leaderboardRepository, - PinballPlayer? pinballPlayer, + PinballAudioPlayer? pinballAudioPlayer, }) { return runAsync(() { return pumpWidget( @@ -65,7 +65,7 @@ extension PumpApp on WidgetTester { value: leaderboardRepository ?? _MockLeaderboardRepository(), ), RepositoryProvider.value( - value: pinballPlayer ?? _buildDefaultPinballPlayer(), + value: pinballAudioPlayer ?? _buildDefaultPinballAudioPlayer(), ), ], child: MultiBlocProvider( diff --git a/test/start_game/widgets/start_game_listener_test.dart b/test/start_game/widgets/start_game_listener_test.dart index 4e25796b..f4c1a5df 100644 --- a/test/start_game/widgets/start_game_listener_test.dart +++ b/test/start_game/widgets/start_game_listener_test.dart @@ -16,11 +16,11 @@ class _MockGameBloc extends Mock implements GameBloc {} class _MockCharacterThemeCubit extends Mock implements CharacterThemeCubit {} -class _MockPinballPlayer extends Mock implements PinballPlayer {} +class _MockPinballAudioPlayer extends Mock implements PinballAudioPlayer {} void main() { late StartGameBloc startGameBloc; - late PinballPlayer pinballPlayer; + late PinballAudioPlayer pinballAudioPlayer; late CharacterThemeCubit characterThemeCubit; group('StartGameListener', () { @@ -28,7 +28,7 @@ void main() { await mockFlameImages(); startGameBloc = _MockStartGameBloc(); - pinballPlayer = _MockPinballPlayer(); + pinballAudioPlayer = _MockPinballAudioPlayer(); characterThemeCubit = _MockCharacterThemeCubit(); }); @@ -241,7 +241,7 @@ void main() { child: SizedBox.shrink(), ), startGameBloc: startGameBloc, - pinballPlayer: pinballPlayer, + pinballAudioPlayer: pinballAudioPlayer, ); await tester.pumpAndSettle(); @@ -258,7 +258,7 @@ void main() { ); await tester.pumpAndSettle(); - verify(() => pinballPlayer.play(PinballAudio.ioPinballVoiceOver)) + verify(() => pinballAudioPlayer.play(PinballAudio.ioPinballVoiceOver)) .called(1); }, );