feat: pr suggestions

pull/24/head
Erick Zanardo 4 years ago
parent bc122a70bf
commit 8aacd01d92

@ -8,16 +8,12 @@ part 'game_event.dart';
part 'game_state.dart'; part 'game_state.dart';
class GameBloc extends Bloc<GameEvent, GameState> { class GameBloc extends Bloc<GameEvent, GameState> {
GameBloc({ GameBloc() : super(const GameState.initial()) {
int bonusLettersLength = bonusWord.length,
}) : _bonusLettersLength = bonusLettersLength,
super(const GameState.initial()) {
on<BallLost>(_onBallLost); on<BallLost>(_onBallLost);
on<Scored>(_onScored); on<Scored>(_onScored);
on<BonusLetterActivated>(_onBonusLetterActivated); on<BonusLetterActivated>(_onBonusLetterActivated);
} }
final int _bonusLettersLength;
static const bonusWord = 'GOOGLE'; static const bonusWord = 'GOOGLE';
void _onBallLost(BallLost event, Emitter emit) { void _onBallLost(BallLost event, Emitter emit) {
@ -38,7 +34,7 @@ class GameBloc extends Bloc<GameEvent, GameState> {
event.letterIndex, event.letterIndex,
]; ];
if (newBonusLetters.length == _bonusLettersLength) { if (newBonusLetters.length == bonusWord.length) {
emit( emit(
state.copyWith( state.copyWith(
activatedBonusLetters: [], activatedBonusLetters: [],

@ -131,12 +131,15 @@ void main() {
); );
blocTest<GameBloc, GameState>( blocTest<GameBloc, GameState>(
'adds the bonus when the sequence is completed', 'adds the bonus when the word is completed',
build: () => GameBloc(bonusLettersLength: 3), build: GameBloc.new,
act: (bloc) => bloc act: (bloc) => bloc
..add(const BonusLetterActivated(0)) ..add(const BonusLetterActivated(0))
..add(const BonusLetterActivated(1)) ..add(const BonusLetterActivated(1))
..add(const BonusLetterActivated(2)), ..add(const BonusLetterActivated(2))
..add(const BonusLetterActivated(3))
..add(const BonusLetterActivated(4))
..add(const BonusLetterActivated(5)),
expect: () => const [ expect: () => const [
GameState( GameState(
score: 0, score: 0,
@ -150,6 +153,24 @@ void main() {
activatedBonusLetters: [0, 1], activatedBonusLetters: [0, 1],
bonusHistory: [], bonusHistory: [],
), ),
GameState(
score: 0,
balls: 3,
activatedBonusLetters: [0, 1, 2],
bonusHistory: [],
),
GameState(
score: 0,
balls: 3,
activatedBonusLetters: [0, 1, 2, 3],
bonusHistory: [],
),
GameState(
score: 0,
balls: 3,
activatedBonusLetters: [0, 1, 2, 3, 4],
bonusHistory: [],
),
GameState( GameState(
score: 0, score: 0,
balls: 3, balls: 3,

Loading…
Cancel
Save