refactor: changes from pr

pull/51/head
RuiAlonso 4 years ago
parent 7c787e59a5
commit 768e226080

@ -31,7 +31,7 @@ class GameOverDialog extends StatelessWidget {
onPressed: () => Navigator.of(context).push<void>(
LeaderboardPage.route(theme: theme),
),
child: Text(l10n.leadersBoard),
child: Text(l10n.leadersboard),
),
],
),

@ -28,8 +28,8 @@
"@gameOver": {
"description": "Text displayed on the ending dialog when game finishes"
},
"leadersBoard": "Leaders Board",
"@leadersBoard": {
"leadersboard": "Leaders Board",
"@leadersboard": {
"description": "Text displayed on the ending dialog leaders board button"
},
"rank": "Rank",

@ -49,7 +49,7 @@ class LeaderboardView extends StatelessWidget {
children: [
const SizedBox(height: 80),
Text(
l10n.leadersBoard,
l10n.leadersboard,
style: Theme.of(context).textTheme.headline3,
),
const SizedBox(height: 80),
@ -82,7 +82,7 @@ class _LeaderboardRanking extends StatelessWidget {
mainAxisAlignment: MainAxisAlignment.center,
children: [
_LeaderboardHeaders(theme: theme),
const _LeaderboardList(),
_LeaderboardList(theme: theme),
],
),
);
@ -137,7 +137,9 @@ class _LeaderboardHeaderItem extends StatelessWidget {
}
class _LeaderboardList extends StatelessWidget {
const _LeaderboardList({Key? key}) : super(key: key);
const _LeaderboardList({Key? key, required this.theme}) : super(key: key);
final CharacterTheme theme;
@override
Widget build(BuildContext context) {
@ -152,6 +154,7 @@ class _LeaderboardList extends StatelessWidget {
score: 0,
),
),
theme: theme,
),
itemCount: 10,
);
@ -159,8 +162,13 @@ class _LeaderboardList extends StatelessWidget {
}
class _LeaderBoardCompetitor extends StatelessWidget {
const _LeaderBoardCompetitor({Key? key, required this.competitor})
: super(key: key);
const _LeaderBoardCompetitor({
Key? key,
required this.competitor,
required this.theme,
}) : super(key: key);
final CharacterTheme theme;
final Competitor competitor;
@ -169,20 +177,35 @@ class _LeaderBoardCompetitor extends StatelessWidget {
return Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
_LeaderboardCompetitorField(text: competitor.rank),
_LeaderboardCompetitorField(
text: competitor.rank,
theme: theme,
),
_LeaderboardCompetitorCharacter(
characterTheme: competitor.entry.character.theme,
theme: theme,
),
_LeaderboardCompetitorField(
text: competitor.entry.playerInitials,
theme: theme,
),
_LeaderboardCompetitorField(
text: competitor.entry.score.toString(),
theme: theme,
),
_LeaderboardCompetitorField(text: competitor.entry.playerInitials),
_LeaderboardCompetitorField(text: competitor.entry.score.toString()),
],
);
}
}
class _LeaderboardCompetitorField extends StatelessWidget {
const _LeaderboardCompetitorField({Key? key, required this.text})
: super(key: key);
const _LeaderboardCompetitorField({
Key? key,
required this.text,
required this.theme,
}) : super(key: key);
final CharacterTheme theme;
final String text;
@override
@ -191,8 +214,7 @@ class _LeaderboardCompetitorField extends StatelessWidget {
child: DecoratedBox(
decoration: BoxDecoration(
border: Border.all(
color:
context.read<ThemeCubit>().state.theme.characterTheme.ballColor,
color: theme.ballColor,
width: 2,
),
),
@ -209,7 +231,10 @@ class _LeaderboardCompetitorCharacter extends StatelessWidget {
const _LeaderboardCompetitorCharacter({
Key? key,
required this.characterTheme,
required this.theme,
}) : super(key: key);
final CharacterTheme theme;
final CharacterTheme characterTheme;
@override
@ -218,8 +243,7 @@ class _LeaderboardCompetitorCharacter extends StatelessWidget {
child: DecoratedBox(
decoration: BoxDecoration(
border: Border.all(
color:
context.read<ThemeCubit>().state.theme.characterTheme.ballColor,
color: theme.ballColor,
width: 2,
),
),

@ -20,7 +20,7 @@ void main() {
);
expect(find.text(l10n.gameOver), findsOneWidget);
expect(find.text(l10n.leadersBoard), findsOneWidget);
expect(find.text(l10n.leadersboard), findsOneWidget);
});
testWidgets('tapping on leaderboard button navigates to LeaderBoardPage',
@ -36,7 +36,7 @@ void main() {
navigator: navigator,
);
await tester.tap(find.widgetWithText(TextButton, l10n.leadersBoard));
await tester.tap(find.widgetWithText(TextButton, l10n.leadersboard));
verify(() => navigator.push<void>(any())).called(1);
});

@ -2,7 +2,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'helpers.dart';
Future<void> expectNavigatesTo<Type>(
Future<void> expectNavigatesToRoute<Type>(
WidgetTester tester,
Route route, {
bool hasFlameGameInside = false,

@ -23,7 +23,7 @@ void main() {
});
testWidgets('route returns a valid navigation route', (tester) async {
await expectNavigatesTo<LeaderboardPage>(
await expectNavigatesToRoute<LeaderboardPage>(
tester,
LeaderboardPage.route(
theme: DashTheme(),
@ -41,7 +41,7 @@ void main() {
),
);
expect(find.text(l10n.leadersBoard), findsOneWidget);
expect(find.text(l10n.leadersboard), findsOneWidget);
expect(find.text(l10n.retry), findsOneWidget);
});

Loading…
Cancel
Save