diff --git a/packages/pinball_components/lib/src/components/chrome_dino/cubit/chrome_dino_cubit.dart b/packages/pinball_components/lib/src/components/chrome_dino/cubit/chrome_dino_cubit.dart index b98a4093..d470869c 100644 --- a/packages/pinball_components/lib/src/components/chrome_dino/cubit/chrome_dino_cubit.dart +++ b/packages/pinball_components/lib/src/components/chrome_dino/cubit/chrome_dino_cubit.dart @@ -22,6 +22,11 @@ class ChromeDinoCubit extends Cubit { } void onSpit() { - emit(state.copyWith(status: ChromeDinoStatus.idle)); + emit( + ChromeDinoState( + status: ChromeDinoStatus.idle, + isMouthOpen: state.isMouthOpen, + ), + ); } } diff --git a/packages/pinball_components/test/src/components/chrome_dino/cubit/chrome_dino_cubit_test.dart b/packages/pinball_components/test/src/components/chrome_dino/cubit/chrome_dino_cubit_test.dart index 30e67511..88edc2a7 100644 --- a/packages/pinball_components/test/src/components/chrome_dino/cubit/chrome_dino_cubit_test.dart +++ b/packages/pinball_components/test/src/components/chrome_dino/cubit/chrome_dino_cubit_test.dart @@ -55,7 +55,7 @@ void main() { ); blocTest( - 'onSpit emits ChromeDinoStatus.idle', + 'onSpit emits ChromeDinoStatus.idle and removes ball', build: ChromeDinoCubit.new, act: (bloc) => bloc.onSpit(), expect: () => [ @@ -63,7 +63,11 @@ void main() { (state) => state.status, 'status', ChromeDinoStatus.idle, - ) + )..having( + (state) => state.ball, + 'ball', + null, + ) ], ); },