Add translated exercises for the screenshots

This commit is contained in:
Roland Geider
2024-01-10 22:42:49 +01:00
parent c91263adea
commit cf1beddb75
9 changed files with 610 additions and 15 deletions

View File

@@ -14,13 +14,14 @@ import '../test/nutrition/nutritional_plan_form_test.mocks.dart';
import '../test/workout/weight_unit_form_widget_test.mocks.dart';
import '../test/workout/workout_form_test.mocks.dart';
import '../test_data/body_weight.dart';
import '../test_data/exercises.dart';
import '../test_data/measurements.dart';
import '../test_data/nutritional_plans.dart';
import '../test_data/workouts.dart';
Widget createDashboardScreen({locale = 'en'}) {
final mockWorkoutProvider = MockWorkoutPlansProvider();
when(mockWorkoutProvider.activePlan).thenReturn(getWorkout());
when(mockWorkoutProvider.activePlan).thenReturn(getWorkout(exercises: getScreenshotExercises()));
final Map<String, dynamic> logs = {
'results': [

View File

@@ -7,13 +7,14 @@ import 'package:wger/screens/workout_plan_screen.dart';
import 'package:wger/theme/theme.dart';
import '../test/workout/workout_form_test.mocks.dart';
import '../test_data/exercises.dart';
import '../test_data/workouts.dart';
Widget createWorkoutDetailScreen({locale = 'en'}) {
final key = GlobalKey<NavigatorState>();
final mockWorkoutProvider = MockWorkoutPlansProvider();
final workout = getWorkout();
final workout = getWorkout(exercises: getScreenshotExercises());
when(mockWorkoutProvider.activePlan).thenReturn(workout);
when(mockWorkoutProvider.fetchAndSetWorkoutPlanFull(1)).thenAnswer((_) => Future.value(workout));
@@ -33,7 +34,7 @@ Widget createWorkoutDetailScreen({locale = 'en'}) {
home: TextButton(
onPressed: () => key.currentState!.push(
MaterialPageRoute<void>(
settings: RouteSettings(arguments: getWorkout()),
settings: RouteSettings(arguments: workout),
builder: (_) => WorkoutPlanScreen(),
),
),

View File

@@ -16,7 +16,7 @@ import '../test_data/workouts.dart';
Widget createGymModeScreen({locale = 'en'}) {
final key = GlobalKey<NavigatorState>();
final bases = getTestExerciseBases();
final workout = getWorkout();
final workout = getWorkout(exercises: getScreenshotExercises());
final mockExerciseProvider = MockExercisesProvider();

View File

@@ -1,10 +1,12 @@
Start emulator and run
This will generate some screenshots and save them to the Play Store metadata folder.
`flutter drive --driver=test_driver/screenshot_driver.dart --target=integration_test/make_screenshots_test.dart`
1) Set the correct value for the device size by setting the `destination` variable
2) Start the correct emulator and
run `flutter drive --driver=test_driver/screenshot_driver.dart --target=integration_test/make_screenshots_test.dart`
3) If you get errors or the screenshots are not written to disk, edit the
`languages` list and comment some of the languages
This will generate some screenshots and save them to the Play Store metadata folder
See
See also
* <https://github.com/openfoodfacts/smooth-app/issues/217#issuecomment-1092678779>
* <https://dev.to/mjablecnik/take-screenshot-during-flutter-integration-tests-435k>

View File

@@ -20,7 +20,7 @@ enum DeviceType {
wearScreenshots
}
final destination = DeviceType.tenInchScreenshots.name;
final destination = DeviceType.phoneScreenshots.name;
Future<void> takeScreenshot(tester, binding, String language, String name) async {
if (Platform.isAndroid) {
@@ -37,19 +37,24 @@ const languages = [
// Note: it seems if too many languages are processed at once, some processes
// disappear and no images are written. Doing this in smaller steps works fine
/*
'ca',
'de-DE',
'el-GR',
'en-US',
'es-ES',
*/
/*
'fr-FR',
'hi-IN',
'hr',
'it-IT',
'pt-BR',
'nb-NO',
*/
'nb-NO',
'pl-PL',
'ru-RU',
'tr-TR',