From c9cf60d4e9df2ee342b160d4b2f3a928c72f38cc Mon Sep 17 00:00:00 2001 From: Roland Geider Date: Sat, 21 Oct 2023 13:45:35 +0200 Subject: [PATCH 1/2] Remove debug code --- lib/providers/workout_plans.dart | 1 - macos/Flutter/GeneratedPluginRegistrant.swift | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/providers/workout_plans.dart b/lib/providers/workout_plans.dart index 47dcea35..66446885 100644 --- a/lib/providers/workout_plans.dart +++ b/lib/providers/workout_plans.dart @@ -349,7 +349,6 @@ class WorkoutPlansProvider with ChangeNotifier { 'weightUnit': _weightUnits.map((e) => e.toJson()).toList(), }; prefs.setString('workoutUnits', json.encode(exerciseData)); - log(json.encode(exerciseData)); notifyListeners(); } diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index fa46ecee..3de62773 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -13,7 +13,7 @@ import url_launcher_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin")) - FLTPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlusPlugin")) + FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin")) RivePlugin.register(with: registry.registrar(forPlugin: "RivePlugin")) SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin")) UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) From 5c2e1a98fdb9031c4779960e12f079c5a2d8ee5d Mon Sep 17 00:00:00 2001 From: Roland Geider Date: Sat, 21 Oct 2023 21:00:45 +0200 Subject: [PATCH 2/2] Rename workout to routine See https://github.com/wger-project/wger/issues/651 --- integration_test/1_dashboard.dart | 18 +- .../{2_workout.dart => 2_routine.dart} | 26 +-- integration_test/3_gym_mode.dart | 20 +- integration_test/app_test.dart | 4 +- lib/helpers/misc.dart | 4 +- lib/helpers/ui.dart | 6 +- lib/l10n/app_en.arb | 24 +-- lib/main.dart | 20 +- lib/models/nutrition/nutritional_plan.g.dart | 3 +- lib/models/{workouts => routines}/day.dart | 4 +- lib/models/{workouts => routines}/day.g.dart | 4 +- lib/models/{workouts => routines}/log.dart | 8 +- lib/models/{workouts => routines}/log.g.dart | 4 +- .../repetition_unit.dart | 0 .../repetition_unit.g.dart | 3 +- .../routine.dart} | 16 +- .../routine.g.dart} | 8 +- .../{workouts => routines}/session.dart | 5 +- .../{workouts => routines}/session.g.dart | 16 +- lib/models/{workouts => routines}/set.dart | 2 +- lib/models/{workouts => routines}/set.g.dart | 0 .../{workouts => routines}/setting.dart | 4 +- .../{workouts => routines}/setting.g.dart | 0 .../{workouts => routines}/weight_unit.dart | 0 .../{workouts => routines}/weight_unit.g.dart | 3 +- .../{workout_plans.dart => routine.dart} | 175 +++++++++--------- lib/screens/gym_mode.dart | 8 +- lib/screens/home_tabs_screen.dart | 16 +- ...t_plan_screen.dart => routine_screen.dart} | 69 ++++--- ...plans_screen.dart => routines_screen.dart} | 20 +- lib/widgets/core/app_bar.dart | 4 +- lib/widgets/dashboard/calendar.dart | 7 +- lib/widgets/dashboard/widgets.dart | 26 ++- .../{workouts => routines}/app_bar.dart | 0 .../{workouts => routines}/charts.dart | 0 lib/widgets/{workouts => routines}/day.dart | 28 +-- lib/widgets/{workouts => routines}/forms.dart | 72 ++++--- .../{workouts => routines}/gym_mode.dart | 58 +++--- lib/widgets/{workouts => routines}/log.dart | 13 +- .../routine_detail.dart} | 31 ++-- .../routines_list.dart} | 26 +-- .../{workouts => routines}/workout_logs.dart | 27 +-- test/exercises/contribute_exercise_test.dart | 2 +- .../contribute_exercise_test.mocks.dart | 9 +- .../exercises_detail_widget_test.dart | 2 +- test/gallery/gallery_form_test.mocks.dart | 12 +- test/gallery/gallery_screen_test.mocks.dart | 12 +- ...surement_categories_screen_test.mocks.dart | 12 +- .../measurement_provider_test.mocks.dart | 12 +- .../nutritional_meal_form_test.mocks.dart | 39 ++-- .../nutritional_plan_form_test.mocks.dart | 39 ++-- .../nutritional_plan_screen_test.mocks.dart | 30 ++- .../nutritional_plans_screen_test.mocks.dart | 30 ++- test/other/base_provider_test.mocks.dart | 9 +- .../gym_mode_screen_test.dart | 22 +-- .../gym_mode_screen_test.mocks.dart | 38 ++-- .../plate_calculator_test.dart | 0 .../repetition_unit_form_widget_test.dart | 24 +-- ...epetition_unit_form_widget_test.mocks.dart | 121 ++++++++---- test/{workout => routine}/set_model_test.dart | 6 +- .../setting_model_test.dart | 6 +- .../weight_unit_form_widget_test.dart | 22 +-- .../weight_unit_form_widget_test.mocks.dart | 17 +- .../workout_day_form_test.dart | 30 +-- .../workout_day_form_test.mocks.dart | 121 ++++++++---- .../workout_form_test.dart | 52 +++--- .../workout_form_test.mocks.dart | 121 ++++++++---- .../workout_log_model_test.dart | 6 +- .../workout_plan_model_test.dart | 12 +- .../workout_plan_screen_test.dart | 16 +- .../workout_plan_screen_test.mocks.dart | 14 +- .../workout_plans_screen_test.dart | 22 +-- .../workout_plans_screen_test.mocks.dart | 14 +- .../workout_provider_test.dart | 26 +-- .../workout_provider_test.mocks.dart | 14 +- .../workout_set_form_test.dart | 34 ++-- .../workout_set_form_test.mocks.dart | 165 +++++++++++++---- test/user/provider_test.mocks.dart | 12 +- test/weight/weight_provider_test.mocks.dart | 12 +- test/weight/weight_screen_test.mocks.dart | 15 +- test_data/{workouts.dart => routines.dart} | 28 +-- 81 files changed, 1141 insertions(+), 819 deletions(-) rename integration_test/{2_workout.dart => 2_routine.dart} (52%) rename lib/models/{workouts => routines}/day.dart (97%) rename lib/models/{workouts => routines}/day.g.dart (90%) rename lib/models/{workouts => routines}/log.dart (95%) rename lib/models/{workouts => routines}/log.g.dart (93%) rename lib/models/{workouts => routines}/repetition_unit.dart (100%) rename lib/models/{workouts => routines}/repetition_unit.g.dart (95%) rename lib/models/{workouts/workout_plan.dart => routines/routine.dart} (89%) rename lib/models/{workouts/workout_plan.g.dart => routines/routine.g.dart} (77%) rename lib/models/{workouts => routines}/session.dart (97%) rename lib/models/{workouts => routines}/session.g.dart (80%) rename lib/models/{workouts => routines}/set.dart (98%) rename lib/models/{workouts => routines}/set.g.dart (100%) rename lib/models/{workouts => routines}/setting.dart (96%) rename lib/models/{workouts => routines}/setting.g.dart (100%) rename lib/models/{workouts => routines}/weight_unit.dart (100%) rename lib/models/{workouts => routines}/weight_unit.g.dart (86%) rename lib/providers/{workout_plans.dart => routine.dart} (74%) rename lib/screens/{workout_plan_screen.dart => routine_screen.dart} (64%) rename lib/screens/{workout_plans_screen.dart => routines_screen.dart} (72%) rename lib/widgets/{workouts => routines}/app_bar.dart (100%) rename lib/widgets/{workouts => routines}/charts.dart (100%) rename lib/widgets/{workouts => routines}/day.dart (92%) rename lib/widgets/{workouts => routines}/forms.dart (93%) rename lib/widgets/{workouts => routines}/gym_mode.dart (95%) rename lib/widgets/{workouts => routines}/log.dart (91%) rename lib/widgets/{workouts/workout_plan_detail.dart => routines/routine_detail.dart} (70%) rename lib/widgets/{workouts/workout_plans_list.dart => routines/routines_list.dart} (84%) rename lib/widgets/{workouts => routines}/workout_logs.dart (89%) rename test/{workout => routine}/gym_mode_screen_test.dart (93%) rename test/{workout => routine}/gym_mode_screen_test.mocks.dart (94%) rename test/{workout => routine}/plate_calculator_test.dart (100%) rename test/{workout => routine}/repetition_unit_form_widget_test.dart (83%) rename test/{workout => routine}/repetition_unit_form_widget_test.mocks.dart (86%) rename test/{workout => routine}/set_model_test.dart (89%) rename test/{workout => routine}/setting_model_test.dart (94%) rename test/{workout => routine}/weight_unit_form_widget_test.dart (83%) rename test/{workout => routine}/weight_unit_form_widget_test.mocks.dart (91%) rename test/{workout => routine}/workout_day_form_test.dart (80%) rename test/{workout => routine}/workout_day_form_test.mocks.dart (86%) rename test/{workout => routine}/workout_form_test.dart (76%) rename test/{workout => routine}/workout_form_test.mocks.dart (86%) rename test/{workout => routine}/workout_log_model_test.dart (95%) rename test/{workout => routine}/workout_plan_model_test.dart (80%) rename test/{workout => routine}/workout_plan_screen_test.dart (86%) rename test/{workout => routine}/workout_plan_screen_test.mocks.dart (93%) rename test/{workout => routine}/workout_plans_screen_test.dart (86%) rename test/{workout => routine}/workout_plans_screen_test.mocks.dart (93%) rename test/{workout => routine}/workout_provider_test.dart (87%) rename test/{workout => routine}/workout_provider_test.mocks.dart (93%) rename test/{workout => routine}/workout_set_form_test.dart (76%) rename test/{workout => routine}/workout_set_form_test.mocks.dart (92%) rename test_data/{workouts.dart => routines.dart} (88%) diff --git a/integration_test/1_dashboard.dart b/integration_test/1_dashboard.dart index 7abfcf45..6d0e82da 100644 --- a/integration_test/1_dashboard.dart +++ b/integration_test/1_dashboard.dart @@ -5,22 +5,22 @@ import 'package:provider/provider.dart'; import 'package:wger/providers/body_weight.dart'; import 'package:wger/providers/measurement.dart'; import 'package:wger/providers/nutrition.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/screens/dashboard.dart'; import 'package:wger/theme/theme.dart'; import '../test/measurements/measurement_categories_screen_test.mocks.dart'; 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/routine/weight_unit_form_widget_test.mocks.dart'; +import '../test/routine/workout_form_test.mocks.dart'; import '../test_data/body_weight.dart'; import '../test_data/measurements.dart'; import '../test_data/nutritional_plans.dart'; -import '../test_data/workouts.dart'; +import '../test_data/routines.dart'; Widget createDashboardScreen({locale = 'en'}) { - final mockWorkoutProvider = MockWorkoutPlansProvider(); - when(mockWorkoutProvider.activePlan).thenReturn(getWorkout()); + final mockRoutineProvider = MockRoutineProvider(); + when(mockRoutineProvider.activeRoutine).thenReturn(getRoutine()); final Map logs = { 'results': [ @@ -34,7 +34,7 @@ Widget createDashboardScreen({locale = 'en'}) { } ] }; - when(mockWorkoutProvider.fetchSessionData()).thenAnswer((a) => Future.value(logs)); + when(mockRoutineProvider.fetchSessionData()).thenAnswer((a) => Future.value(logs)); final mockNutritionProvider = MockNutritionPlansProvider(); when(mockNutritionProvider.currentPlan).thenAnswer((realInvocation) => getNutritionalPlan()); @@ -48,8 +48,8 @@ Widget createDashboardScreen({locale = 'en'}) { return MultiProvider( providers: [ - ChangeNotifierProvider( - create: (context) => mockWorkoutProvider, + ChangeNotifierProvider( + create: (context) => mockRoutineProvider, ), ChangeNotifierProvider( create: (context) => mockNutritionProvider, diff --git a/integration_test/2_workout.dart b/integration_test/2_routine.dart similarity index 52% rename from integration_test/2_workout.dart rename to integration_test/2_routine.dart index b36d5265..2de341a9 100644 --- a/integration_test/2_workout.dart +++ b/integration_test/2_routine.dart @@ -2,25 +2,25 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:mockito/mockito.dart'; import 'package:provider/provider.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/screens/routine_screen.dart'; import 'package:wger/theme/theme.dart'; -import '../test/workout/workout_form_test.mocks.dart'; -import '../test_data/workouts.dart'; +import '../test/routine/workout_form_test.mocks.dart'; +import '../test_data/routines.dart'; -Widget createWorkoutDetailScreen({locale = 'en'}) { +Widget createRoutineDetailScreen({locale = 'en'}) { final key = GlobalKey(); - final mockWorkoutProvider = MockWorkoutPlansProvider(); - final workout = getWorkout(); - when(mockWorkoutProvider.activePlan).thenReturn(workout); - when(mockWorkoutProvider.fetchAndSetWorkoutPlanFull(1)).thenAnswer((_) => Future.value(workout)); + final mockRoutineProvider = MockRoutineProvider(); + final routine = getRoutine(); + when(mockRoutineProvider.activeRoutine).thenReturn(routine); + when(mockRoutineProvider.fetchAndSetRoutineFull(1)).thenAnswer((_) => Future.value(routine)); return MultiProvider( providers: [ - ChangeNotifierProvider( - create: (context) => mockWorkoutProvider, + ChangeNotifierProvider( + create: (context) => mockRoutineProvider, ), ], child: MaterialApp( @@ -33,8 +33,8 @@ Widget createWorkoutDetailScreen({locale = 'en'}) { home: TextButton( onPressed: () => key.currentState!.push( MaterialPageRoute( - settings: RouteSettings(arguments: getWorkout()), - builder: (_) => WorkoutPlanScreen(), + settings: RouteSettings(arguments: getRoutine()), + builder: (_) => RoutineScreen(), ), ), child: const SizedBox(), diff --git a/integration_test/3_gym_mode.dart b/integration_test/3_gym_mode.dart index e31e8ca1..888afc27 100644 --- a/integration_test/3_gym_mode.dart +++ b/integration_test/3_gym_mode.dart @@ -3,20 +3,20 @@ import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:mockito/mockito.dart'; import 'package:provider/provider.dart'; import 'package:wger/providers/exercises.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/screens/gym_mode.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; +import 'package:wger/screens/routine_screen.dart'; import 'package:wger/theme/theme.dart'; +import '../test/routine/gym_mode_screen_test.mocks.dart'; import '../test/utils.dart'; -import '../test/workout/gym_mode_screen_test.mocks.dart'; import '../test_data/exercises.dart'; -import '../test_data/workouts.dart'; +import '../test_data/routines.dart'; Widget createGymModeScreen({locale = 'en'}) { final key = GlobalKey(); final bases = getTestExerciseBases(); - final workout = getWorkout(); + final routine = getRoutine(); final mockExerciseProvider = MockExercisesProvider(); @@ -25,11 +25,11 @@ Widget createGymModeScreen({locale = 'en'}) { //when(mockExerciseProvider.findExerciseBaseById(2)).thenReturn(bases[1]); // crunches //when(mockExerciseProvider.findExerciseBaseById(3)).thenReturn(bases[2]); // dead lift - return ChangeNotifierProvider( - create: (context) => WorkoutPlansProvider( + return ChangeNotifierProvider( + create: (context) => RoutineProvider( mockBaseProvider, mockExerciseProvider, - [workout], + [routine], ), child: ChangeNotifierProvider( create: (context) => mockExerciseProvider, @@ -43,14 +43,14 @@ Widget createGymModeScreen({locale = 'en'}) { home: TextButton( onPressed: () => key.currentState!.push( MaterialPageRoute( - settings: RouteSettings(arguments: workout.days.first), + settings: RouteSettings(arguments: routine.days.first), builder: (_) => GymModeScreen(), ), ), child: const SizedBox(), ), routes: { - WorkoutPlanScreen.routeName: (ctx) => WorkoutPlanScreen(), + RoutineScreen.routeName: (ctx) => RoutineScreen(), }, ), ), diff --git a/integration_test/app_test.dart b/integration_test/app_test.dart index f6b04b1d..a0fcc5be 100644 --- a/integration_test/app_test.dart +++ b/integration_test/app_test.dart @@ -5,7 +5,7 @@ import 'package:flutter_test/flutter_test.dart'; import 'package:integration_test/integration_test.dart'; import '1_dashboard.dart'; -import '2_workout.dart'; +import '2_routine.dart'; import '3_gym_mode.dart'; import '4_measurements.dart'; import '5_nutritional_plan.dart'; @@ -61,7 +61,7 @@ void main() { }); testWidgets('workout detail screen - $language', (WidgetTester tester) async { - await tester.pumpWidget(createWorkoutDetailScreen(locale: languageCode)); + await tester.pumpWidget(createRoutineDetailScreen(locale: languageCode)); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); await takeScreenshot(tester, binding, language, '02 - workout detail'); diff --git a/lib/helpers/misc.dart b/lib/helpers/misc.dart index 26c34cc2..37486ade 100644 --- a/lib/helpers/misc.dart +++ b/lib/helpers/misc.dart @@ -19,8 +19,8 @@ import 'package:flutter/material.dart'; import 'package:url_launcher/url_launcher.dart'; import 'package:wger/helpers/consts.dart'; -import 'package:wger/models/workouts/repetition_unit.dart'; -import 'package:wger/models/workouts/weight_unit.dart'; +import 'package:wger/models/routines/repetition_unit.dart'; +import 'package:wger/models/routines/weight_unit.dart'; /// Returns the text representation for a single setting, used in the gym mode String repText( diff --git a/lib/helpers/ui.dart b/lib/helpers/ui.dart index 626e42e6..81122c3d 100644 --- a/lib/helpers/ui.dart +++ b/lib/helpers/ui.dart @@ -24,8 +24,8 @@ import 'package:provider/provider.dart'; import 'package:wger/exceptions/http_exception.dart'; import 'package:wger/models/exercises/base.dart'; import 'package:wger/models/exercises/translation.dart'; -import 'package:wger/models/workouts/log.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/models/routines/log.dart'; +import 'package:wger/providers/routine.dart'; void showErrorDialog(dynamic exception, BuildContext context) { log('showErrorDialog: '); @@ -129,7 +129,7 @@ dynamic showDeleteDialog( ), onPressed: () { exerciseData[exercise]!.removeWhere((el) => el.id == log.id); - Provider.of(context, listen: false).deleteLog( + Provider.of(context, listen: false).deleteLog( log, ); diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 7c2e595c..e2c57e8b 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -69,11 +69,11 @@ "@registerInstead": {}, "loginInstead": "Already have an account? Login", "@loginInstead": {}, - "labelWorkoutPlans": "Workout plans", + "labelWorkoutPlans": "Routines", "@labelWorkoutPlans": { - "description": "Title for screen workout plans" + "description": "Title for screen routine list" }, - "labelBottomNavWorkout": "Workout", + "labelBottomNavWorkout": "Routine", "@labelBottomNavWorkout": { "description": "Label used in bottom navigation, use a short word" }, @@ -108,11 +108,11 @@ "exerciseList": "Exercise list", "exercise": "Exercise", "@exercise": { - "description": "An exercise for a workout" + "description": "An exercise for a workout or routine" }, "exercises": "Exercises", "@exercises": { - "description": "Multiple exercises for a workout" + "description": "Multiple exercises for a workout or routine" }, "exerciseName": "Exercise Name", "@exerciseName": { @@ -143,13 +143,13 @@ "@category": { "description": "Category for an exercise, ingredient, etc." }, - "newWorkout": "New workout plan", + "newWorkout": "New routine", "@newWorkout": { - "description": "Header when adding a new workout" + "description": "Header when adding a new routine" }, - "noWorkoutPlans": "You have no workout plans", + "noWorkoutPlans": "You have no routines", "@noWorkoutPlans": { - "description": "Message shown when the user has no workout plans" + "description": "Message shown when the user has no routines" }, "reps": "Reps", "@reps": { @@ -169,7 +169,7 @@ "@repetitionUnit": {}, "set": "Set", "@set": { - "description": "A set in a workout plan" + "description": "A set in a routine" }, "dayDescriptionHelp": "A description of what is done on this day (e.g. 'pull day') or what body parts are trained (e.g. 'chest and shoulders')", "@dayDescriptionHelp": {}, @@ -237,7 +237,7 @@ "@description": {}, "name": "Name", "@name": { - "description": "Name for a workout or nutritional plan" + "description": "Name for a routine or nutritional plan" }, "save": "Save", "@save": {}, @@ -404,7 +404,7 @@ "description": "Message shown when the user has no logged weight entries" }, "noMeasurementEntries": "You have no measurement entries", - "@noMeasurementntries": { + "@noMeasurementEntries": { "description": "Message shown when the user has no logged measurement entries" }, "moreMeasurementEntries": "Add new measurement", diff --git a/lib/main.dart b/lib/main.dart index 016c6310..0ff5e961 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -16,8 +16,10 @@ * along with this program. If not, see . */ +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; +import 'package:flutter_zxing/flutter_zxing.dart'; import 'package:provider/provider.dart'; import 'package:wger/providers/add_exercise.dart'; import 'package:wger/providers/base_provider.dart'; @@ -26,8 +28,8 @@ import 'package:wger/providers/exercises.dart'; import 'package:wger/providers/gallery.dart'; import 'package:wger/providers/measurement.dart'; import 'package:wger/providers/nutrition.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/providers/user.dart'; -import 'package:wger/providers/workout_plans.dart'; import 'package:wger/screens/add_exercise_screen.dart'; import 'package:wger/screens/auth_screen.dart'; import 'package:wger/screens/dashboard.dart'; @@ -42,16 +44,14 @@ import 'package:wger/screens/measurement_entries_screen.dart'; import 'package:wger/screens/nutritional_diary_screen.dart'; import 'package:wger/screens/nutritional_plan_screen.dart'; import 'package:wger/screens/nutritional_plans_screen.dart'; +import 'package:wger/screens/routine_screen.dart'; +import 'package:wger/screens/routines_screen.dart'; import 'package:wger/screens/splash_screen.dart'; import 'package:wger/screens/weight_screen.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; -import 'package:wger/screens/workout_plans_screen.dart'; import 'package:wger/theme/theme.dart'; import 'package:wger/widgets/core/about.dart'; import 'providers/auth.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter_zxing/flutter_zxing.dart'; void main() { zx.setLogEnabled(kDebugMode); @@ -77,14 +77,14 @@ class MyApp extends StatelessWidget { update: (context, base, previous) => previous ?? ExercisesProvider(WgerBaseProvider(base)), ), - ChangeNotifierProxyProvider2( - create: (context) => WorkoutPlansProvider( + ChangeNotifierProxyProvider2( + create: (context) => RoutineProvider( WgerBaseProvider(Provider.of(context, listen: false)), Provider.of(context, listen: false), [], ), update: (context, auth, exercises, previous) => - previous ?? WorkoutPlansProvider(WgerBaseProvider(auth), exercises, []), + previous ?? RoutineProvider(WgerBaseProvider(auth), exercises, []), ), ChangeNotifierProxyProvider( create: (context) => NutritionPlansProvider( @@ -152,8 +152,8 @@ class MyApp extends StatelessWidget { NutritionalDiaryScreen.routeName: (ctx) => NutritionalDiaryScreen(), NutritionalPlanScreen.routeName: (ctx) => NutritionalPlanScreen(), WeightScreen.routeName: (ctx) => WeightScreen(), - WorkoutPlanScreen.routeName: (ctx) => WorkoutPlanScreen(), - WorkoutPlansScreen.routeName: (ctx) => WorkoutPlansScreen(), + RoutineScreen.routeName: (ctx) => RoutineScreen(), + RoutinesScreen.routeName: (ctx) => RoutinesScreen(), ExercisesScreen.routeName: (ctx) => const ExercisesScreen(), ExerciseDetailScreen.routeName: (ctx) => const ExerciseDetailScreen(), AddExerciseScreen.routeName: (ctx) => const AddExerciseScreen(), diff --git a/lib/models/nutrition/nutritional_plan.g.dart b/lib/models/nutrition/nutritional_plan.g.dart index 661a9f47..9b10d8a5 100644 --- a/lib/models/nutrition/nutritional_plan.g.dart +++ b/lib/models/nutrition/nutritional_plan.g.dart @@ -18,7 +18,8 @@ NutritionalPlan _$NutritionalPlanFromJson(Map json) { ); } -Map _$NutritionalPlanToJson(NutritionalPlan instance) => { +Map _$NutritionalPlanToJson(NutritionalPlan instance) => + { 'id': instance.id, 'description': instance.description, 'creation_date': toDate(instance.creationDate), diff --git a/lib/models/workouts/day.dart b/lib/models/routines/day.dart similarity index 97% rename from lib/models/workouts/day.dart rename to lib/models/routines/day.dart index 88b5954c..c9f51b2a 100644 --- a/lib/models/workouts/day.dart +++ b/lib/models/routines/day.dart @@ -18,7 +18,7 @@ import 'package:intl/intl.dart'; import 'package:json_annotation/json_annotation.dart'; -import 'package:wger/models/workouts/set.dart'; +import 'package:wger/models/routines/set.dart'; part 'day.g.dart'; @@ -38,7 +38,7 @@ class Day { int? id; @JsonKey(required: true, name: 'training') - late int workoutId; + late int routineId; @JsonKey(required: true) late String description; diff --git a/lib/models/workouts/day.g.dart b/lib/models/routines/day.g.dart similarity index 90% rename from lib/models/workouts/day.g.dart rename to lib/models/routines/day.g.dart index 0f1b6736..2635c580 100644 --- a/lib/models/workouts/day.g.dart +++ b/lib/models/routines/day.g.dart @@ -13,14 +13,14 @@ Day _$DayFromJson(Map json) { ); return Day() ..id = json['id'] as int? - ..workoutId = json['training'] as int + ..routineId = json['training'] as int ..description = json['description'] as String ..daysOfWeek = (json['day'] as List).map((e) => e as int).toList(); } Map _$DayToJson(Day instance) => { 'id': instance.id, - 'training': instance.workoutId, + 'training': instance.routineId, 'description': instance.description, 'day': instance.daysOfWeek, }; diff --git a/lib/models/workouts/log.dart b/lib/models/routines/log.dart similarity index 95% rename from lib/models/workouts/log.dart rename to lib/models/routines/log.dart index 99cf2b53..59404219 100644 --- a/lib/models/workouts/log.dart +++ b/lib/models/routines/log.dart @@ -20,8 +20,8 @@ import 'package:json_annotation/json_annotation.dart'; import 'package:wger/helpers/json.dart'; import 'package:wger/helpers/misc.dart'; import 'package:wger/models/exercises/base.dart'; -import 'package:wger/models/workouts/repetition_unit.dart'; -import 'package:wger/models/workouts/weight_unit.dart'; +import 'package:wger/models/routines/repetition_unit.dart'; +import 'package:wger/models/routines/weight_unit.dart'; part 'log.g.dart'; @@ -37,7 +37,7 @@ class Log { late ExerciseBase exerciseBaseObj; @JsonKey(required: true, name: 'workout') - late int workoutPlan; + late int routineId; @JsonKey(required: true) late int reps; @@ -69,7 +69,7 @@ class Log { Log({ this.id, required this.exerciseBaseId, - required this.workoutPlan, + required this.routineId, required this.reps, required this.rir, required this.repetitionUnitId, diff --git a/lib/models/workouts/log.g.dart b/lib/models/routines/log.g.dart similarity index 93% rename from lib/models/workouts/log.g.dart rename to lib/models/routines/log.g.dart index 1986d318..4374d2d2 100644 --- a/lib/models/workouts/log.g.dart +++ b/lib/models/routines/log.g.dart @@ -23,7 +23,7 @@ Log _$LogFromJson(Map json) { return Log( id: json['id'] as int?, exerciseBaseId: json['exercise_base'] as int, - workoutPlan: json['workout'] as int, + routineId: json['workout'] as int, reps: json['reps'] as int, rir: json['rir'] as String?, repetitionUnitId: json['repetition_unit'] as int, @@ -36,7 +36,7 @@ Log _$LogFromJson(Map json) { Map _$LogToJson(Log instance) => { 'id': instance.id, 'exercise_base': instance.exerciseBaseId, - 'workout': instance.workoutPlan, + 'workout': instance.routineId, 'reps': instance.reps, 'rir': instance.rir, 'repetition_unit': instance.repetitionUnitId, diff --git a/lib/models/workouts/repetition_unit.dart b/lib/models/routines/repetition_unit.dart similarity index 100% rename from lib/models/workouts/repetition_unit.dart rename to lib/models/routines/repetition_unit.dart diff --git a/lib/models/workouts/repetition_unit.g.dart b/lib/models/routines/repetition_unit.g.dart similarity index 95% rename from lib/models/workouts/repetition_unit.g.dart rename to lib/models/routines/repetition_unit.g.dart index 33e6a815..115dc338 100644 --- a/lib/models/workouts/repetition_unit.g.dart +++ b/lib/models/routines/repetition_unit.g.dart @@ -17,7 +17,8 @@ RepetitionUnit _$RepetitionUnitFromJson(Map json) { ); } -Map _$RepetitionUnitToJson(RepetitionUnit instance) => { +Map _$RepetitionUnitToJson(RepetitionUnit instance) => + { 'id': instance.id, 'name': instance.name, }; diff --git a/lib/models/workouts/workout_plan.dart b/lib/models/routines/routine.dart similarity index 89% rename from lib/models/workouts/workout_plan.dart rename to lib/models/routines/routine.dart index 3619eda8..7283dbc2 100644 --- a/lib/models/workouts/workout_plan.dart +++ b/lib/models/routines/routine.dart @@ -18,13 +18,13 @@ import 'package:json_annotation/json_annotation.dart'; import 'package:wger/models/exercises/base.dart'; -import 'package:wger/models/workouts/day.dart'; -import 'package:wger/models/workouts/log.dart'; +import 'package:wger/models/routines/day.dart'; +import 'package:wger/models/routines/log.dart'; -part 'workout_plan.g.dart'; +part 'routine.g.dart'; @JsonSerializable() -class WorkoutPlan { +class Routine { @JsonKey(required: true) int? id; @@ -43,7 +43,7 @@ class WorkoutPlan { @JsonKey(includeFromJson: false, includeToJson: false) List logs = []; - WorkoutPlan({ + Routine({ this.id, required this.creationDate, required this.name, @@ -56,16 +56,16 @@ class WorkoutPlan { this.description = description ?? ''; } - WorkoutPlan.empty() { + Routine.empty() { creationDate = DateTime.now(); name = ''; description = ''; } // Boilerplate - factory WorkoutPlan.fromJson(Map json) => _$WorkoutPlanFromJson(json); + factory Routine.fromJson(Map json) => _$RoutineFromJson(json); - Map toJson() => _$WorkoutPlanToJson(this); + Map toJson() => _$RoutineToJson(this); /// Filters the workout logs by exercise and sorts them by date /// diff --git a/lib/models/workouts/workout_plan.g.dart b/lib/models/routines/routine.g.dart similarity index 77% rename from lib/models/workouts/workout_plan.g.dart rename to lib/models/routines/routine.g.dart index ac1d6fa9..2f6c5075 100644 --- a/lib/models/workouts/workout_plan.g.dart +++ b/lib/models/routines/routine.g.dart @@ -1,17 +1,17 @@ // GENERATED CODE - DO NOT MODIFY BY HAND -part of 'workout_plan.dart'; +part of 'routine.dart'; // ************************************************************************** // JsonSerializableGenerator // ************************************************************************** -WorkoutPlan _$WorkoutPlanFromJson(Map json) { +Routine _$RoutineFromJson(Map json) { $checkKeys( json, requiredKeys: const ['id', 'creation_date', 'name', 'description'], ); - return WorkoutPlan( + return Routine( id: json['id'] as int?, creationDate: DateTime.parse(json['creation_date'] as String), name: json['name'] as String, @@ -19,7 +19,7 @@ WorkoutPlan _$WorkoutPlanFromJson(Map json) { ); } -Map _$WorkoutPlanToJson(WorkoutPlan instance) => { +Map _$RoutineToJson(Routine instance) => { 'id': instance.id, 'creation_date': instance.creationDate.toIso8601String(), 'name': instance.name, diff --git a/lib/models/workouts/session.dart b/lib/models/routines/session.dart similarity index 97% rename from lib/models/workouts/session.dart rename to lib/models/routines/session.dart index 1c2aea7b..5c0ee3f8 100644 --- a/lib/models/workouts/session.dart +++ b/lib/models/routines/session.dart @@ -30,7 +30,7 @@ class WorkoutSession { int? id; @JsonKey(required: true, name: 'workout') - late int workoutId; + late int routineId; @JsonKey(required: true, toJson: toDate) late DateTime date; @@ -51,7 +51,7 @@ class WorkoutSession { WorkoutSession.withData({ required this.id, - required this.workoutId, + required this.routineId, required this.date, required this.impression, required this.notes, @@ -66,6 +66,7 @@ class WorkoutSession { // Boilerplate factory WorkoutSession.fromJson(Map json) => _$WorkoutSessionFromJson(json); + Map toJson() => _$WorkoutSessionToJson(this); String? get impressionAsString { diff --git a/lib/models/workouts/session.g.dart b/lib/models/routines/session.g.dart similarity index 80% rename from lib/models/workouts/session.g.dart rename to lib/models/routines/session.g.dart index 79f4fee4..31eabc7b 100644 --- a/lib/models/workouts/session.g.dart +++ b/lib/models/routines/session.g.dart @@ -9,11 +9,18 @@ part of 'session.dart'; WorkoutSession _$WorkoutSessionFromJson(Map json) { $checkKeys( json, - requiredKeys: const ['id', 'workout', 'date', 'impression', 'time_start', 'time_end'], + requiredKeys: const [ + 'id', + 'workout', + 'date', + 'impression', + 'time_start', + 'time_end' + ], ); return WorkoutSession() ..id = json['id'] as int? - ..workoutId = json['workout'] as int + ..routineId = json['workout'] as int ..date = DateTime.parse(json['date'] as String) ..impression = stringToNum(json['impression'] as String?) ..notes = json['notes'] as String? ?? '' @@ -21,9 +28,10 @@ WorkoutSession _$WorkoutSessionFromJson(Map json) { ..timeEnd = stringToTime(json['time_end'] as String?); } -Map _$WorkoutSessionToJson(WorkoutSession instance) => { +Map _$WorkoutSessionToJson(WorkoutSession instance) => + { 'id': instance.id, - 'workout': instance.workoutId, + 'workout': instance.routineId, 'date': toDate(instance.date), 'impression': numToString(instance.impression), 'notes': instance.notes, diff --git a/lib/models/workouts/set.dart b/lib/models/routines/set.dart similarity index 98% rename from lib/models/workouts/set.dart rename to lib/models/routines/set.dart index 9d9838c8..97a69028 100644 --- a/lib/models/workouts/set.dart +++ b/lib/models/routines/set.dart @@ -18,7 +18,7 @@ import 'package:json_annotation/json_annotation.dart'; import 'package:wger/models/exercises/base.dart'; -import 'package:wger/models/workouts/setting.dart'; +import 'package:wger/models/routines/setting.dart'; part 'set.g.dart'; diff --git a/lib/models/workouts/set.g.dart b/lib/models/routines/set.g.dart similarity index 100% rename from lib/models/workouts/set.g.dart rename to lib/models/routines/set.g.dart diff --git a/lib/models/workouts/setting.dart b/lib/models/routines/setting.dart similarity index 96% rename from lib/models/workouts/setting.dart rename to lib/models/routines/setting.dart index e9db2c19..c6bc7b0c 100644 --- a/lib/models/workouts/setting.dart +++ b/lib/models/routines/setting.dart @@ -20,8 +20,8 @@ import 'package:json_annotation/json_annotation.dart'; import 'package:wger/helpers/json.dart'; import 'package:wger/helpers/misc.dart'; import 'package:wger/models/exercises/base.dart'; -import 'package:wger/models/workouts/repetition_unit.dart'; -import 'package:wger/models/workouts/weight_unit.dart'; +import 'package:wger/models/routines/repetition_unit.dart'; +import 'package:wger/models/routines/weight_unit.dart'; part 'setting.g.dart'; diff --git a/lib/models/workouts/setting.g.dart b/lib/models/routines/setting.g.dart similarity index 100% rename from lib/models/workouts/setting.g.dart rename to lib/models/routines/setting.g.dart diff --git a/lib/models/workouts/weight_unit.dart b/lib/models/routines/weight_unit.dart similarity index 100% rename from lib/models/workouts/weight_unit.dart rename to lib/models/routines/weight_unit.dart diff --git a/lib/models/workouts/weight_unit.g.dart b/lib/models/routines/weight_unit.g.dart similarity index 86% rename from lib/models/workouts/weight_unit.g.dart rename to lib/models/routines/weight_unit.g.dart index 6f2b9607..74e1f0cf 100644 --- a/lib/models/workouts/weight_unit.g.dart +++ b/lib/models/routines/weight_unit.g.dart @@ -17,7 +17,8 @@ WeightUnit _$WeightUnitFromJson(Map json) { ); } -Map _$WeightUnitToJson(WeightUnit instance) => { +Map _$WeightUnitToJson(WeightUnit instance) => + { 'id': instance.id, 'name': instance.name, }; diff --git a/lib/providers/workout_plans.dart b/lib/providers/routine.dart similarity index 74% rename from lib/providers/workout_plans.dart rename to lib/providers/routine.dart index 66446885..0740612e 100644 --- a/lib/providers/workout_plans.dart +++ b/lib/providers/routine.dart @@ -18,7 +18,6 @@ import 'dart:convert'; import 'dart:developer' as dev; -import 'dart:developer'; import 'package:flutter/material.dart'; import 'package:shared_preferences/shared_preferences.dart'; @@ -26,19 +25,19 @@ import 'package:wger/exceptions/http_exception.dart'; import 'package:wger/helpers/consts.dart'; import 'package:wger/models/exercises/base.dart'; import 'package:wger/models/exercises/translation.dart'; -import 'package:wger/models/workouts/day.dart'; -import 'package:wger/models/workouts/log.dart'; -import 'package:wger/models/workouts/repetition_unit.dart'; -import 'package:wger/models/workouts/session.dart'; -import 'package:wger/models/workouts/set.dart'; -import 'package:wger/models/workouts/setting.dart'; -import 'package:wger/models/workouts/weight_unit.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; +import 'package:wger/models/routines/day.dart'; +import 'package:wger/models/routines/log.dart'; +import 'package:wger/models/routines/repetition_unit.dart'; +import 'package:wger/models/routines/routine.dart'; +import 'package:wger/models/routines/session.dart'; +import 'package:wger/models/routines/set.dart'; +import 'package:wger/models/routines/setting.dart'; +import 'package:wger/models/routines/weight_unit.dart'; import 'package:wger/providers/base_provider.dart'; import 'package:wger/providers/exercises.dart'; -class WorkoutPlansProvider with ChangeNotifier { - static const _workoutPlansUrlPath = 'workout'; +class RoutineProvider with ChangeNotifier { + static const _routinesUrlPath = 'workout'; static const _daysUrlPath = 'day'; static const _setsUrlPath = 'set'; static const _settingsUrlPath = 'setting'; @@ -47,19 +46,19 @@ class WorkoutPlansProvider with ChangeNotifier { static const _weightUnitUrlPath = 'setting-weightunit'; static const _repetitionUnitUrlPath = 'setting-repetitionunit'; - WorkoutPlan? _currentPlan; + Routine? _currentRoutine; final ExercisesProvider _exercises; final WgerBaseProvider baseProvider; - List _workoutPlans = []; + List _routines = []; List _weightUnits = []; List _repetitionUnit = []; - WorkoutPlansProvider(this.baseProvider, ExercisesProvider exercises, List entries) + RoutineProvider(this.baseProvider, ExercisesProvider exercises, List entries) : _exercises = exercises, - _workoutPlans = entries; + _routines = entries; - List get items { - return [..._workoutPlans]; + List get items { + return [..._routines]; } List get weightUnits { @@ -68,8 +67,8 @@ class WorkoutPlansProvider with ChangeNotifier { /// Clears all lists void clear() { - _currentPlan = null; - _workoutPlans = []; + _currentRoutine = null; + _routines = []; _weightUnits = []; _repetitionUnit = []; } @@ -88,93 +87,94 @@ class WorkoutPlansProvider with ChangeNotifier { return _repetitionUnit.firstWhere((element) => element.id == REP_UNIT_REPETITIONS); } - List getPlans() { - return _workoutPlans; + List getPlans() { + return _routines; } - WorkoutPlan findById(int id) { - return _workoutPlans.firstWhere((workoutPlan) => workoutPlan.id == id); + Routine findById(int id) { + return _routines.firstWhere((workoutPlan) => workoutPlan.id == id); } int findIndexById(int id) { - return _workoutPlans.indexWhere((workoutPlan) => workoutPlan.id == id); + return _routines.indexWhere((workoutPlan) => workoutPlan.id == id); } - /// Set the currently "active" workout plan + /// Set the currently "active" routine void setCurrentPlan(int id) { - _currentPlan = findById(id); + _currentRoutine = findById(id); } - /// Returns the currently "active" workout plan - WorkoutPlan? get currentPlan { - return _currentPlan; + /// Returns the currently "active" routine + Routine? get currentRoutine { + return _currentRoutine; } - /// Reset the currently "active" workout plan to null - void resetCurrentPlan() { - _currentPlan = null; + /// Reset the currently "active" routine to null + void resetCurrentRoutine() { + _currentRoutine = null; } - /// Returns the current active workout plan. At the moment this is just + /// Returns the current active routine. At the moment this is just /// the latest, but this might change in the future. - WorkoutPlan? get activePlan { - if (_workoutPlans.isNotEmpty) { - return _workoutPlans.first; + Routine? get activeRoutine { + if (_routines.isNotEmpty) { + return _routines.first; } + return null; } /* - * Workouts + * Routines */ - /// Fetches and sets all workout plans fully, i.e. with all corresponding child + /// Fetches and sets all routines fully, i.e. with all corresponding child /// attributes - Future fetchAndSetAllPlansFull() async { + Future fetchAndSetAllRoutinesFull() async { final data = await baseProvider.fetch( baseProvider.makeUrl( - _workoutPlansUrlPath, + _routinesUrlPath, query: {'ordering': '-creation_date', 'limit': '1000'}, ), ); for (final entry in data['results']) { - await fetchAndSetWorkoutPlanFull(entry['id']); + await fetchAndSetRoutineFull(entry['id']); } notifyListeners(); } - /// Fetches all workout plan sparsely, i.e. only with the data on the plan + /// Fetches all routines sparsely, i.e. only with the data on the routine /// object itself and no child attributes - Future fetchAndSetAllPlansSparse() async { + Future fetchAndSetAllRoutinesSparse() async { final data = await baseProvider.fetch( - baseProvider.makeUrl(_workoutPlansUrlPath, query: {'limit': '1000'}), + baseProvider.makeUrl(_routinesUrlPath, query: {'limit': '1000'}), ); - _workoutPlans = []; + _routines = []; for (final workoutPlanData in data['results']) { - final plan = WorkoutPlan.fromJson(workoutPlanData); - _workoutPlans.add(plan); + final plan = Routine.fromJson(workoutPlanData); + _routines.add(plan); } - _workoutPlans.sort((a, b) => b.creationDate.compareTo(a.creationDate)); + _routines.sort((a, b) => b.creationDate.compareTo(a.creationDate)); notifyListeners(); } - /// Fetches a workout plan sparsely, i.e. only with the data on the plan + /// Fetches a routine sparsely, i.e. only with the data on the plan /// object itself and no child attributes - Future fetchAndSetPlanSparse(int planId) async { + Future fetchAndSetRoutineSparse(int planId) async { final fullPlanData = await baseProvider.fetch( - baseProvider.makeUrl(_workoutPlansUrlPath, id: planId), + baseProvider.makeUrl(_routinesUrlPath, id: planId), ); - final plan = WorkoutPlan.fromJson(fullPlanData); - _workoutPlans.add(plan); - _workoutPlans.sort((a, b) => b.creationDate.compareTo(a.creationDate)); + final plan = Routine.fromJson(fullPlanData); + _routines.add(plan); + _routines.sort((a, b) => b.creationDate.compareTo(a.creationDate)); notifyListeners(); return plan; } - /// Fetches a workout plan fully, i.e. with all corresponding child attributes - Future fetchAndSetWorkoutPlanFull(int workoutId) async { + /// Fetches a routine fully, i.e. with all corresponding child attributes + Future fetchAndSetRoutineFull(int routineId) async { // Load a list of all settings so that we can search through it // // This is a bit ugly, but saves us sending lots of requests later on @@ -182,17 +182,17 @@ class WorkoutPlansProvider with ChangeNotifier { baseProvider.makeUrl(_settingsUrlPath, query: {'limit': '1000'}), ); - WorkoutPlan plan; + Routine routine; try { - plan = findById(workoutId); + routine = findById(routineId); } on StateError { - plan = await fetchAndSetPlanSparse(workoutId); + routine = await fetchAndSetRoutineSparse(routineId); } // Days final List days = []; final daysData = await baseProvider.fetch( - baseProvider.makeUrl(_daysUrlPath, query: {'training': plan.id.toString()}), + baseProvider.makeUrl(_daysUrlPath, query: {'training': routine.id.toString()}), ); for (final dayEntry in daysData['results']) { final day = Day.fromJson(dayEntry); @@ -234,14 +234,14 @@ class WorkoutPlansProvider with ChangeNotifier { day.sets = sets; days.add(day); } - plan.days = days; + routine.days = days; // Logs - plan.logs = []; + routine.logs = []; final logData = await baseProvider.fetchPaginated(baseProvider.makeUrl( _logsUrlPath, - query: {'workout': workoutId.toString(), 'limit': '100'}, + query: {'workout': routineId.toString(), 'limit': '100'}, )); for (final logEntry in logData) { try { @@ -249,7 +249,7 @@ class WorkoutPlansProvider with ChangeNotifier { log.weightUnit = _weightUnits.firstWhere((e) => e.id == log.weightUnitId); log.repetitionUnit = _repetitionUnit.firstWhere((e) => e.id == log.weightUnitId); log.exerciseBase = await _exercises.fetchAndSetExerciseBase(log.exerciseBaseId); - plan.logs.add(log); + routine.logs.add(log); } catch (e) { dev.log('fire! fire!'); dev.log(e.toString()); @@ -258,44 +258,43 @@ class WorkoutPlansProvider with ChangeNotifier { // ... and done notifyListeners(); - return plan; + return routine; } - Future addWorkout(WorkoutPlan workout) async { - final data = - await baseProvider.post(workout.toJson(), baseProvider.makeUrl(_workoutPlansUrlPath)); - final plan = WorkoutPlan.fromJson(data); - _workoutPlans.insert(0, plan); + Future addRoutine(Routine routine) async { + final data = await baseProvider.post(routine.toJson(), baseProvider.makeUrl(_routinesUrlPath)); + final plan = Routine.fromJson(data); + _routines.insert(0, plan); notifyListeners(); return plan; } - Future editWorkout(WorkoutPlan workout) async { + Future editRoutine(Routine routine) async { await baseProvider.patch( - workout.toJson(), baseProvider.makeUrl(_workoutPlansUrlPath, id: workout.id)); + routine.toJson(), baseProvider.makeUrl(_routinesUrlPath, id: routine.id)); notifyListeners(); } - Future deleteWorkout(int id) async { - final existingWorkoutIndex = _workoutPlans.indexWhere((element) => element.id == id); - final existingWorkout = _workoutPlans[existingWorkoutIndex]; - _workoutPlans.removeAt(existingWorkoutIndex); + Future deleteRoutine(int id) async { + final existingRoutineIndex = _routines.indexWhere((element) => element.id == id); + final existingRoutine = _routines[existingRoutineIndex]; + _routines.removeAt(existingRoutineIndex); notifyListeners(); - final response = await baseProvider.deleteRequest(_workoutPlansUrlPath, id); + final response = await baseProvider.deleteRequest(_routinesUrlPath, id); if (response.statusCode >= 400) { - _workoutPlans.insert(existingWorkoutIndex, existingWorkout); + _routines.insert(existingRoutineIndex, existingRoutine); notifyListeners(); throw WgerHttpException(response.body); } } - Future> fetchLogData(WorkoutPlan workout, ExerciseBase base) async { + Future> fetchLogData(Routine routine, ExerciseBase base) async { final data = await baseProvider.fetch( baseProvider.makeUrl( - _workoutPlansUrlPath, - id: workout.id, + _routinesUrlPath, + id: routine.id, objectMethod: 'log_data', query: {'id': base.id.toString()}, ), @@ -355,15 +354,15 @@ class WorkoutPlansProvider with ChangeNotifier { /* * Days */ - Future addDay(Day day, WorkoutPlan workout) async { + Future addDay(Day day, Routine routine) async { /* * Saves a new day instance to the DB and adds it to the given workout */ - day.workoutId = workout.id!; + day.routineId = routine.id!; final data = await baseProvider.post(day.toJson(), baseProvider.makeUrl(_daysUrlPath)); day = Day.fromJson(data); day.sets = []; - workout.days.insert(0, day); + routine.days.insert(0, day); notifyListeners(); return day; } @@ -375,7 +374,7 @@ class WorkoutPlansProvider with ChangeNotifier { Future deleteDay(Day day) async { await baseProvider.deleteRequest(_daysUrlPath, day.id!); - for (final workout in _workoutPlans) { + for (final workout in _routines) { workout.days.removeWhere((element) => element.id == day.id); } notifyListeners(); @@ -456,7 +455,7 @@ class WorkoutPlansProvider with ChangeNotifier { Future deleteSet(Set workoutSet) async { await baseProvider.deleteRequest(_setsUrlPath, workoutSet.id!); - for (final workout in _workoutPlans) { + for (final workout in _routines) { for (final day in workout.days) { day.sets.removeWhere((element) => element.id == workoutSet.id); } @@ -506,7 +505,7 @@ class WorkoutPlansProvider with ChangeNotifier { log.repetitionUnit = _repetitionUnit.firstWhere((e) => e.id == log.weightUnitId); log.exerciseBase = await _exercises.fetchAndSetExerciseBase(log.exerciseBaseId); - final plan = findById(log.workoutPlan); + final plan = findById(log.routineId); plan.logs.add(log); notifyListeners(); return newLog; @@ -519,7 +518,7 @@ class WorkoutPlansProvider with ChangeNotifier { Future deleteLog(Log log) async { await baseProvider.deleteRequest(_logsUrlPath, log.id!); - for (final workout in _workoutPlans) { + for (final workout in _routines) { workout.logs.removeWhere((element) => element.id == log.id); } notifyListeners(); diff --git a/lib/screens/gym_mode.dart b/lib/screens/gym_mode.dart index ba42c602..64e4c4c9 100644 --- a/lib/screens/gym_mode.dart +++ b/lib/screens/gym_mode.dart @@ -18,9 +18,9 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; -import 'package:wger/models/workouts/day.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/widgets/workouts/gym_mode.dart'; +import 'package:wger/models/routines/day.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/widgets/routines/gym_mode.dart'; class GymModeScreen extends StatelessWidget { static const routeName = '/gym-mode'; @@ -32,7 +32,7 @@ class GymModeScreen extends StatelessWidget { return Scaffold( backgroundColor: Colors.white, body: SafeArea( - child: Consumer( + child: Consumer( builder: (context, value, child) => GymMode(_day), ), ), diff --git a/lib/screens/home_tabs_screen.dart b/lib/screens/home_tabs_screen.dart index 87afd2e2..c317beba 100644 --- a/lib/screens/home_tabs_screen.dart +++ b/lib/screens/home_tabs_screen.dart @@ -29,13 +29,13 @@ import 'package:wger/providers/exercises.dart'; import 'package:wger/providers/gallery.dart'; import 'package:wger/providers/measurement.dart'; import 'package:wger/providers/nutrition.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/providers/user.dart'; -import 'package:wger/providers/workout_plans.dart'; import 'package:wger/screens/dashboard.dart'; import 'package:wger/screens/gallery_screen.dart'; import 'package:wger/screens/nutritional_plans_screen.dart'; +import 'package:wger/screens/routines_screen.dart'; import 'package:wger/screens/weight_screen.dart'; -import 'package:wger/screens/workout_plans_screen.dart'; import 'package:wger/theme/theme.dart'; class HomeTabsScreen extends StatefulWidget { @@ -64,7 +64,7 @@ class _HomeTabsScreenState extends State with SingleTickerProvid final _screenList = [ DashboardScreen(), - WorkoutPlansScreen(), + RoutinesScreen(), NutritionScreen(), WeightScreen(), const GalleryScreen(), @@ -75,7 +75,7 @@ class _HomeTabsScreenState extends State with SingleTickerProvid final authProvider = context.read(); if (!authProvider.dataInit) { - final workoutPlansProvider = context.read(); + final workoutPlansProvider = context.read(); final nutritionPlansProvider = context.read(); final exercisesProvider = context.read(); final galleryProvider = context.read(); @@ -103,7 +103,7 @@ class _HomeTabsScreenState extends State with SingleTickerProvid await Future.wait([ galleryProvider.fetchAndSetGallery(), nutritionPlansProvider.fetchAndSetAllPlansSparse(), - workoutPlansProvider.fetchAndSetAllPlansSparse(), + workoutPlansProvider.fetchAndSetAllRoutinesSparse(), weightProvider.fetchAndSetEntries(), measurementProvider.fetchAndSetAllCategoriesAndEntries(), ]); @@ -117,9 +117,9 @@ class _HomeTabsScreenState extends State with SingleTickerProvid // Current workout plan log('Loading current workout plan'); - if (workoutPlansProvider.activePlan != null) { - final planId = workoutPlansProvider.activePlan!.id!; - await workoutPlansProvider.fetchAndSetWorkoutPlanFull(planId); + if (workoutPlansProvider.activeRoutine != null) { + final planId = workoutPlansProvider.activeRoutine!.id!; + await workoutPlansProvider.fetchAndSetRoutineFull(planId); workoutPlansProvider.setCurrentPlan(planId); } } diff --git a/lib/screens/workout_plan_screen.dart b/lib/screens/routine_screen.dart similarity index 64% rename from lib/screens/workout_plan_screen.dart rename to lib/screens/routine_screen.dart index c3c3d38a..b062f2e4 100644 --- a/lib/screens/workout_plan_screen.dart +++ b/lib/screens/routine_screen.dart @@ -19,57 +19,56 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:provider/provider.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/models/routines/routine.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/screens/form_screen.dart'; -import 'package:wger/widgets/workouts/forms.dart'; -import 'package:wger/widgets/workouts/workout_logs.dart'; -import 'package:wger/widgets/workouts/workout_plan_detail.dart'; +import 'package:wger/widgets/routines/forms.dart'; +import 'package:wger/widgets/routines/routine_detail.dart'; +import 'package:wger/widgets/routines/workout_logs.dart'; -enum WorkoutScreenMode { - workout, +enum RoutineScreenMode { + routine, log, } -enum WorkoutOptions { +enum RoutineOptions { edit, delete, } -class WorkoutPlanScreen extends StatefulWidget { - static const routeName = '/workout-plan-detail'; +class RoutineScreen extends StatefulWidget { + static const routeName = '/routine-detail'; @override - _WorkoutPlanScreenState createState() => _WorkoutPlanScreenState(); + _RoutineScreenState createState() => _RoutineScreenState(); } -class _WorkoutPlanScreenState extends State { - WorkoutScreenMode _mode = WorkoutScreenMode.workout; +class _RoutineScreenState extends State { + RoutineScreenMode _mode = RoutineScreenMode.routine; - void _changeMode(WorkoutScreenMode newMode) { + void _changeMode(RoutineScreenMode newMode) { setState(() { _mode = newMode; }); } - Future _loadFullWorkout(BuildContext context, int planId) { - return Provider.of(context, listen: false) - .fetchAndSetWorkoutPlanFull(planId); + Future _loadFullRoutine(BuildContext context, int planId) { + return Provider.of(context, listen: false).fetchAndSetRoutineFull(planId); } - Widget getBody(WorkoutPlan plan) { + Widget getBody(Routine plan) { switch (_mode) { - case WorkoutScreenMode.workout: - return WorkoutPlanDetail(plan, _changeMode); + case RoutineScreenMode.routine: + return RoutineDetail(plan, _changeMode); - case WorkoutScreenMode.log: + case RoutineScreenMode.log: return WorkoutLogs(plan, _changeMode); } } @override Widget build(BuildContext context) { - final workoutPlan = ModalRoute.of(context)!.settings.arguments as WorkoutPlan; + final workoutPlan = ModalRoute.of(context)!.settings.arguments as Routine; return Scaffold( body: CustomScrollView( @@ -85,24 +84,24 @@ class _WorkoutPlanScreenState extends State { ), ), actions: [ - PopupMenuButton( + PopupMenuButton( icon: const Icon(Icons.more_vert), onSelected: (value) { // Edit - if (value == WorkoutOptions.edit) { + if (value == RoutineOptions.edit) { Navigator.pushNamed( context, FormScreen.routeName, arguments: FormScreenArguments( AppLocalizations.of(context).edit, - WorkoutForm(workoutPlan), + RoutineForm(workoutPlan), ), ); // Delete - } else if (value == WorkoutOptions.delete) { - Provider.of(context, listen: false) - .deleteWorkout(workoutPlan.id!); + } else if (value == RoutineOptions.delete) { + Provider.of(context, listen: false) + .deleteRoutine(workoutPlan.id!); Navigator.of(context).pop(); // Toggle Mode @@ -110,13 +109,13 @@ class _WorkoutPlanScreenState extends State { }, itemBuilder: (BuildContext context) { return [ - PopupMenuItem( - value: WorkoutOptions.edit, + PopupMenuItem( + value: RoutineOptions.edit, child: Text(AppLocalizations.of(context).edit), ), const PopupMenuDivider(), - PopupMenuItem( - value: WorkoutOptions.delete, + PopupMenuItem( + value: RoutineOptions.delete, child: Text(AppLocalizations.of(context).delete), ), ]; @@ -125,8 +124,8 @@ class _WorkoutPlanScreenState extends State { ], ), FutureBuilder( - future: _loadFullWorkout(context, workoutPlan.id!), - builder: (context, AsyncSnapshot snapshot) => SliverList( + future: _loadFullRoutine(context, workoutPlan.id!), + builder: (context, AsyncSnapshot snapshot) => SliverList( delegate: SliverChildListDelegate( [ if (snapshot.connectionState == ConnectionState.waiting) @@ -137,7 +136,7 @@ class _WorkoutPlanScreenState extends State { ), ) else - Consumer( + Consumer( builder: (context, value, child) => getBody(workoutPlan), ), ], diff --git a/lib/screens/workout_plans_screen.dart b/lib/screens/routines_screen.dart similarity index 72% rename from lib/screens/workout_plans_screen.dart rename to lib/screens/routines_screen.dart index 4d3dbfdf..5dde40b3 100644 --- a/lib/screens/workout_plans_screen.dart +++ b/lib/screens/routines_screen.dart @@ -19,15 +19,15 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:provider/provider.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/models/routines/routine.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/screens/form_screen.dart'; -import 'package:wger/widgets/workouts/app_bar.dart'; -import 'package:wger/widgets/workouts/forms.dart'; -import 'package:wger/widgets/workouts/workout_plans_list.dart'; +import 'package:wger/widgets/routines/app_bar.dart'; +import 'package:wger/widgets/routines/forms.dart'; +import 'package:wger/widgets/routines/routines_list.dart'; -class WorkoutPlansScreen extends StatelessWidget { - static const routeName = '/workout-plans-list'; +class RoutinesScreen extends StatelessWidget { + static const routeName = '/routine-list'; @override Widget build(BuildContext context) { @@ -41,13 +41,13 @@ class WorkoutPlansScreen extends StatelessWidget { FormScreen.routeName, arguments: FormScreenArguments( AppLocalizations.of(context).newWorkout, - WorkoutForm(WorkoutPlan.empty()), + RoutineForm(Routine.empty()), ), ); }, ), - body: Consumer( - builder: (context, workoutProvider, child) => WorkoutPlansList(workoutProvider), + body: Consumer( + builder: (context, workoutProvider, child) => RoutinesList(workoutProvider), ), ); } diff --git a/lib/widgets/core/app_bar.dart b/lib/widgets/core/app_bar.dart index 6e420c79..7401d559 100644 --- a/lib/widgets/core/app_bar.dart +++ b/lib/widgets/core/app_bar.dart @@ -23,8 +23,8 @@ import 'package:wger/providers/auth.dart'; import 'package:wger/providers/body_weight.dart'; import 'package:wger/providers/gallery.dart'; import 'package:wger/providers/nutrition.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/providers/user.dart'; -import 'package:wger/providers/workout_plans.dart'; import 'package:wger/screens/form_screen.dart'; import 'package:wger/widgets/core/about.dart'; import 'package:wger/widgets/user/forms.dart'; @@ -88,7 +88,7 @@ class MainAppBar extends StatelessWidget with PreferredSizeWidget { title: Text(AppLocalizations.of(context).logout), onTap: () { context.read().logout(); - context.read().clear(); + context.read().clear(); context.read().clear(); context.read().clear(); context.read().clear(); diff --git a/lib/widgets/dashboard/calendar.dart b/lib/widgets/dashboard/calendar.dart index dea7d720..dd636457 100644 --- a/lib/widgets/dashboard/calendar.dart +++ b/lib/widgets/dashboard/calendar.dart @@ -17,18 +17,17 @@ */ import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:provider/provider.dart'; import 'package:table_calendar/table_calendar.dart'; import 'package:wger/helpers/consts.dart'; import 'package:wger/helpers/json.dart'; import 'package:wger/helpers/misc.dart'; -import 'package:wger/models/workouts/session.dart'; +import 'package:wger/models/routines/session.dart'; import 'package:wger/providers/body_weight.dart'; import 'package:wger/providers/measurement.dart'; import 'package:wger/providers/nutrition.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/theme/theme.dart'; /// Types of events @@ -115,7 +114,7 @@ class _DashboardCalendarWidgetState extends State } // Process workout sessions - final WorkoutPlansProvider plans = Provider.of(context, listen: false); + final RoutineProvider plans = Provider.of(context, listen: false); await plans.fetchSessionData().then((entries) { for (final entry in entries['results']) { final session = WorkoutSession.fromJson(entry); diff --git a/lib/widgets/dashboard/widgets.dart b/lib/widgets/dashboard/widgets.dart index 441eda16..346e2f0d 100644 --- a/lib/widgets/dashboard/widgets.dart +++ b/lib/widgets/dashboard/widgets.dart @@ -18,23 +18,22 @@ import 'package:carousel_slider/carousel_slider.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:intl/intl.dart'; import 'package:provider/provider.dart'; import 'package:wger/models/nutrition/nutritional_plan.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; +import 'package:wger/models/routines/routine.dart'; import 'package:wger/providers/body_weight.dart'; import 'package:wger/providers/measurement.dart'; import 'package:wger/providers/nutrition.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/screens/form_screen.dart'; import 'package:wger/screens/gym_mode.dart'; import 'package:wger/screens/measurement_categories_screen.dart'; import 'package:wger/screens/nutritional_plan_screen.dart'; +import 'package:wger/screens/routine_screen.dart'; import 'package:wger/screens/weight_screen.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; import 'package:wger/theme/theme.dart'; import 'package:wger/widgets/core/charts.dart'; import 'package:wger/widgets/core/core.dart'; @@ -42,8 +41,8 @@ import 'package:wger/widgets/measurements/categories_card.dart'; import 'package:wger/widgets/measurements/forms.dart'; import 'package:wger/widgets/nutrition/charts.dart'; import 'package:wger/widgets/nutrition/forms.dart'; +import 'package:wger/widgets/routines/forms.dart'; import 'package:wger/widgets/weight/forms.dart'; -import 'package:wger/widgets/workouts/forms.dart'; class DashboardNutritionWidget extends StatefulWidget { @override @@ -432,13 +431,13 @@ class _DashboardWorkoutWidgetState extends State { var _showDetail = false; bool _hasContent = false; - WorkoutPlan? _workoutPlan; + Routine? _routine; @override void initState() { super.initState(); - _workoutPlan = context.read().activePlan; - _hasContent = _workoutPlan != null; + _routine = context.read().activeRoutine; + _hasContent = _routine != null; } Widget getTrailing() { @@ -456,7 +455,7 @@ class _DashboardWorkoutWidgetState extends State { return out; } - for (final day in _workoutPlan!.days) { + for (final day in _routine!.days) { out.add(SizedBox( width: double.infinity, child: Row( @@ -527,13 +526,13 @@ class _DashboardWorkoutWidgetState extends State { children: [ ListTile( title: Text( - _hasContent ? _workoutPlan!.name : AppLocalizations.of(context).labelWorkoutPlan, + _hasContent ? _routine!.name : AppLocalizations.of(context).labelWorkoutPlan, style: Theme.of(context).textTheme.headline4, ), subtitle: Text( _hasContent ? DateFormat.yMd(Localizations.localeOf(context).languageCode) - .format(_workoutPlan!.creationDate) + .format(_routine!.creationDate) : '', ), leading: const Icon( @@ -560,7 +559,7 @@ class _DashboardWorkoutWidgetState extends State { NothingFound( AppLocalizations.of(context).noWorkoutPlans, AppLocalizations.of(context).newWorkout, - WorkoutForm(WorkoutPlan.empty()), + RoutineForm(Routine.empty()), ), if (_hasContent) Row( @@ -569,8 +568,7 @@ class _DashboardWorkoutWidgetState extends State { TextButton( child: Text(AppLocalizations.of(context).goToDetailPage), onPressed: () { - Navigator.of(context) - .pushNamed(WorkoutPlanScreen.routeName, arguments: _workoutPlan); + Navigator.of(context).pushNamed(RoutineScreen.routeName, arguments: _routine); }, ), ], diff --git a/lib/widgets/workouts/app_bar.dart b/lib/widgets/routines/app_bar.dart similarity index 100% rename from lib/widgets/workouts/app_bar.dart rename to lib/widgets/routines/app_bar.dart diff --git a/lib/widgets/workouts/charts.dart b/lib/widgets/routines/charts.dart similarity index 100% rename from lib/widgets/workouts/charts.dart rename to lib/widgets/routines/charts.dart diff --git a/lib/widgets/workouts/day.dart b/lib/widgets/routines/day.dart similarity index 92% rename from lib/widgets/workouts/day.dart rename to lib/widgets/routines/day.dart index 3de5af75..09a22337 100644 --- a/lib/widgets/workouts/day.dart +++ b/lib/widgets/routines/day.dart @@ -20,17 +20,17 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:provider/provider.dart'; import 'package:wger/helpers/consts.dart'; -import 'package:wger/models/workouts/day.dart'; -import 'package:wger/models/workouts/set.dart'; -import 'package:wger/models/workouts/setting.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/models/routines/day.dart'; +import 'package:wger/models/routines/set.dart'; +import 'package:wger/models/routines/setting.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/screens/form_screen.dart'; import 'package:wger/screens/gym_mode.dart'; import 'package:wger/theme/theme.dart'; import 'package:wger/widgets/core/core.dart'; import 'package:wger/widgets/exercises/exercises.dart'; import 'package:wger/widgets/exercises/images.dart'; -import 'package:wger/widgets/workouts/forms.dart'; +import 'package:wger/widgets/routines/forms.dart'; class SettingWidget extends StatelessWidget { final Set set; @@ -87,16 +87,16 @@ class SettingWidget extends StatelessWidget { } } -class WorkoutDayWidget extends StatefulWidget { +class RoutineDayWidget extends StatefulWidget { final Day _day; - const WorkoutDayWidget(this._day); + const RoutineDayWidget(this._day); @override - _WorkoutDayWidgetState createState() => _WorkoutDayWidgetState(); + _RoutineDayWidgetState createState() => _RoutineDayWidgetState(); } -class _WorkoutDayWidgetState extends State { +class _RoutineDayWidgetState extends State { bool _expanded = false; late List _sets; @@ -124,7 +124,7 @@ class _WorkoutDayWidgetState extends State { icon: const Icon(Icons.delete), iconSize: ICON_SIZE_SMALL, onPressed: () { - Provider.of(context, listen: false).deleteSet(set); + Provider.of(context, listen: false).deleteSet(set); }, ), Expanded( @@ -177,7 +177,7 @@ class _WorkoutDayWidgetState extends State { children: [ IconButton( onPressed: () { - Provider.of(context, listen: false).deleteDay( + Provider.of(context, listen: false).deleteDay( widget._day, ); }, @@ -208,8 +208,8 @@ class _WorkoutDayWidgetState extends State { arguments: FormScreenArguments( AppLocalizations.of(context).edit, DayFormWidget( - Provider.of(context, listen: false) - .findById(widget._day.workoutId), + Provider.of(context, listen: false) + .findById(widget._day.routineId), widget._day), hasListView: true, ), @@ -235,7 +235,7 @@ class _WorkoutDayWidgetState extends State { setState(() { _sets.insert(_newIndex, _sets.removeAt(_oldIndex)); }); - _sets = await Provider.of(context, listen: false) + _sets = await Provider.of(context, listen: false) .reorderSets(_sets, _startIndex); }, children: [ diff --git a/lib/widgets/workouts/forms.dart b/lib/widgets/routines/forms.dart similarity index 93% rename from lib/widgets/workouts/forms.dart rename to lib/widgets/routines/forms.dart index 0a13b1ce..d9dffd10 100644 --- a/lib/widgets/workouts/forms.dart +++ b/lib/widgets/routines/forms.dart @@ -22,32 +22,32 @@ import 'package:flutter_typeahead/flutter_typeahead.dart'; import 'package:provider/provider.dart'; import 'package:wger/helpers/consts.dart'; import 'package:wger/models/exercises/base.dart'; -import 'package:wger/models/workouts/day.dart'; -import 'package:wger/models/workouts/repetition_unit.dart'; -import 'package:wger/models/workouts/set.dart'; -import 'package:wger/models/workouts/setting.dart'; -import 'package:wger/models/workouts/weight_unit.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; +import 'package:wger/models/routines/day.dart'; +import 'package:wger/models/routines/repetition_unit.dart'; +import 'package:wger/models/routines/routine.dart'; +import 'package:wger/models/routines/set.dart'; +import 'package:wger/models/routines/setting.dart'; +import 'package:wger/models/routines/weight_unit.dart'; import 'package:wger/providers/exercises.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/screens/routine_screen.dart'; import 'package:wger/theme/theme.dart'; import 'package:wger/widgets/exercises/images.dart'; -class WorkoutForm extends StatelessWidget { - final WorkoutPlan _plan; +class RoutineForm extends StatelessWidget { + final Routine _routine; final _form = GlobalKey(); - WorkoutForm(this._plan); + RoutineForm(this._routine); - final TextEditingController workoutNameController = TextEditingController(); - final TextEditingController workoutDescriptionController = TextEditingController(); + final TextEditingController routineNameController = TextEditingController(); + final TextEditingController routineDescriptionController = TextEditingController(); @override Widget build(BuildContext context) { - if (_plan.id != null) { - workoutNameController.text = _plan.name; - workoutDescriptionController.text = _plan.description; + if (_routine.id != null) { + routineNameController.text = _routine.name; + routineDescriptionController.text = _routine.description; } return Form( @@ -57,7 +57,7 @@ class WorkoutForm extends StatelessWidget { TextFormField( key: const Key('field-name'), decoration: InputDecoration(labelText: AppLocalizations.of(context).name), - controller: workoutNameController, + controller: routineNameController, validator: (value) { const minLength = 1; const maxLength = 100; @@ -68,7 +68,7 @@ class WorkoutForm extends StatelessWidget { }, onFieldSubmitted: (_) {}, onSaved: (newValue) { - _plan.name = newValue!; + _routine.name = newValue!; }, ), TextFormField( @@ -76,7 +76,7 @@ class WorkoutForm extends StatelessWidget { decoration: InputDecoration(labelText: AppLocalizations.of(context).description), minLines: 3, maxLines: 10, - controller: workoutDescriptionController, + controller: routineDescriptionController, validator: (value) { const minLength = 0; const maxLength = 1000; @@ -87,7 +87,7 @@ class WorkoutForm extends StatelessWidget { }, onFieldSubmitted: (_) {}, onSaved: (newValue) { - _plan.description = newValue!; + _routine.description = newValue!; }, ), ElevatedButton( @@ -102,15 +102,14 @@ class WorkoutForm extends StatelessWidget { _form.currentState!.save(); // Save to DB - if (_plan.id != null) { - await Provider.of(context, listen: false).editWorkout(_plan); + if (_routine.id != null) { + await Provider.of(context, listen: false).editRoutine(_routine); Navigator.of(context).pop(); } else { - final WorkoutPlan newPlan = - await Provider.of(context, listen: false) - .addWorkout(_plan); + final Routine newPlan = + await Provider.of(context, listen: false).addRoutine(_routine); Navigator.of(context).pushReplacementNamed( - WorkoutPlanScreen.routeName, + RoutineScreen.routeName, arguments: newPlan, ); } @@ -156,13 +155,13 @@ class _DayCheckboxState extends State { } class DayFormWidget extends StatefulWidget { - final WorkoutPlan workout; + final Routine routine; final dayController = TextEditingController(); late final Day _day; - DayFormWidget(this.workout, [Day? day]) { + DayFormWidget(this.routine, [Day? day]) { _day = day ?? Day(); - _day.workoutId = workout.id!; + _day.routineId = routine.id!; if (_day.id != null) { dayController.text = day!.description; } @@ -218,12 +217,12 @@ class _DayFormWidgetState extends State { try { if (widget._day.id == null) { - Provider.of(context, listen: false).addDay( + Provider.of(context, listen: false).addDay( widget._day, - widget.workout, + widget.routine, ); } else { - Provider.of(context, listen: false).editDay( + Provider.of(context, listen: false).editDay( widget._day, ); } @@ -293,7 +292,7 @@ class _SetFormWidgetState extends State { /// Adds settings to the set void addSettings() { - final workoutProvider = context.read(); + final workoutProvider = context.read(); widget._set.settings = []; int order = 0; @@ -517,8 +516,7 @@ class _SetFormWidgetState extends State { } _formKey.currentState!.save(); - final workoutProvider = - Provider.of(context, listen: false); + final workoutProvider = Provider.of(context, listen: false); // Save set final Set setDb = await workoutProvider.addSet(widget._set); @@ -862,7 +860,7 @@ class _WeightUnitInputWidgetState extends State { widget._setting.weightUnit = newValue; }); }, - items: Provider.of(context, listen: false) + items: Provider.of(context, listen: false) .weightUnits .map>((WeightUnit value) { return DropdownMenuItem( @@ -902,7 +900,7 @@ class _RepetitionUnitInputWidgetState extends State { widget._setting.repetitionUnit = newValue; }); }, - items: Provider.of(context, listen: false) + items: Provider.of(context, listen: false) .repetitionUnits .map>((RepetitionUnit value) { return DropdownMenuItem( diff --git a/lib/widgets/workouts/gym_mode.dart b/lib/widgets/routines/gym_mode.dart similarity index 95% rename from lib/widgets/workouts/gym_mode.dart rename to lib/widgets/routines/gym_mode.dart index 96616393..424d954e 100644 --- a/lib/widgets/workouts/gym_mode.dart +++ b/lib/widgets/routines/gym_mode.dart @@ -30,24 +30,24 @@ import 'package:wger/helpers/json.dart'; import 'package:wger/helpers/misc.dart'; import 'package:wger/helpers/ui.dart'; import 'package:wger/models/exercises/base.dart'; -import 'package:wger/models/workouts/day.dart'; -import 'package:wger/models/workouts/log.dart'; -import 'package:wger/models/workouts/session.dart'; -import 'package:wger/models/workouts/set.dart'; -import 'package:wger/models/workouts/setting.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; +import 'package:wger/models/routines/day.dart'; +import 'package:wger/models/routines/log.dart'; +import 'package:wger/models/routines/routine.dart'; +import 'package:wger/models/routines/session.dart'; +import 'package:wger/models/routines/set.dart'; +import 'package:wger/models/routines/setting.dart'; import 'package:wger/providers/exercises.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/theme/theme.dart'; import 'package:wger/widgets/core/core.dart'; import 'package:wger/widgets/exercises/images.dart'; -import 'package:wger/widgets/workouts/forms.dart'; +import 'package:wger/widgets/routines/forms.dart'; class GymMode extends StatefulWidget { - final Day _workoutDay; + final Day _routineDay; late final TimeOfDay _start; - GymMode(this._workoutDay) { + GymMode(this._routineDay) { _start = TimeOfDay.now(); } @@ -74,7 +74,7 @@ class _GymModeState extends State { void initState() { super.initState(); // Calculate amount of elements for progress indicator - for (final set in widget._workoutDay.sets) { + for (final set in widget._routineDay.sets) { _totalElements = _totalElements + set.settingsComputed.length; } // Calculate the pages for the navigation @@ -82,7 +82,7 @@ class _GymModeState extends State { // This duplicates the code below in the getContent method, but it seems to // be the easiest way var currentPage = 1; - for (final set in widget._workoutDay.sets) { + for (final set in widget._routineDay.sets) { var firstPage = true; for (final setting in set.settingsComputed) { final exerciseBase = Provider.of(context, listen: false) @@ -106,11 +106,11 @@ class _GymModeState extends State { // Returns the list of exercise overview, sets and pause pages List getContent() { final exerciseProvider = Provider.of(context, listen: false); - final workoutProvider = Provider.of(context, listen: false); + final workoutProvider = Provider.of(context, listen: false); var currentElement = 1; final List out = []; - for (final set in widget._workoutDay.sets) { + for (final set in widget._routineDay.sets) { var firstPage = true; for (final setting in set.settingsComputed) { final ratioCompleted = currentElement / _totalElements; @@ -131,7 +131,7 @@ class _GymModeState extends State { setting, set, exerciseBase, - workoutProvider.findById(widget._workoutDay.workoutId), + workoutProvider.findById(widget._routineDay.routineId), ratioCompleted, _exercisePages, )); @@ -150,13 +150,13 @@ class _GymModeState extends State { children: [ StartPage( _controller, - widget._workoutDay, + widget._routineDay, _exercisePages, ), ...getContent(), SessionPage( - Provider.of(context, listen: false) - .findById(widget._workoutDay.workoutId), + Provider.of(context, listen: false) + .findById(widget._routineDay.routineId), _controller, widget._start, _exercisePages, @@ -233,7 +233,7 @@ class LogPage extends StatefulWidget { final Setting _setting; final Set _set; final ExerciseBase _exerciseBase; - final WorkoutPlan _workoutPlan; + final Routine _routine; final double _ratioCompleted; final Map _exercisePages; final Log _log = Log.empty(); @@ -243,12 +243,12 @@ class LogPage extends StatefulWidget { this._setting, this._set, this._exerciseBase, - this._workoutPlan, + this._routine, this._ratioCompleted, this._exercisePages, ) { _log.date = DateTime.now(); - _log.workoutPlan = _workoutPlan.id!; + _log.routineId = _routine.id!; _log.exerciseBase = _exerciseBase; _log.weightUnit = _setting.weightUnitObj; _log.repetitionUnit = _setting.repetitionUnitObj; @@ -488,7 +488,7 @@ class _LogPageState extends State { // Save the entry on the server try { - await Provider.of(context, listen: false) + await Provider.of(context, listen: false) .addLog(widget._log); ScaffoldMessenger.of(context).showSnackBar( SnackBar( @@ -526,9 +526,7 @@ class _LogPageState extends State { style: Theme.of(context).textTheme.headline6, textAlign: TextAlign.center, ), - ...widget._workoutPlan - .filterLogsByExerciseBase(widget._exerciseBase, unique: true) - .map((log) { + ...widget._routine.filterLogsByExerciseBase(widget._exerciseBase, unique: true).map((log) { return ListTile( title: Text(log.singleLogRepTextNoNl), subtitle: @@ -640,7 +638,7 @@ class _LogPageState extends State { ), const SizedBox(height: 10), Expanded( - child: (widget._workoutPlan.filterLogsByExerciseBase(widget._exerciseBase).isNotEmpty) + child: (widget._routine.filterLogsByExerciseBase(widget._exerciseBase).isNotEmpty) ? getPastLogs() : Container()), // Only show calculator for barbell @@ -723,13 +721,13 @@ class ExerciseOverview extends StatelessWidget { } class SessionPage extends StatefulWidget { - final WorkoutPlan _workoutPlan; + final Routine _routine; final PageController _controller; final TimeOfDay _start; final Map _exercisePages; const SessionPage( - this._workoutPlan, + this._routine, this._controller, this._start, this._exercisePages, @@ -757,7 +755,7 @@ class _SessionPageState extends State { timeStartController.text = timeToString(widget._start)!; timeEndController.text = timeToString(TimeOfDay.now())!; - _session.workoutId = widget._workoutPlan.id!; + _session.routineId = widget._routine.id!; _session.impression = DEFAULT_IMPRESSION; _session.date = DateTime.now(); } @@ -900,7 +898,7 @@ class _SessionPageState extends State { // Save the entry on the server try { - await Provider.of(context, listen: false) + await Provider.of(context, listen: false) .addSession(_session); Navigator.of(context).pop(); } on WgerHttpException catch (error) { diff --git a/lib/widgets/workouts/log.dart b/lib/widgets/routines/log.dart similarity index 91% rename from lib/widgets/workouts/log.dart rename to lib/widgets/routines/log.dart index c0fd30c5..f960b1fc 100644 --- a/lib/widgets/workouts/log.dart +++ b/lib/widgets/routines/log.dart @@ -17,15 +17,14 @@ */ import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:intl/intl.dart'; import 'package:provider/provider.dart'; import 'package:wger/helpers/ui.dart'; import 'package:wger/models/exercises/base.dart'; -import 'package:wger/models/workouts/log.dart'; -import 'package:wger/models/workouts/session.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/widgets/workouts/charts.dart'; +import 'package:wger/models/routines/log.dart'; +import 'package:wger/models/routines/session.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/widgets/routines/charts.dart'; class ExerciseLogChart extends StatelessWidget { final ExerciseBase _base; @@ -35,8 +34,8 @@ class ExerciseLogChart extends StatelessWidget { @override Widget build(BuildContext context) { - final workoutPlansData = Provider.of(context, listen: false); - final workout = workoutPlansData.currentPlan; + final workoutPlansData = Provider.of(context, listen: false); + final workout = workoutPlansData.currentRoutine; Future> getChartEntries(BuildContext context) async { return workoutPlansData.fetchLogData(workout!, _base); diff --git a/lib/widgets/workouts/workout_plan_detail.dart b/lib/widgets/routines/routine_detail.dart similarity index 70% rename from lib/widgets/workouts/workout_plan_detail.dart rename to lib/widgets/routines/routine_detail.dart index cf0fbd6e..3127bf93 100644 --- a/lib/widgets/workouts/workout_plan_detail.dart +++ b/lib/widgets/routines/routine_detail.dart @@ -18,32 +18,33 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; +import 'package:wger/models/routines/routine.dart'; import 'package:wger/screens/form_screen.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; -import 'package:wger/widgets/workouts/day.dart'; -import 'package:wger/widgets/workouts/forms.dart'; +import 'package:wger/screens/routine_screen.dart'; +import 'package:wger/widgets/routines/day.dart'; +import 'package:wger/widgets/routines/forms.dart'; -class WorkoutPlanDetail extends StatefulWidget { - final WorkoutPlan _workoutPlan; +class RoutineDetail extends StatefulWidget { + final Routine _routine; final Function _changeMode; - const WorkoutPlanDetail(this._workoutPlan, this._changeMode); + + const RoutineDetail(this._routine, this._changeMode); @override - _WorkoutPlanDetailState createState() => _WorkoutPlanDetailState(); + _RoutineDetailState createState() => _RoutineDetailState(); } -class _WorkoutPlanDetailState extends State { +class _RoutineDetailState extends State { @override Widget build(BuildContext context) { return Column( children: [ - if (widget._workoutPlan.days.isNotEmpty) + if (widget._routine.days.isNotEmpty) ToggleButtons( renderBorder: false, onPressed: (int index) { if (index == 1) { - widget._changeMode(WorkoutScreenMode.log); + widget._changeMode(RoutineScreenMode.log); } }, isSelected: const [true, false], @@ -52,12 +53,12 @@ class _WorkoutPlanDetailState extends State { Icon(Icons.show_chart), ], ), - if (widget._workoutPlan.description != '') + if (widget._routine.description != '') Padding( padding: const EdgeInsets.all(15), - child: Text(widget._workoutPlan.description), + child: Text(widget._routine.description), ), - ...widget._workoutPlan.days.map((workoutDay) => WorkoutDayWidget(workoutDay)).toList(), + ...widget._routine.days.map((workoutDay) => RoutineDayWidget(workoutDay)).toList(), Column( children: [ ElevatedButton( @@ -68,7 +69,7 @@ class _WorkoutPlanDetailState extends State { FormScreen.routeName, arguments: FormScreenArguments( AppLocalizations.of(context).newDay, - DayFormWidget(widget._workoutPlan), + DayFormWidget(widget._routine), hasListView: true, ), ); diff --git a/lib/widgets/workouts/workout_plans_list.dart b/lib/widgets/routines/routines_list.dart similarity index 84% rename from lib/widgets/workouts/workout_plans_list.dart rename to lib/widgets/routines/routines_list.dart index 875bf5d7..6831ba15 100644 --- a/lib/widgets/workouts/workout_plans_list.dart +++ b/lib/widgets/routines/routines_list.dart @@ -20,26 +20,26 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:intl/intl.dart'; import 'package:provider/provider.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/screens/routine_screen.dart'; import 'package:wger/widgets/core/text_prompt.dart'; -class WorkoutPlansList extends StatelessWidget { - final WorkoutPlansProvider _workoutProvider; +class RoutinesList extends StatelessWidget { + final RoutineProvider _routineProvider; - const WorkoutPlansList(this._workoutProvider); + const RoutinesList(this._routineProvider); @override Widget build(BuildContext context) { return RefreshIndicator( - onRefresh: () => _workoutProvider.fetchAndSetAllPlansSparse(), - child: _workoutProvider.items.length == 0 + onRefresh: () => _routineProvider.fetchAndSetAllRoutinesSparse(), + child: _routineProvider.items.isEmpty ? TextPrompt() : ListView.builder( padding: const EdgeInsets.all(10.0), - itemCount: _workoutProvider.items.length, + itemCount: _routineProvider.items.length, itemBuilder: (context, index) { - final currentWorkout = _workoutProvider.items[index]; + final currentWorkout = _routineProvider.items[index]; return Dismissible( key: Key(currentWorkout.id.toString()), confirmDismiss: (direction) async { @@ -63,8 +63,8 @@ class WorkoutPlansList extends StatelessWidget { ), onPressed: () { // Confirmed, delete the workout - Provider.of(context, listen: false) - .deleteWorkout(currentWorkout.id!); + Provider.of(context, listen: false) + .deleteRoutine(currentWorkout.id!); // Close the popup Navigator.of(contextDialog).pop(); @@ -102,10 +102,10 @@ class WorkoutPlansList extends StatelessWidget { child: Card( child: ListTile( onTap: () { - _workoutProvider.setCurrentPlan(currentWorkout.id!); + _routineProvider.setCurrentPlan(currentWorkout.id!); Navigator.of(context) - .pushNamed(WorkoutPlanScreen.routeName, arguments: currentWorkout); + .pushNamed(RoutineScreen.routeName, arguments: currentWorkout); }, title: Text(currentWorkout.name), subtitle: Text( diff --git a/lib/widgets/workouts/workout_logs.dart b/lib/widgets/routines/workout_logs.dart similarity index 89% rename from lib/widgets/workouts/workout_logs.dart rename to lib/widgets/routines/workout_logs.dart index 1147c3c5..915f8f70 100644 --- a/lib/widgets/workouts/workout_logs.dart +++ b/lib/widgets/routines/workout_logs.dart @@ -21,17 +21,18 @@ import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:table_calendar/table_calendar.dart'; import 'package:wger/helpers/consts.dart'; import 'package:wger/models/exercises/base.dart'; -import 'package:wger/models/workouts/log.dart'; -import 'package:wger/models/workouts/session.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; +import 'package:wger/models/routines/log.dart'; +import 'package:wger/models/routines/routine.dart'; +import 'package:wger/models/routines/session.dart'; +import 'package:wger/screens/routine_screen.dart'; import 'package:wger/theme/theme.dart'; -import 'package:wger/widgets/workouts/log.dart'; +import 'package:wger/widgets/routines/log.dart'; class WorkoutLogs extends StatefulWidget { - final WorkoutPlan _workoutPlan; + final Routine _routine; final Function _changeMode; - const WorkoutLogs(this._workoutPlan, this._changeMode); + + const WorkoutLogs(this._routine, this._changeMode); @override _WorkoutLogsState createState() => _WorkoutLogsState(); @@ -56,7 +57,7 @@ class _WorkoutLogsState extends State { renderBorder: false, onPressed: (int index) { if (index == 0) { - widget._changeMode(WorkoutScreenMode.workout); + widget._changeMode(RoutineScreenMode.routine); } }, isSelected: const [false, true], @@ -84,7 +85,7 @@ class _WorkoutLogsState extends State { ), SizedBox( width: double.infinity, - child: WorkoutLogCalendar(widget._workoutPlan), + child: WorkoutLogCalendar(widget._routine), ), ], ); @@ -101,9 +102,9 @@ class WorkoutLogEvent { } class WorkoutLogCalendar extends StatefulWidget { - final WorkoutPlan _workoutPlan; + final Routine _routine; - const WorkoutLogCalendar(this._workoutPlan); + const WorkoutLogCalendar(this._routine); @override _WorkoutLogCalendarState createState() => _WorkoutLogCalendarState(); @@ -132,8 +133,8 @@ class _WorkoutLogCalendarState extends State { } void loadEvents() { - for (final date in widget._workoutPlan.logData.keys) { - final entry = widget._workoutPlan.logData[date]!; + for (final date in widget._routine.logData.keys) { + final entry = widget._routine.logData[date]!; _events[DateFormatLists.format(date)] = [ WorkoutLogEvent( date, diff --git a/test/exercises/contribute_exercise_test.dart b/test/exercises/contribute_exercise_test.dart index 0b887902..3953c6cf 100644 --- a/test/exercises/contribute_exercise_test.dart +++ b/test/exercises/contribute_exercise_test.dart @@ -29,7 +29,7 @@ import 'package:wger/screens/add_exercise_screen.dart'; import '../../test_data/exercises.dart'; import '../../test_data/profile.dart'; -import '../workout/gym_mode_screen_test.mocks.dart'; +import '../routine/gym_mode_screen_test.mocks.dart'; import 'contribute_exercise_test.mocks.dart'; @GenerateMocks([AddExerciseProvider, UserProvider]) diff --git a/test/exercises/contribute_exercise_test.mocks.dart b/test/exercises/contribute_exercise_test.mocks.dart index ea2b2a42..b53a2b48 100644 --- a/test/exercises/contribute_exercise_test.mocks.dart +++ b/test/exercises/contribute_exercise_test.mocks.dart @@ -32,7 +32,8 @@ import 'package:wger/providers/user.dart' as _i15; // ignore_for_file: camel_case_types // ignore_for_file: subtype_of_sealed_class -class _FakeWgerBaseProvider_0 extends _i1.SmartFake implements _i2.WgerBaseProvider { +class _FakeWgerBaseProvider_0 extends _i1.SmartFake + implements _i2.WgerBaseProvider { _FakeWgerBaseProvider_0( Object parent, Invocation parentInvocation, @@ -85,7 +86,8 @@ class _FakeAlias_4 extends _i1.SmartFake implements _i6.Alias { /// A class which mocks [AddExerciseProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockAddExerciseProvider extends _i1.Mock implements _i7.AddExerciseProvider { +class MockAddExerciseProvider extends _i1.Mock + implements _i7.AddExerciseProvider { MockAddExerciseProvider() { _i1.throwOnMissingStub(this); } @@ -342,7 +344,8 @@ class MockAddExerciseProvider extends _i1.Mock implements _i7.AddExerciseProvide returnValueForMissingStub: _i13.Future.value(), ) as _i13.Future); @override - _i13.Future<_i4.Translation> addExerciseTranslation(_i4.Translation? exercise) => + _i13.Future<_i4.Translation> addExerciseTranslation( + _i4.Translation? exercise) => (super.noSuchMethod( Invocation.method( #addExerciseTranslation, diff --git a/test/exercises/exercises_detail_widget_test.dart b/test/exercises/exercises_detail_widget_test.dart index b7725633..1550ecad 100644 --- a/test/exercises/exercises_detail_widget_test.dart +++ b/test/exercises/exercises_detail_widget_test.dart @@ -24,7 +24,7 @@ import 'package:wger/providers/exercises.dart'; import 'package:wger/widgets/exercises/exercises.dart'; import '../../test_data/exercises.dart'; -import '../workout/gym_mode_screen_test.mocks.dart'; +import '../routine/gym_mode_screen_test.mocks.dart'; void main() { final mockProvider = MockExercisesProvider(); diff --git a/test/gallery/gallery_form_test.mocks.dart b/test/gallery/gallery_form_test.mocks.dart index fd2c1241..1ecca6ec 100644 --- a/test/gallery/gallery_form_test.mocks.dart +++ b/test/gallery/gallery_form_test.mocks.dart @@ -181,7 +181,8 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { returnValueForMissingStub: _i6.Future.value(), ) as _i6.Future); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -225,7 +226,8 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { #fetch, [uri], ), - returnValue: _i6.Future>.value({}), + returnValue: + _i6.Future>.value({}), ) as _i6.Future>); @override _i6.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -248,7 +250,8 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { uri, ], ), - returnValue: _i6.Future>.value({}), + returnValue: + _i6.Future>.value({}), ) as _i6.Future>); @override _i6.Future> patch( @@ -263,7 +266,8 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { uri, ], ), - returnValue: _i6.Future>.value({}), + returnValue: + _i6.Future>.value({}), ) as _i6.Future>); @override _i6.Future<_i3.Response> deleteRequest( diff --git a/test/gallery/gallery_screen_test.mocks.dart b/test/gallery/gallery_screen_test.mocks.dart index 628b8a40..f510a09c 100644 --- a/test/gallery/gallery_screen_test.mocks.dart +++ b/test/gallery/gallery_screen_test.mocks.dart @@ -181,7 +181,8 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { returnValueForMissingStub: _i6.Future.value(), ) as _i6.Future); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -225,7 +226,8 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { #fetch, [uri], ), - returnValue: _i6.Future>.value({}), + returnValue: + _i6.Future>.value({}), ) as _i6.Future>); @override _i6.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -248,7 +250,8 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { uri, ], ), - returnValue: _i6.Future>.value({}), + returnValue: + _i6.Future>.value({}), ) as _i6.Future>); @override _i6.Future> patch( @@ -263,7 +266,8 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { uri, ], ), - returnValue: _i6.Future>.value({}), + returnValue: + _i6.Future>.value({}), ) as _i6.Future>); @override _i6.Future<_i3.Response> deleteRequest( diff --git a/test/measurements/measurement_categories_screen_test.mocks.dart b/test/measurements/measurement_categories_screen_test.mocks.dart index 037234a4..5a591dbb 100644 --- a/test/measurements/measurement_categories_screen_test.mocks.dart +++ b/test/measurements/measurement_categories_screen_test.mocks.dart @@ -23,7 +23,8 @@ import 'package:wger/providers/measurement.dart' as _i4; // ignore_for_file: camel_case_types // ignore_for_file: subtype_of_sealed_class -class _FakeWgerBaseProvider_0 extends _i1.SmartFake implements _i2.WgerBaseProvider { +class _FakeWgerBaseProvider_0 extends _i1.SmartFake + implements _i2.WgerBaseProvider { _FakeWgerBaseProvider_0( Object parent, Invocation parentInvocation, @@ -33,7 +34,8 @@ class _FakeWgerBaseProvider_0 extends _i1.SmartFake implements _i2.WgerBaseProvi ); } -class _FakeMeasurementCategory_1 extends _i1.SmartFake implements _i3.MeasurementCategory { +class _FakeMeasurementCategory_1 extends _i1.SmartFake + implements _i3.MeasurementCategory { _FakeMeasurementCategory_1( Object parent, Invocation parentInvocation, @@ -46,7 +48,8 @@ class _FakeMeasurementCategory_1 extends _i1.SmartFake implements _i3.Measuremen /// A class which mocks [MeasurementProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockMeasurementProvider extends _i1.Mock implements _i4.MeasurementProvider { +class MockMeasurementProvider extends _i1.Mock + implements _i4.MeasurementProvider { MockMeasurementProvider() { _i1.throwOnMissingStub(this); } @@ -119,7 +122,8 @@ class MockMeasurementProvider extends _i1.Mock implements _i4.MeasurementProvide returnValueForMissingStub: _i5.Future.value(), ) as _i5.Future); @override - _i5.Future addCategory(_i3.MeasurementCategory? category) => (super.noSuchMethod( + _i5.Future addCategory(_i3.MeasurementCategory? category) => + (super.noSuchMethod( Invocation.method( #addCategory, [category], diff --git a/test/measurements/measurement_provider_test.mocks.dart b/test/measurements/measurement_provider_test.mocks.dart index f09d9922..d8e08973 100644 --- a/test/measurements/measurement_provider_test.mocks.dart +++ b/test/measurements/measurement_provider_test.mocks.dart @@ -102,7 +102,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { returnValueForMissingStub: null, ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -146,7 +147,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -169,7 +171,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> patch( @@ -184,7 +187,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future<_i3.Response> deleteRequest( diff --git a/test/nutrition/nutritional_meal_form_test.mocks.dart b/test/nutrition/nutritional_meal_form_test.mocks.dart index 6c194374..78883d7a 100644 --- a/test/nutrition/nutritional_meal_form_test.mocks.dart +++ b/test/nutrition/nutritional_meal_form_test.mocks.dart @@ -25,7 +25,8 @@ import 'package:wger/providers/nutrition.dart' as _i7; // ignore_for_file: camel_case_types // ignore_for_file: subtype_of_sealed_class -class _FakeWgerBaseProvider_0 extends _i1.SmartFake implements _i2.WgerBaseProvider { +class _FakeWgerBaseProvider_0 extends _i1.SmartFake + implements _i2.WgerBaseProvider { _FakeWgerBaseProvider_0( Object parent, Invocation parentInvocation, @@ -35,7 +36,8 @@ class _FakeWgerBaseProvider_0 extends _i1.SmartFake implements _i2.WgerBaseProvi ); } -class _FakeNutritionalPlan_1 extends _i1.SmartFake implements _i3.NutritionalPlan { +class _FakeNutritionalPlan_1 extends _i1.SmartFake + implements _i3.NutritionalPlan { _FakeNutritionalPlan_1( Object parent, Invocation parentInvocation, @@ -78,7 +80,8 @@ class _FakeIngredient_4 extends _i1.SmartFake implements _i6.Ingredient { /// A class which mocks [NutritionPlansProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansProvider { +class MockNutritionPlansProvider extends _i1.Mock + implements _i7.NutritionPlansProvider { MockNutritionPlansProvider() { _i1.throwOnMissingStub(this); } @@ -155,12 +158,14 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP returnValueForMissingStub: _i8.Future.value(), ) as _i8.Future); @override - _i8.Future<_i3.NutritionalPlan> fetchAndSetPlanSparse(int? planId) => (super.noSuchMethod( + _i8.Future<_i3.NutritionalPlan> fetchAndSetPlanSparse(int? planId) => + (super.noSuchMethod( Invocation.method( #fetchAndSetPlanSparse, [planId], ), - returnValue: _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( + returnValue: + _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( this, Invocation.method( #fetchAndSetPlanSparse, @@ -169,12 +174,14 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP )), ) as _i8.Future<_i3.NutritionalPlan>); @override - _i8.Future<_i3.NutritionalPlan> fetchAndSetPlanFull(int? planId) => (super.noSuchMethod( + _i8.Future<_i3.NutritionalPlan> fetchAndSetPlanFull(int? planId) => + (super.noSuchMethod( Invocation.method( #fetchAndSetPlanFull, [planId], ), - returnValue: _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( + returnValue: + _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( this, Invocation.method( #fetchAndSetPlanFull, @@ -183,12 +190,14 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP )), ) as _i8.Future<_i3.NutritionalPlan>); @override - _i8.Future<_i3.NutritionalPlan> addPlan(_i3.NutritionalPlan? planData) => (super.noSuchMethod( + _i8.Future<_i3.NutritionalPlan> addPlan(_i3.NutritionalPlan? planData) => + (super.noSuchMethod( Invocation.method( #addPlan, [planData], ), - returnValue: _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( + returnValue: + _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( this, Invocation.method( #addPlan, @@ -286,7 +295,8 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP )), ) as _i8.Future<_i5.MealItem>); @override - _i8.Future deleteMealItem(_i5.MealItem? mealItem) => (super.noSuchMethod( + _i8.Future deleteMealItem(_i5.MealItem? mealItem) => + (super.noSuchMethod( Invocation.method( #deleteMealItem, [mealItem], @@ -295,7 +305,8 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP returnValueForMissingStub: _i8.Future.value(), ) as _i8.Future); @override - _i8.Future<_i6.Ingredient> fetchIngredient(int? ingredientId) => (super.noSuchMethod( + _i8.Future<_i6.Ingredient> fetchIngredient(int? ingredientId) => + (super.noSuchMethod( Invocation.method( #fetchIngredient, [ingredientId], @@ -335,7 +346,8 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP returnValue: _i8.Future>.value([]), ) as _i8.Future>); @override - _i8.Future<_i6.Ingredient?> searchIngredientWithCode(String? code) => (super.noSuchMethod( + _i8.Future<_i6.Ingredient?> searchIngredientWithCode(String? code) => + (super.noSuchMethod( Invocation.method( #searchIngredientWithCode, [code], @@ -386,7 +398,8 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP returnValueForMissingStub: _i8.Future.value(), ) as _i8.Future); @override - _i8.Future fetchAndSetLogs(_i3.NutritionalPlan? plan) => (super.noSuchMethod( + _i8.Future fetchAndSetLogs(_i3.NutritionalPlan? plan) => + (super.noSuchMethod( Invocation.method( #fetchAndSetLogs, [plan], diff --git a/test/nutrition/nutritional_plan_form_test.mocks.dart b/test/nutrition/nutritional_plan_form_test.mocks.dart index a5f620ed..447aa4eb 100644 --- a/test/nutrition/nutritional_plan_form_test.mocks.dart +++ b/test/nutrition/nutritional_plan_form_test.mocks.dart @@ -25,7 +25,8 @@ import 'package:wger/providers/nutrition.dart' as _i7; // ignore_for_file: camel_case_types // ignore_for_file: subtype_of_sealed_class -class _FakeWgerBaseProvider_0 extends _i1.SmartFake implements _i2.WgerBaseProvider { +class _FakeWgerBaseProvider_0 extends _i1.SmartFake + implements _i2.WgerBaseProvider { _FakeWgerBaseProvider_0( Object parent, Invocation parentInvocation, @@ -35,7 +36,8 @@ class _FakeWgerBaseProvider_0 extends _i1.SmartFake implements _i2.WgerBaseProvi ); } -class _FakeNutritionalPlan_1 extends _i1.SmartFake implements _i3.NutritionalPlan { +class _FakeNutritionalPlan_1 extends _i1.SmartFake + implements _i3.NutritionalPlan { _FakeNutritionalPlan_1( Object parent, Invocation parentInvocation, @@ -78,7 +80,8 @@ class _FakeIngredient_4 extends _i1.SmartFake implements _i6.Ingredient { /// A class which mocks [NutritionPlansProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansProvider { +class MockNutritionPlansProvider extends _i1.Mock + implements _i7.NutritionPlansProvider { MockNutritionPlansProvider() { _i1.throwOnMissingStub(this); } @@ -155,12 +158,14 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP returnValueForMissingStub: _i8.Future.value(), ) as _i8.Future); @override - _i8.Future<_i3.NutritionalPlan> fetchAndSetPlanSparse(int? planId) => (super.noSuchMethod( + _i8.Future<_i3.NutritionalPlan> fetchAndSetPlanSparse(int? planId) => + (super.noSuchMethod( Invocation.method( #fetchAndSetPlanSparse, [planId], ), - returnValue: _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( + returnValue: + _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( this, Invocation.method( #fetchAndSetPlanSparse, @@ -169,12 +174,14 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP )), ) as _i8.Future<_i3.NutritionalPlan>); @override - _i8.Future<_i3.NutritionalPlan> fetchAndSetPlanFull(int? planId) => (super.noSuchMethod( + _i8.Future<_i3.NutritionalPlan> fetchAndSetPlanFull(int? planId) => + (super.noSuchMethod( Invocation.method( #fetchAndSetPlanFull, [planId], ), - returnValue: _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( + returnValue: + _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( this, Invocation.method( #fetchAndSetPlanFull, @@ -183,12 +190,14 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP )), ) as _i8.Future<_i3.NutritionalPlan>); @override - _i8.Future<_i3.NutritionalPlan> addPlan(_i3.NutritionalPlan? planData) => (super.noSuchMethod( + _i8.Future<_i3.NutritionalPlan> addPlan(_i3.NutritionalPlan? planData) => + (super.noSuchMethod( Invocation.method( #addPlan, [planData], ), - returnValue: _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( + returnValue: + _i8.Future<_i3.NutritionalPlan>.value(_FakeNutritionalPlan_1( this, Invocation.method( #addPlan, @@ -286,7 +295,8 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP )), ) as _i8.Future<_i5.MealItem>); @override - _i8.Future deleteMealItem(_i5.MealItem? mealItem) => (super.noSuchMethod( + _i8.Future deleteMealItem(_i5.MealItem? mealItem) => + (super.noSuchMethod( Invocation.method( #deleteMealItem, [mealItem], @@ -295,7 +305,8 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP returnValueForMissingStub: _i8.Future.value(), ) as _i8.Future); @override - _i8.Future<_i6.Ingredient> fetchIngredient(int? ingredientId) => (super.noSuchMethod( + _i8.Future<_i6.Ingredient> fetchIngredient(int? ingredientId) => + (super.noSuchMethod( Invocation.method( #fetchIngredient, [ingredientId], @@ -335,7 +346,8 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP returnValue: _i8.Future>.value([]), ) as _i8.Future>); @override - _i8.Future<_i6.Ingredient?> searchIngredientWithCode(String? code) => (super.noSuchMethod( + _i8.Future<_i6.Ingredient?> searchIngredientWithCode(String? code) => + (super.noSuchMethod( Invocation.method( #searchIngredientWithCode, [code], @@ -386,7 +398,8 @@ class MockNutritionPlansProvider extends _i1.Mock implements _i7.NutritionPlansP returnValueForMissingStub: _i8.Future.value(), ) as _i8.Future); @override - _i8.Future fetchAndSetLogs(_i3.NutritionalPlan? plan) => (super.noSuchMethod( + _i8.Future fetchAndSetLogs(_i3.NutritionalPlan? plan) => + (super.noSuchMethod( Invocation.method( #fetchAndSetLogs, [plan], diff --git a/test/nutrition/nutritional_plan_screen_test.mocks.dart b/test/nutrition/nutritional_plan_screen_test.mocks.dart index ede5e175..f27e5298 100644 --- a/test/nutrition/nutritional_plan_screen_test.mocks.dart +++ b/test/nutrition/nutritional_plan_screen_test.mocks.dart @@ -65,7 +65,8 @@ class _FakeResponse_3 extends _i1.SmartFake implements _i3.Response { ); } -class _FakeStreamedResponse_4 extends _i1.SmartFake implements _i3.StreamedResponse { +class _FakeStreamedResponse_4 extends _i1.SmartFake + implements _i3.StreamedResponse { _FakeStreamedResponse_4( Object parent, Invocation parentInvocation, @@ -116,7 +117,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { returnValueForMissingStub: null, ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -160,7 +162,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -183,7 +186,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> patch( @@ -198,7 +202,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future<_i3.Response> deleteRequest( @@ -259,7 +264,8 @@ class MockAuthProvider extends _i1.Mock implements _i2.AuthProvider { returnValueForMissingStub: null, ); @override - set applicationVersion(_i6.PackageInfo? _applicationVersion) => super.noSuchMethod( + set applicationVersion(_i6.PackageInfo? _applicationVersion) => + super.noSuchMethod( Invocation.setter( #applicationVersion, _applicationVersion, @@ -378,7 +384,8 @@ class MockAuthProvider extends _i1.Mock implements _i2.AuthProvider { #serverUrl: serverUrl, }, ), - returnValue: _i5.Future>.value({}), + returnValue: _i5.Future>.value( + {}), ) as _i5.Future>); @override _i5.Future> login( @@ -395,7 +402,8 @@ class MockAuthProvider extends _i1.Mock implements _i2.AuthProvider { serverUrl, ], ), - returnValue: _i5.Future>.value({}), + returnValue: _i5.Future>.value( + {}), ) as _i5.Future>); @override _i5.Future getServerUrlFromPrefs() => (super.noSuchMethod( @@ -660,12 +668,14 @@ class MockClient extends _i1.Mock implements _i3.Client { returnValue: _i5.Future<_i9.Uint8List>.value(_i9.Uint8List(0)), ) as _i5.Future<_i9.Uint8List>); @override - _i5.Future<_i3.StreamedResponse> send(_i3.BaseRequest? request) => (super.noSuchMethod( + _i5.Future<_i3.StreamedResponse> send(_i3.BaseRequest? request) => + (super.noSuchMethod( Invocation.method( #send, [request], ), - returnValue: _i5.Future<_i3.StreamedResponse>.value(_FakeStreamedResponse_4( + returnValue: + _i5.Future<_i3.StreamedResponse>.value(_FakeStreamedResponse_4( this, Invocation.method( #send, diff --git a/test/nutrition/nutritional_plans_screen_test.mocks.dart b/test/nutrition/nutritional_plans_screen_test.mocks.dart index d0c8b92d..5e0740dc 100644 --- a/test/nutrition/nutritional_plans_screen_test.mocks.dart +++ b/test/nutrition/nutritional_plans_screen_test.mocks.dart @@ -65,7 +65,8 @@ class _FakeResponse_3 extends _i1.SmartFake implements _i2.Response { ); } -class _FakeStreamedResponse_4 extends _i1.SmartFake implements _i2.StreamedResponse { +class _FakeStreamedResponse_4 extends _i1.SmartFake + implements _i2.StreamedResponse { _FakeStreamedResponse_4( Object parent, Invocation parentInvocation, @@ -108,7 +109,8 @@ class MockAuthProvider extends _i1.Mock implements _i3.AuthProvider { returnValueForMissingStub: null, ); @override - set applicationVersion(_i4.PackageInfo? _applicationVersion) => super.noSuchMethod( + set applicationVersion(_i4.PackageInfo? _applicationVersion) => + super.noSuchMethod( Invocation.setter( #applicationVersion, _applicationVersion, @@ -227,7 +229,8 @@ class MockAuthProvider extends _i1.Mock implements _i3.AuthProvider { #serverUrl: serverUrl, }, ), - returnValue: _i5.Future>.value({}), + returnValue: _i5.Future>.value( + {}), ) as _i5.Future>); @override _i5.Future> login( @@ -244,7 +247,8 @@ class MockAuthProvider extends _i1.Mock implements _i3.AuthProvider { serverUrl, ], ), - returnValue: _i5.Future>.value({}), + returnValue: _i5.Future>.value( + {}), ) as _i5.Future>); @override _i5.Future getServerUrlFromPrefs() => (super.noSuchMethod( @@ -355,7 +359,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i7.WgerBaseProvider { returnValueForMissingStub: null, ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -399,7 +404,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i7.WgerBaseProvider { #fetch, [uri], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -422,7 +428,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i7.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> patch( @@ -437,7 +444,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i7.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future<_i2.Response> deleteRequest( @@ -660,12 +668,14 @@ class MockClient extends _i1.Mock implements _i2.Client { returnValue: _i5.Future<_i9.Uint8List>.value(_i9.Uint8List(0)), ) as _i5.Future<_i9.Uint8List>); @override - _i5.Future<_i2.StreamedResponse> send(_i2.BaseRequest? request) => (super.noSuchMethod( + _i5.Future<_i2.StreamedResponse> send(_i2.BaseRequest? request) => + (super.noSuchMethod( Invocation.method( #send, [request], ), - returnValue: _i5.Future<_i2.StreamedResponse>.value(_FakeStreamedResponse_4( + returnValue: + _i5.Future<_i2.StreamedResponse>.value(_FakeStreamedResponse_4( this, Invocation.method( #send, diff --git a/test/other/base_provider_test.mocks.dart b/test/other/base_provider_test.mocks.dart index b4bacacd..4dca050e 100644 --- a/test/other/base_provider_test.mocks.dart +++ b/test/other/base_provider_test.mocks.dart @@ -31,7 +31,8 @@ class _FakeResponse_0 extends _i1.SmartFake implements _i2.Response { ); } -class _FakeStreamedResponse_1 extends _i1.SmartFake implements _i2.StreamedResponse { +class _FakeStreamedResponse_1 extends _i1.SmartFake + implements _i2.StreamedResponse { _FakeStreamedResponse_1( Object parent, Invocation parentInvocation, @@ -236,12 +237,14 @@ class MockClient extends _i1.Mock implements _i2.Client { returnValue: _i3.Future<_i5.Uint8List>.value(_i5.Uint8List(0)), ) as _i3.Future<_i5.Uint8List>); @override - _i3.Future<_i2.StreamedResponse> send(_i2.BaseRequest? request) => (super.noSuchMethod( + _i3.Future<_i2.StreamedResponse> send(_i2.BaseRequest? request) => + (super.noSuchMethod( Invocation.method( #send, [request], ), - returnValue: _i3.Future<_i2.StreamedResponse>.value(_FakeStreamedResponse_1( + returnValue: + _i3.Future<_i2.StreamedResponse>.value(_FakeStreamedResponse_1( this, Invocation.method( #send, diff --git a/test/workout/gym_mode_screen_test.dart b/test/routine/gym_mode_screen_test.dart similarity index 93% rename from test/workout/gym_mode_screen_test.dart rename to test/routine/gym_mode_screen_test.dart index 54efa024..de16c886 100644 --- a/test/workout/gym_mode_screen_test.dart +++ b/test/routine/gym_mode_screen_test.dart @@ -24,14 +24,14 @@ import 'package:mockito/mockito.dart'; import 'package:provider/provider.dart'; import 'package:wger/providers/base_provider.dart'; import 'package:wger/providers/exercises.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/screens/gym_mode.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; -import 'package:wger/widgets/workouts/forms.dart'; -import 'package:wger/widgets/workouts/gym_mode.dart'; +import 'package:wger/screens/routine_screen.dart'; +import 'package:wger/widgets/routines/forms.dart'; +import 'package:wger/widgets/routines/gym_mode.dart'; import '../../test_data/exercises.dart'; -import '../../test_data/workouts.dart'; +import '../../test_data/routines.dart'; import 'gym_mode_screen_test.mocks.dart'; @GenerateMocks([WgerBaseProvider, ExercisesProvider]) @@ -40,15 +40,15 @@ void main() { final key = GlobalKey(); final mockExerciseProvider = MockExercisesProvider(); - final workoutPlan = getWorkout(); + final routine = getRoutine(); final bases = getTestExerciseBases(); Widget createHomeScreen({locale = 'en'}) { - return ChangeNotifierProvider( - create: (context) => WorkoutPlansProvider( + return ChangeNotifierProvider( + create: (context) => RoutineProvider( mockBaseProvider, mockExerciseProvider, - [workoutPlan], + [routine], ), child: ChangeNotifierProvider( create: (context) => mockExerciseProvider, @@ -60,14 +60,14 @@ void main() { home: TextButton( onPressed: () => key.currentState!.push( MaterialPageRoute( - settings: RouteSettings(arguments: workoutPlan.days.first), + settings: RouteSettings(arguments: routine.days.first), builder: (_) => GymModeScreen(), ), ), child: const SizedBox(), ), routes: { - WorkoutPlanScreen.routeName: (ctx) => WorkoutPlanScreen(), + RoutineScreen.routeName: (ctx) => RoutineScreen(), }, ), ), diff --git a/test/workout/gym_mode_screen_test.mocks.dart b/test/routine/gym_mode_screen_test.mocks.dart similarity index 94% rename from test/workout/gym_mode_screen_test.mocks.dart rename to test/routine/gym_mode_screen_test.mocks.dart index 81f8f7fe..5199e268 100644 --- a/test/workout/gym_mode_screen_test.mocks.dart +++ b/test/routine/gym_mode_screen_test.mocks.dart @@ -1,5 +1,5 @@ // Mocks generated by Mockito 5.4.0 from annotations -// in wger/test/workout/gym_mode_screen_test.dart. +// in wger/test/routine/gym_mode_screen_test.dart. // Do not manually edit this file. // ignore_for_file: no_leading_underscores_for_library_prefixes @@ -68,7 +68,8 @@ class _FakeResponse_3 extends _i1.SmartFake implements _i3.Response { ); } -class _FakeWgerBaseProvider_4 extends _i1.SmartFake implements _i4.WgerBaseProvider { +class _FakeWgerBaseProvider_4 extends _i1.SmartFake + implements _i4.WgerBaseProvider { _FakeWgerBaseProvider_4( Object parent, Invocation parentInvocation, @@ -88,7 +89,8 @@ class _FakeExerciseBase_5 extends _i1.SmartFake implements _i5.ExerciseBase { ); } -class _FakeExerciseCategory_6 extends _i1.SmartFake implements _i6.ExerciseCategory { +class _FakeExerciseCategory_6 extends _i1.SmartFake + implements _i6.ExerciseCategory { _FakeExerciseCategory_6( Object parent, Invocation parentInvocation, @@ -169,7 +171,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { returnValueForMissingStub: null, ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -213,7 +216,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: _i10.Future>.value({}), + returnValue: + _i10.Future>.value({}), ) as _i10.Future>); @override _i10.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -236,7 +240,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i10.Future>.value({}), + returnValue: + _i10.Future>.value({}), ) as _i10.Future>); @override _i10.Future> patch( @@ -251,7 +256,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i10.Future>.value({}), + returnValue: + _i10.Future>.value({}), ) as _i10.Future>); @override _i10.Future<_i3.Response> deleteRequest( @@ -296,7 +302,8 @@ class MockExercisesProvider extends _i1.Mock implements _i11.ExercisesProvider { ), ) as _i4.WgerBaseProvider); @override - set exerciseBases(List<_i5.ExerciseBase>? exercisesBases) => super.noSuchMethod( + set exerciseBases(List<_i5.ExerciseBase>? exercisesBases) => + super.noSuchMethod( Invocation.setter( #exerciseBases, exercisesBases, @@ -309,7 +316,8 @@ class MockExercisesProvider extends _i1.Mock implements _i11.ExercisesProvider { returnValue: <_i5.ExerciseBase>[], ) as List<_i5.ExerciseBase>); @override - set filteredExerciseBases(List<_i5.ExerciseBase>? newFilteredExercises) => super.noSuchMethod( + set filteredExerciseBases(List<_i5.ExerciseBase>? newFilteredExercises) => + super.noSuchMethod( Invocation.setter( #filteredExerciseBases, newFilteredExercises, @@ -317,7 +325,8 @@ class MockExercisesProvider extends _i1.Mock implements _i11.ExercisesProvider { returnValueForMissingStub: null, ); @override - Map> get exerciseBasesByVariation => (super.noSuchMethod( + Map> get exerciseBasesByVariation => + (super.noSuchMethod( Invocation.getter(#exerciseBasesByVariation), returnValue: >{}, ) as Map>); @@ -514,7 +523,8 @@ class MockExercisesProvider extends _i1.Mock implements _i11.ExercisesProvider { returnValueForMissingStub: _i10.Future.value(), ) as _i10.Future); @override - _i10.Future<_i5.ExerciseBase> fetchAndSetExerciseBase(int? exerciseBaseId) => (super.noSuchMethod( + _i10.Future<_i5.ExerciseBase> fetchAndSetExerciseBase(int? exerciseBaseId) => + (super.noSuchMethod( Invocation.method( #fetchAndSetExerciseBase, [exerciseBaseId], @@ -528,7 +538,8 @@ class MockExercisesProvider extends _i1.Mock implements _i11.ExercisesProvider { )), ) as _i10.Future<_i5.ExerciseBase>); @override - _i5.ExerciseBase readExerciseBaseFromBaseInfo(dynamic baseData) => (super.noSuchMethod( + _i5.ExerciseBase readExerciseBaseFromBaseInfo(dynamic baseData) => + (super.noSuchMethod( Invocation.method( #readExerciseBaseFromBaseInfo, [baseData], @@ -574,7 +585,8 @@ class MockExercisesProvider extends _i1.Mock implements _i11.ExercisesProvider { #searchEnglish: searchEnglish, }, ), - returnValue: _i10.Future>.value(<_i5.ExerciseBase>[]), + returnValue: + _i10.Future>.value(<_i5.ExerciseBase>[]), ) as _i10.Future>); @override void addListener(_i12.VoidCallback? listener) => super.noSuchMethod( diff --git a/test/workout/plate_calculator_test.dart b/test/routine/plate_calculator_test.dart similarity index 100% rename from test/workout/plate_calculator_test.dart rename to test/routine/plate_calculator_test.dart diff --git a/test/workout/repetition_unit_form_widget_test.dart b/test/routine/repetition_unit_form_widget_test.dart similarity index 83% rename from test/workout/repetition_unit_form_widget_test.dart rename to test/routine/repetition_unit_form_widget_test.dart index d237bd49..8b969b2e 100644 --- a/test/workout/repetition_unit_form_widget_test.dart +++ b/test/routine/repetition_unit_form_widget_test.dart @@ -22,17 +22,17 @@ import 'package:flutter_test/flutter_test.dart'; import 'package:mockito/annotations.dart'; import 'package:mockito/mockito.dart'; import 'package:provider/provider.dart'; -import 'package:wger/models/workouts/repetition_unit.dart'; -import 'package:wger/models/workouts/setting.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; -import 'package:wger/widgets/workouts/forms.dart'; +import 'package:wger/models/routines/repetition_unit.dart'; +import 'package:wger/models/routines/setting.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/screens/routine_screen.dart'; +import 'package:wger/widgets/routines/forms.dart'; import 'repetition_unit_form_widget_test.mocks.dart'; -@GenerateMocks([WorkoutPlansProvider]) +@GenerateMocks([RoutineProvider]) void main() { - var mockWorkoutPlans = MockWorkoutPlansProvider(); + var mockRoutineProvider = MockRoutineProvider(); const unit1 = RepetitionUnit(id: 1, name: 'some rep unit'); const unit2 = RepetitionUnit(id: 2, name: 'another name'); @@ -51,15 +51,15 @@ void main() { setting1.repetitionUnitObj = unit1; setUp(() { - mockWorkoutPlans = MockWorkoutPlansProvider(); - when(mockWorkoutPlans.repetitionUnits).thenAnswer((_) => [unit1, unit2, unit3]); + mockRoutineProvider = MockRoutineProvider(); + when(mockRoutineProvider.repetitionUnits).thenAnswer((_) => [unit1, unit2, unit3]); }); Widget createHomeScreen() { final key = GlobalKey(); - return ChangeNotifierProvider( - create: (context) => mockWorkoutPlans, + return ChangeNotifierProvider( + create: (context) => mockRoutineProvider, child: MaterialApp( localizationsDelegates: AppLocalizations.localizationsDelegates, supportedLocales: AppLocalizations.supportedLocales, @@ -68,7 +68,7 @@ void main() { body: RepetitionUnitInputWidget(setting1), ), routes: { - WorkoutPlanScreen.routeName: (ctx) => WorkoutPlanScreen(), + RoutineScreen.routeName: (ctx) => RoutineScreen(), }, ), ); diff --git a/test/workout/repetition_unit_form_widget_test.mocks.dart b/test/routine/repetition_unit_form_widget_test.mocks.dart similarity index 86% rename from test/workout/repetition_unit_form_widget_test.mocks.dart rename to test/routine/repetition_unit_form_widget_test.mocks.dart index af33fd82..c876dace 100644 --- a/test/workout/repetition_unit_form_widget_test.mocks.dart +++ b/test/routine/repetition_unit_form_widget_test.mocks.dart @@ -1,5 +1,5 @@ // Mocks generated by Mockito 5.4.0 from annotations -// in wger/test/workout/repetition_unit_form_widget_test.dart. +// in wger/test/routine/repetition_unit_form_widget_test.dart. // Do not manually edit this file. // ignore_for_file: no_leading_underscores_for_library_prefixes @@ -9,16 +9,16 @@ import 'dart:ui' as _i15; import 'package:mockito/mockito.dart' as _i1; import 'package:wger/models/exercises/base.dart' as _i13; import 'package:wger/models/exercises/translation.dart' as _i14; -import 'package:wger/models/workouts/day.dart' as _i6; -import 'package:wger/models/workouts/log.dart' as _i10; -import 'package:wger/models/workouts/repetition_unit.dart' as _i4; -import 'package:wger/models/workouts/session.dart' as _i9; -import 'package:wger/models/workouts/set.dart' as _i7; -import 'package:wger/models/workouts/setting.dart' as _i8; -import 'package:wger/models/workouts/weight_unit.dart' as _i3; -import 'package:wger/models/workouts/workout_plan.dart' as _i5; +import 'package:wger/models/routines/day.dart' as _i6; +import 'package:wger/models/routines/log.dart' as _i10; +import 'package:wger/models/routines/repetition_unit.dart' as _i4; +import 'package:wger/models/routines/routine.dart' as _i5; +import 'package:wger/models/routines/session.dart' as _i9; +import 'package:wger/models/routines/set.dart' as _i7; +import 'package:wger/models/routines/setting.dart' as _i8; +import 'package:wger/models/routines/weight_unit.dart' as _i3; import 'package:wger/providers/base_provider.dart' as _i2; -import 'package:wger/providers/workout_plans.dart' as _i11; +import 'package:wger/providers/routine.dart' as _i11; // ignore_for_file: type=lint // ignore_for_file: avoid_redundant_argument_values @@ -61,8 +61,8 @@ class _FakeRepetitionUnit_2 extends _i1.SmartFake implements _i4.RepetitionUnit ); } -class _FakeWorkoutPlan_3 extends _i1.SmartFake implements _i5.WorkoutPlan { - _FakeWorkoutPlan_3( +class _FakeRoutine_3 extends _i1.SmartFake implements _i5.Routine { + _FakeRoutine_3( Object parent, Invocation parentInvocation, ) : super( @@ -121,11 +121,11 @@ class _FakeLog_8 extends _i1.SmartFake implements _i10.Log { ); } -/// A class which mocks [WorkoutPlansProvider]. +/// A class which mocks [RoutineProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProvider { - MockWorkoutPlansProvider() { +class MockRoutineProvider extends _i1.Mock implements _i11.RoutineProvider { + MockRoutineProvider() { _i1.throwOnMissingStub(this); } @@ -137,16 +137,19 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv Invocation.getter(#baseProvider), ), ) as _i2.WgerBaseProvider); + @override - List<_i5.WorkoutPlan> get items => (super.noSuchMethod( + List<_i5.Routine> get items => (super.noSuchMethod( Invocation.getter(#items), - returnValue: <_i5.WorkoutPlan>[], - ) as List<_i5.WorkoutPlan>); + returnValue: <_i5.Routine>[], + ) as List<_i5.Routine>); + @override List<_i3.WeightUnit> get weightUnits => (super.noSuchMethod( Invocation.getter(#weightUnits), returnValue: <_i3.WeightUnit>[], ) as List<_i3.WeightUnit>); + @override _i3.WeightUnit get defaultWeightUnit => (super.noSuchMethod( Invocation.getter(#defaultWeightUnit), @@ -155,11 +158,13 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv Invocation.getter(#defaultWeightUnit), ), ) as _i3.WeightUnit); + @override List<_i4.RepetitionUnit> get repetitionUnits => (super.noSuchMethod( Invocation.getter(#repetitionUnits), returnValue: <_i4.RepetitionUnit>[], ) as List<_i4.RepetitionUnit>); + @override _i4.RepetitionUnit get defaultRepetitionUnit => (super.noSuchMethod( Invocation.getter(#defaultRepetitionUnit), @@ -168,11 +173,13 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv Invocation.getter(#defaultRepetitionUnit), ), ) as _i4.RepetitionUnit); + @override bool get hasListeners => (super.noSuchMethod( Invocation.getter(#hasListeners), returnValue: false, ) as bool); + @override void clear() => super.noSuchMethod( Invocation.method( @@ -181,28 +188,31 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override - List<_i5.WorkoutPlan> getPlans() => (super.noSuchMethod( + List<_i5.Routine> getPlans() => (super.noSuchMethod( Invocation.method( #getPlans, [], ), - returnValue: <_i5.WorkoutPlan>[], - ) as List<_i5.WorkoutPlan>); + returnValue: <_i5.Routine>[], + ) as List<_i5.Routine>); + @override - _i5.WorkoutPlan findById(int? id) => (super.noSuchMethod( + _i5.Routine findById(int? id) => (super.noSuchMethod( Invocation.method( #findById, [id], ), - returnValue: _FakeWorkoutPlan_3( + returnValue: _FakeRoutine_3( this, Invocation.method( #findById, [id], ), ), - ) as _i5.WorkoutPlan); + ) as _i5.Routine); + @override int findIndexById(int? id) => (super.noSuchMethod( Invocation.method( @@ -211,6 +221,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: 0, ) as int); + @override void setCurrentPlan(int? id) => super.noSuchMethod( Invocation.method( @@ -219,16 +230,18 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override - void resetCurrentPlan() => super.noSuchMethod( + void resetCurrentRoutine() => super.noSuchMethod( Invocation.method( #resetCurrentPlan, [], ), returnValueForMissingStub: null, ); + @override - _i12.Future fetchAndSetAllPlansFull() => (super.noSuchMethod( + _i12.Future fetchAndSetAllRoutinesFull() => (super.noSuchMethod( Invocation.method( #fetchAndSetAllPlansFull, [], @@ -236,8 +249,9 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override - _i12.Future fetchAndSetAllPlansSparse() => (super.noSuchMethod( + _i12.Future fetchAndSetAllRoutinesSparse() => (super.noSuchMethod( Invocation.method( #fetchAndSetAllPlansSparse, [], @@ -245,50 +259,54 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => (super.noSuchMethod( + _i12.Future<_i5.Routine> fetchAndSetRoutineSparse(int? planId) => (super.noSuchMethod( Invocation.method( #fetchAndSetPlanSparse, [planId], ), - returnValue: _i12.Future<_i5.WorkoutPlan>.value(_FakeWorkoutPlan_3( + returnValue: _i12.Future<_i5.Routine>.value(_FakeRoutine_3( this, Invocation.method( #fetchAndSetPlanSparse, [planId], ), )), - ) as _i12.Future<_i5.WorkoutPlan>); + ) as _i12.Future<_i5.Routine>); + @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => (super.noSuchMethod( + _i12.Future<_i5.Routine> fetchAndSetRoutineFull(int? workoutId) => (super.noSuchMethod( Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], ), - returnValue: _i12.Future<_i5.WorkoutPlan>.value(_FakeWorkoutPlan_3( + returnValue: _i12.Future<_i5.Routine>.value(_FakeRoutine_3( this, Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], ), )), - ) as _i12.Future<_i5.WorkoutPlan>); + ) as _i12.Future<_i5.Routine>); + @override - _i12.Future<_i5.WorkoutPlan> addWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( + _i12.Future<_i5.Routine> addRoutine(_i5.Routine? workout) => (super.noSuchMethod( Invocation.method( #addWorkout, [workout], ), - returnValue: _i12.Future<_i5.WorkoutPlan>.value(_FakeWorkoutPlan_3( + returnValue: _i12.Future<_i5.Routine>.value(_FakeRoutine_3( this, Invocation.method( #addWorkout, [workout], ), )), - ) as _i12.Future<_i5.WorkoutPlan>); + ) as _i12.Future<_i5.Routine>); + @override - _i12.Future editWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( + _i12.Future editRoutine(_i5.Routine? workout) => (super.noSuchMethod( Invocation.method( #editWorkout, [workout], @@ -296,8 +314,9 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override - _i12.Future deleteWorkout(int? id) => (super.noSuchMethod( + _i12.Future deleteRoutine(int? id) => (super.noSuchMethod( Invocation.method( #deleteWorkout, [id], @@ -305,9 +324,10 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future> fetchLogData( - _i5.WorkoutPlan? workout, + _i5.Routine? workout, _i13.ExerciseBase? base, ) => (super.noSuchMethod( @@ -320,6 +340,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future>.value({}), ) as _i12.Future>); + @override _i12.Future fetchAndSetRepetitionUnits() => (super.noSuchMethod( Invocation.method( @@ -329,6 +350,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future fetchAndSetWeightUnits() => (super.noSuchMethod( Invocation.method( @@ -338,6 +360,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future fetchAndSetUnits() => (super.noSuchMethod( Invocation.method( @@ -347,10 +370,11 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i6.Day> addDay( _i6.Day? day, - _i5.WorkoutPlan? workout, + _i5.Routine? workout, ) => (super.noSuchMethod( Invocation.method( @@ -371,6 +395,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i6.Day>); + @override _i12.Future editDay(_i6.Day? day) => (super.noSuchMethod( Invocation.method( @@ -380,6 +405,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future deleteDay(_i6.Day? day) => (super.noSuchMethod( Invocation.method( @@ -389,6 +415,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i7.Set> addSet(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -403,6 +430,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i7.Set>); + @override _i12.Future editSet(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -412,6 +440,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future> reorderSets( List<_i7.Set>? sets, @@ -427,6 +456,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future>.value(<_i7.Set>[]), ) as _i12.Future>); + @override _i12.Future fetchComputedSettings(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -436,6 +466,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future fetchSmartText( _i7.Set? workoutSet, @@ -451,6 +482,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future.value(''), ) as _i12.Future); + @override _i12.Future deleteSet(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -460,6 +492,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i8.Setting> addSetting(_i8.Setting? workoutSetting) => (super.noSuchMethod( Invocation.method( @@ -474,6 +507,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i8.Setting>); + @override _i12.Future fetchSessionData() => (super.noSuchMethod( Invocation.method( @@ -482,6 +516,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i9.WorkoutSession> addSession(_i9.WorkoutSession? session) => (super.noSuchMethod( Invocation.method( @@ -496,6 +531,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i9.WorkoutSession>); + @override _i12.Future<_i10.Log> addLog(_i10.Log? log) => (super.noSuchMethod( Invocation.method( @@ -510,6 +546,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i10.Log>); + @override _i12.Future deleteLog(_i10.Log? log) => (super.noSuchMethod( Invocation.method( @@ -519,6 +556,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override void addListener(_i15.VoidCallback? listener) => super.noSuchMethod( Invocation.method( @@ -527,6 +565,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void removeListener(_i15.VoidCallback? listener) => super.noSuchMethod( Invocation.method( @@ -535,6 +574,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void dispose() => super.noSuchMethod( Invocation.method( @@ -543,6 +583,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void notifyListeners() => super.noSuchMethod( Invocation.method( diff --git a/test/workout/set_model_test.dart b/test/routine/set_model_test.dart similarity index 89% rename from test/workout/set_model_test.dart rename to test/routine/set_model_test.dart index dfd4b0e8..967eb537 100644 --- a/test/workout/set_model_test.dart +++ b/test/routine/set_model_test.dart @@ -18,13 +18,13 @@ import 'package:flutter_test/flutter_test.dart'; -import '../../test_data/workouts.dart'; +import '../../test_data/routines.dart'; void main() { group('Test the getSmartTextRepr method for a set', () { test('Repetitions and weigh units', () async { - final workout = getWorkout(); - final set = workout.days.first.sets.first; + final routine = getRoutine(); + final set = routine.days.first.sets.first; final exercise1 = set.exerciseBasesObj[0]; expect(set.getSmartTextRepr(exercise1), '6 × 80 kg (3 RiR)'); diff --git a/test/workout/setting_model_test.dart b/test/routine/setting_model_test.dart similarity index 94% rename from test/workout/setting_model_test.dart rename to test/routine/setting_model_test.dart index 53d2381c..e45d1828 100644 --- a/test/workout/setting_model_test.dart +++ b/test/routine/setting_model_test.dart @@ -17,9 +17,9 @@ */ import 'package:flutter_test/flutter_test.dart'; -import 'package:wger/models/workouts/repetition_unit.dart'; -import 'package:wger/models/workouts/setting.dart'; -import 'package:wger/models/workouts/weight_unit.dart'; +import 'package:wger/models/routines/repetition_unit.dart'; +import 'package:wger/models/routines/setting.dart'; +import 'package:wger/models/routines/weight_unit.dart'; void main() { group('Test the singleSettingRepText method', () { diff --git a/test/workout/weight_unit_form_widget_test.dart b/test/routine/weight_unit_form_widget_test.dart similarity index 83% rename from test/workout/weight_unit_form_widget_test.dart rename to test/routine/weight_unit_form_widget_test.dart index 8fbe987a..a1dfc6e6 100644 --- a/test/workout/weight_unit_form_widget_test.dart +++ b/test/routine/weight_unit_form_widget_test.dart @@ -22,18 +22,18 @@ import 'package:flutter_test/flutter_test.dart'; import 'package:mockito/annotations.dart'; import 'package:mockito/mockito.dart'; import 'package:provider/provider.dart'; -import 'package:wger/models/workouts/setting.dart'; -import 'package:wger/models/workouts/weight_unit.dart'; +import 'package:wger/models/routines/setting.dart'; +import 'package:wger/models/routines/weight_unit.dart'; import 'package:wger/providers/body_weight.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; -import 'package:wger/widgets/workouts/forms.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/screens/routine_screen.dart'; +import 'package:wger/widgets/routines/forms.dart'; import './workout_form_test.mocks.dart'; @GenerateMocks([BodyWeightProvider]) void main() { - var mockWorkoutPlans = MockWorkoutPlansProvider(); + var mockRoutineProvider = MockRoutineProvider(); const unit1 = WeightUnit(id: 1, name: 'kg'); const unit2 = WeightUnit(id: 2, name: 'donkeys'); @@ -52,15 +52,15 @@ void main() { setting1.weightUnitObj = unit1; setUp(() { - mockWorkoutPlans = MockWorkoutPlansProvider(); - when(mockWorkoutPlans.weightUnits).thenAnswer((_) => [unit1, unit2, unit3]); + mockRoutineProvider = MockRoutineProvider(); + when(mockRoutineProvider.weightUnits).thenAnswer((_) => [unit1, unit2, unit3]); }); Widget createHomeScreen() { final key = GlobalKey(); - return ChangeNotifierProvider( - create: (context) => mockWorkoutPlans, + return ChangeNotifierProvider( + create: (context) => mockRoutineProvider, child: MaterialApp( localizationsDelegates: AppLocalizations.localizationsDelegates, supportedLocales: AppLocalizations.supportedLocales, @@ -69,7 +69,7 @@ void main() { body: WeightUnitInputWidget(setting1), ), routes: { - WorkoutPlanScreen.routeName: (ctx) => WorkoutPlanScreen(), + RoutineScreen.routeName: (ctx) => RoutineScreen(), }, ), ); diff --git a/test/workout/weight_unit_form_widget_test.mocks.dart b/test/routine/weight_unit_form_widget_test.mocks.dart similarity index 91% rename from test/workout/weight_unit_form_widget_test.mocks.dart rename to test/routine/weight_unit_form_widget_test.mocks.dart index f3f638a2..7265d90e 100644 --- a/test/workout/weight_unit_form_widget_test.mocks.dart +++ b/test/routine/weight_unit_form_widget_test.mocks.dart @@ -1,5 +1,5 @@ // Mocks generated by Mockito 5.4.0 from annotations -// in wger/test/workout/weight_unit_form_widget_test.dart. +// in wger/test/routine/weight_unit_form_widget_test.dart. // Do not manually edit this file. // ignore_for_file: no_leading_underscores_for_library_prefixes @@ -22,7 +22,8 @@ import 'package:wger/providers/body_weight.dart' as _i4; // ignore_for_file: camel_case_types // ignore_for_file: subtype_of_sealed_class -class _FakeWgerBaseProvider_0 extends _i1.SmartFake implements _i2.WgerBaseProvider { +class _FakeWgerBaseProvider_0 extends _i1.SmartFake + implements _i2.WgerBaseProvider { _FakeWgerBaseProvider_0( Object parent, Invocation parentInvocation, @@ -45,7 +46,8 @@ class _FakeWeightEntry_1 extends _i1.SmartFake implements _i3.WeightEntry { /// A class which mocks [BodyWeightProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockBodyWeightProvider extends _i1.Mock implements _i4.BodyWeightProvider { +class MockBodyWeightProvider extends _i1.Mock + implements _i4.BodyWeightProvider { MockBodyWeightProvider() { _i1.throwOnMissingStub(this); } @@ -99,7 +101,8 @@ class MockBodyWeightProvider extends _i1.Mock implements _i4.BodyWeightProvider ), ) as _i3.WeightEntry); @override - _i3.WeightEntry? findByDate(DateTime? date) => (super.noSuchMethod(Invocation.method( + _i3.WeightEntry? findByDate(DateTime? date) => + (super.noSuchMethod(Invocation.method( #findByDate, [date], )) as _i3.WeightEntry?); @@ -109,10 +112,12 @@ class MockBodyWeightProvider extends _i1.Mock implements _i4.BodyWeightProvider #fetchAndSetEntries, [], ), - returnValue: _i5.Future>.value(<_i3.WeightEntry>[]), + returnValue: + _i5.Future>.value(<_i3.WeightEntry>[]), ) as _i5.Future>); @override - _i5.Future<_i3.WeightEntry> addEntry(_i3.WeightEntry? entry) => (super.noSuchMethod( + _i5.Future<_i3.WeightEntry> addEntry(_i3.WeightEntry? entry) => + (super.noSuchMethod( Invocation.method( #addEntry, [entry], diff --git a/test/workout/workout_day_form_test.dart b/test/routine/workout_day_form_test.dart similarity index 80% rename from test/workout/workout_day_form_test.dart rename to test/routine/workout_day_form_test.dart index 99e321e9..9500a4ac 100644 --- a/test/workout/workout_day_form_test.dart +++ b/test/routine/workout_day_form_test.dart @@ -23,36 +23,36 @@ import 'package:mockito/annotations.dart'; import 'package:mockito/mockito.dart'; import 'package:provider/provider.dart'; import 'package:wger/helpers/consts.dart'; -import 'package:wger/models/workouts/day.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/widgets/workouts/forms.dart'; +import 'package:wger/models/routines/day.dart'; +import 'package:wger/models/routines/routine.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/widgets/routines/forms.dart'; -import '../../test_data/workouts.dart'; +import '../../test_data/routines.dart'; import 'workout_day_form_test.mocks.dart'; -@GenerateMocks([WorkoutPlansProvider]) +@GenerateMocks([RoutineProvider]) void main() { - var mockWorkoutPlans = MockWorkoutPlansProvider(); - WorkoutPlan workoutPlan = WorkoutPlan.empty(); + var mockRoutineProvider = MockRoutineProvider(); + Routine routine = Routine.empty(); setUp(() { - workoutPlan = getWorkout(); - mockWorkoutPlans = MockWorkoutPlansProvider(); + routine = getRoutine(); + mockRoutineProvider = MockRoutineProvider(); }); Widget createHomeScreen({locale = 'en'}) { final key = GlobalKey(); - return ChangeNotifierProvider( - create: (context) => mockWorkoutPlans, + return ChangeNotifierProvider( + create: (context) => mockRoutineProvider, child: MaterialApp( locale: Locale(locale), localizationsDelegates: AppLocalizations.localizationsDelegates, supportedLocales: AppLocalizations.supportedLocales, navigatorKey: key, home: Scaffold( - body: DayFormWidget(workoutPlan), + body: DayFormWidget(routine), ), ), ); @@ -68,7 +68,7 @@ void main() { }); testWidgets('Test creating a new day', (WidgetTester tester) async { - when(mockWorkoutPlans.addDay(any, any)).thenAnswer((_) => Future.value(Day())); + when(mockRoutineProvider.addDay(any, any)).thenAnswer((_) => Future.value(Day())); await tester.pumpWidget(createHomeScreen()); await tester.pumpAndSettle(); @@ -78,7 +78,7 @@ void main() { await tester.tap(find.byKey(const Key('field-checkbox-1'))); await tester.tap(find.byKey(const Key(SUBMIT_BUTTON_KEY_NAME))); - verify(mockWorkoutPlans.addDay(any, any)); + verify(mockRoutineProvider.addDay(any, any)); // Successful redirect to workout plan detail page //await tester.pumpAndSettle(); diff --git a/test/workout/workout_day_form_test.mocks.dart b/test/routine/workout_day_form_test.mocks.dart similarity index 86% rename from test/workout/workout_day_form_test.mocks.dart rename to test/routine/workout_day_form_test.mocks.dart index 9a50fe29..0e07d8b7 100644 --- a/test/workout/workout_day_form_test.mocks.dart +++ b/test/routine/workout_day_form_test.mocks.dart @@ -1,5 +1,5 @@ // Mocks generated by Mockito 5.4.0 from annotations -// in wger/test/workout/workout_day_form_test.dart. +// in wger/test/routine/workout_day_form_test.dart. // Do not manually edit this file. // ignore_for_file: no_leading_underscores_for_library_prefixes @@ -9,16 +9,16 @@ import 'dart:ui' as _i15; import 'package:mockito/mockito.dart' as _i1; import 'package:wger/models/exercises/base.dart' as _i13; import 'package:wger/models/exercises/translation.dart' as _i14; -import 'package:wger/models/workouts/day.dart' as _i6; -import 'package:wger/models/workouts/log.dart' as _i10; -import 'package:wger/models/workouts/repetition_unit.dart' as _i4; -import 'package:wger/models/workouts/session.dart' as _i9; -import 'package:wger/models/workouts/set.dart' as _i7; -import 'package:wger/models/workouts/setting.dart' as _i8; -import 'package:wger/models/workouts/weight_unit.dart' as _i3; -import 'package:wger/models/workouts/workout_plan.dart' as _i5; +import 'package:wger/models/routines/day.dart' as _i6; +import 'package:wger/models/routines/log.dart' as _i10; +import 'package:wger/models/routines/repetition_unit.dart' as _i4; +import 'package:wger/models/routines/routine.dart' as _i5; +import 'package:wger/models/routines/session.dart' as _i9; +import 'package:wger/models/routines/set.dart' as _i7; +import 'package:wger/models/routines/setting.dart' as _i8; +import 'package:wger/models/routines/weight_unit.dart' as _i3; import 'package:wger/providers/base_provider.dart' as _i2; -import 'package:wger/providers/workout_plans.dart' as _i11; +import 'package:wger/providers/routine.dart' as _i11; // ignore_for_file: type=lint // ignore_for_file: avoid_redundant_argument_values @@ -61,8 +61,8 @@ class _FakeRepetitionUnit_2 extends _i1.SmartFake implements _i4.RepetitionUnit ); } -class _FakeWorkoutPlan_3 extends _i1.SmartFake implements _i5.WorkoutPlan { - _FakeWorkoutPlan_3( +class _FakeRoutine_3 extends _i1.SmartFake implements _i5.Routine { + _FakeRoutine_3( Object parent, Invocation parentInvocation, ) : super( @@ -121,11 +121,11 @@ class _FakeLog_8 extends _i1.SmartFake implements _i10.Log { ); } -/// A class which mocks [WorkoutPlansProvider]. +/// A class which mocks [RoutineProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProvider { - MockWorkoutPlansProvider() { +class MockRoutineProvider extends _i1.Mock implements _i11.RoutineProvider { + MockRoutineProvider() { _i1.throwOnMissingStub(this); } @@ -137,16 +137,19 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv Invocation.getter(#baseProvider), ), ) as _i2.WgerBaseProvider); + @override - List<_i5.WorkoutPlan> get items => (super.noSuchMethod( + List<_i5.Routine> get items => (super.noSuchMethod( Invocation.getter(#items), - returnValue: <_i5.WorkoutPlan>[], - ) as List<_i5.WorkoutPlan>); + returnValue: <_i5.Routine>[], + ) as List<_i5.Routine>); + @override List<_i3.WeightUnit> get weightUnits => (super.noSuchMethod( Invocation.getter(#weightUnits), returnValue: <_i3.WeightUnit>[], ) as List<_i3.WeightUnit>); + @override _i3.WeightUnit get defaultWeightUnit => (super.noSuchMethod( Invocation.getter(#defaultWeightUnit), @@ -155,11 +158,13 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv Invocation.getter(#defaultWeightUnit), ), ) as _i3.WeightUnit); + @override List<_i4.RepetitionUnit> get repetitionUnits => (super.noSuchMethod( Invocation.getter(#repetitionUnits), returnValue: <_i4.RepetitionUnit>[], ) as List<_i4.RepetitionUnit>); + @override _i4.RepetitionUnit get defaultRepetitionUnit => (super.noSuchMethod( Invocation.getter(#defaultRepetitionUnit), @@ -168,11 +173,13 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv Invocation.getter(#defaultRepetitionUnit), ), ) as _i4.RepetitionUnit); + @override bool get hasListeners => (super.noSuchMethod( Invocation.getter(#hasListeners), returnValue: false, ) as bool); + @override void clear() => super.noSuchMethod( Invocation.method( @@ -181,28 +188,31 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override - List<_i5.WorkoutPlan> getPlans() => (super.noSuchMethod( + List<_i5.Routine> getPlans() => (super.noSuchMethod( Invocation.method( #getPlans, [], ), - returnValue: <_i5.WorkoutPlan>[], - ) as List<_i5.WorkoutPlan>); + returnValue: <_i5.Routine>[], + ) as List<_i5.Routine>); + @override - _i5.WorkoutPlan findById(int? id) => (super.noSuchMethod( + _i5.Routine findById(int? id) => (super.noSuchMethod( Invocation.method( #findById, [id], ), - returnValue: _FakeWorkoutPlan_3( + returnValue: _FakeRoutine_3( this, Invocation.method( #findById, [id], ), ), - ) as _i5.WorkoutPlan); + ) as _i5.Routine); + @override int findIndexById(int? id) => (super.noSuchMethod( Invocation.method( @@ -211,6 +221,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: 0, ) as int); + @override void setCurrentPlan(int? id) => super.noSuchMethod( Invocation.method( @@ -219,16 +230,18 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override - void resetCurrentPlan() => super.noSuchMethod( + void resetCurrentRoutine() => super.noSuchMethod( Invocation.method( #resetCurrentPlan, [], ), returnValueForMissingStub: null, ); + @override - _i12.Future fetchAndSetAllPlansFull() => (super.noSuchMethod( + _i12.Future fetchAndSetAllRoutinesFull() => (super.noSuchMethod( Invocation.method( #fetchAndSetAllPlansFull, [], @@ -236,8 +249,9 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override - _i12.Future fetchAndSetAllPlansSparse() => (super.noSuchMethod( + _i12.Future fetchAndSetAllRoutinesSparse() => (super.noSuchMethod( Invocation.method( #fetchAndSetAllPlansSparse, [], @@ -245,50 +259,54 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => (super.noSuchMethod( + _i12.Future<_i5.Routine> fetchAndSetRoutineSparse(int? planId) => (super.noSuchMethod( Invocation.method( #fetchAndSetPlanSparse, [planId], ), - returnValue: _i12.Future<_i5.WorkoutPlan>.value(_FakeWorkoutPlan_3( + returnValue: _i12.Future<_i5.Routine>.value(_FakeRoutine_3( this, Invocation.method( #fetchAndSetPlanSparse, [planId], ), )), - ) as _i12.Future<_i5.WorkoutPlan>); + ) as _i12.Future<_i5.Routine>); + @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => (super.noSuchMethod( + _i12.Future<_i5.Routine> fetchAndSetRoutineFull(int? workoutId) => (super.noSuchMethod( Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], ), - returnValue: _i12.Future<_i5.WorkoutPlan>.value(_FakeWorkoutPlan_3( + returnValue: _i12.Future<_i5.Routine>.value(_FakeRoutine_3( this, Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], ), )), - ) as _i12.Future<_i5.WorkoutPlan>); + ) as _i12.Future<_i5.Routine>); + @override - _i12.Future<_i5.WorkoutPlan> addWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( + _i12.Future<_i5.Routine> addRoutine(_i5.Routine? workout) => (super.noSuchMethod( Invocation.method( #addWorkout, [workout], ), - returnValue: _i12.Future<_i5.WorkoutPlan>.value(_FakeWorkoutPlan_3( + returnValue: _i12.Future<_i5.Routine>.value(_FakeRoutine_3( this, Invocation.method( #addWorkout, [workout], ), )), - ) as _i12.Future<_i5.WorkoutPlan>); + ) as _i12.Future<_i5.Routine>); + @override - _i12.Future editWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( + _i12.Future editRoutine(_i5.Routine? workout) => (super.noSuchMethod( Invocation.method( #editWorkout, [workout], @@ -296,8 +314,9 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override - _i12.Future deleteWorkout(int? id) => (super.noSuchMethod( + _i12.Future deleteRoutine(int? id) => (super.noSuchMethod( Invocation.method( #deleteWorkout, [id], @@ -305,9 +324,10 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future> fetchLogData( - _i5.WorkoutPlan? workout, + _i5.Routine? workout, _i13.ExerciseBase? base, ) => (super.noSuchMethod( @@ -320,6 +340,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future>.value({}), ) as _i12.Future>); + @override _i12.Future fetchAndSetRepetitionUnits() => (super.noSuchMethod( Invocation.method( @@ -329,6 +350,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future fetchAndSetWeightUnits() => (super.noSuchMethod( Invocation.method( @@ -338,6 +360,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future fetchAndSetUnits() => (super.noSuchMethod( Invocation.method( @@ -347,10 +370,11 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i6.Day> addDay( _i6.Day? day, - _i5.WorkoutPlan? workout, + _i5.Routine? workout, ) => (super.noSuchMethod( Invocation.method( @@ -371,6 +395,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i6.Day>); + @override _i12.Future editDay(_i6.Day? day) => (super.noSuchMethod( Invocation.method( @@ -380,6 +405,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future deleteDay(_i6.Day? day) => (super.noSuchMethod( Invocation.method( @@ -389,6 +415,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i7.Set> addSet(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -403,6 +430,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i7.Set>); + @override _i12.Future editSet(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -412,6 +440,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future> reorderSets( List<_i7.Set>? sets, @@ -427,6 +456,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future>.value(<_i7.Set>[]), ) as _i12.Future>); + @override _i12.Future fetchComputedSettings(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -436,6 +466,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future fetchSmartText( _i7.Set? workoutSet, @@ -451,6 +482,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future.value(''), ) as _i12.Future); + @override _i12.Future deleteSet(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -460,6 +492,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i8.Setting> addSetting(_i8.Setting? workoutSetting) => (super.noSuchMethod( Invocation.method( @@ -474,6 +507,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i8.Setting>); + @override _i12.Future fetchSessionData() => (super.noSuchMethod( Invocation.method( @@ -482,6 +516,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i9.WorkoutSession> addSession(_i9.WorkoutSession? session) => (super.noSuchMethod( Invocation.method( @@ -496,6 +531,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i9.WorkoutSession>); + @override _i12.Future<_i10.Log> addLog(_i10.Log? log) => (super.noSuchMethod( Invocation.method( @@ -510,6 +546,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i10.Log>); + @override _i12.Future deleteLog(_i10.Log? log) => (super.noSuchMethod( Invocation.method( @@ -519,6 +556,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override void addListener(_i15.VoidCallback? listener) => super.noSuchMethod( Invocation.method( @@ -527,6 +565,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void removeListener(_i15.VoidCallback? listener) => super.noSuchMethod( Invocation.method( @@ -535,6 +574,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void dispose() => super.noSuchMethod( Invocation.method( @@ -543,6 +583,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void notifyListeners() => super.noSuchMethod( Invocation.method( diff --git a/test/workout/workout_form_test.dart b/test/routine/workout_form_test.dart similarity index 76% rename from test/workout/workout_form_test.dart rename to test/routine/workout_form_test.dart index 44f72b28..75b06706 100644 --- a/test/workout/workout_form_test.dart +++ b/test/routine/workout_form_test.dart @@ -23,47 +23,47 @@ import 'package:mockito/annotations.dart'; import 'package:mockito/mockito.dart'; import 'package:provider/provider.dart'; import 'package:wger/helpers/consts.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; -import 'package:wger/widgets/workouts/forms.dart'; +import 'package:wger/models/routines/routine.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/screens/routine_screen.dart'; +import 'package:wger/widgets/routines/forms.dart'; import './workout_form_test.mocks.dart'; -@GenerateMocks([WorkoutPlansProvider]) +@GenerateMocks([RoutineProvider]) void main() { - var mockWorkoutPlans = MockWorkoutPlansProvider(); + var mockRoutineProvider = MockRoutineProvider(); - final existingPlan = WorkoutPlan( + final existingPlan = Routine( id: 1, creationDate: DateTime(2021, 1, 1), name: 'test 1', description: 'description 1', ); - final newPlan = WorkoutPlan.empty(); + final newPlan = Routine.empty(); setUp(() { - mockWorkoutPlans = MockWorkoutPlansProvider(); - when(mockWorkoutPlans.editWorkout(any)).thenAnswer((_) => Future.value(existingPlan)); - when(mockWorkoutPlans.fetchAndSetWorkoutPlanFull(any)) + mockRoutineProvider = MockRoutineProvider(); + when(mockRoutineProvider.editRoutine(any)).thenAnswer((_) => Future.value(existingPlan)); + when(mockRoutineProvider.fetchAndSetRoutineFull(any)) .thenAnswer((_) => Future.value(existingPlan)); }); - Widget createHomeScreen(WorkoutPlan workoutPlan, {locale = 'en'}) { + Widget createHomeScreen(Routine workoutPlan, {locale = 'en'}) { final key = GlobalKey(); - return ChangeNotifierProvider( - create: (context) => mockWorkoutPlans, + return ChangeNotifierProvider( + create: (context) => mockRoutineProvider, child: MaterialApp( locale: Locale(locale), localizationsDelegates: AppLocalizations.localizationsDelegates, supportedLocales: AppLocalizations.supportedLocales, navigatorKey: key, home: Scaffold( - body: WorkoutForm(workoutPlan), + body: RoutineForm(workoutPlan), ), routes: { - WorkoutPlanScreen.routeName: (ctx) => WorkoutPlanScreen(), + RoutineScreen.routeName: (ctx) => RoutineScreen(), }, ), ); @@ -95,8 +95,8 @@ void main() { await tester.tap(find.byKey(const Key(SUBMIT_BUTTON_KEY_NAME))); // Correct method was called - verify(mockWorkoutPlans.editWorkout(any)); - verifyNever(mockWorkoutPlans.addWorkout(any)); + verify(mockRoutineProvider.editRoutine(any)); + verifyNever(mockRoutineProvider.addRoutine(any)); // TODO(x): edit calls Navigator.pop(), since the form can only be reached from the // detail page. The test needs to add the detail page to the stack so that @@ -108,13 +108,13 @@ void main() { }); testWidgets('Test creating a new workout - only name', (WidgetTester tester) async { - final editWorkout = WorkoutPlan( + final editWorkout = Routine( id: 2, creationDate: newPlan.creationDate, name: 'New cool workout', ); - when(mockWorkoutPlans.addWorkout(any)).thenAnswer((_) => Future.value(editWorkout)); + when(mockRoutineProvider.addRoutine(any)).thenAnswer((_) => Future.value(editWorkout)); await tester.pumpWidget(createHomeScreen(newPlan)); await tester.pumpAndSettle(); @@ -123,8 +123,8 @@ void main() { await tester.enterText(find.byKey(const Key('field-name')), editWorkout.name); await tester.tap(find.byKey(const Key(SUBMIT_BUTTON_KEY_NAME))); - verifyNever(mockWorkoutPlans.editWorkout(any)); - verify(mockWorkoutPlans.addWorkout(any)); + verifyNever(mockRoutineProvider.editRoutine(any)); + verify(mockRoutineProvider.addRoutine(any)); // Detail page await tester.pumpAndSettle(); @@ -132,9 +132,9 @@ void main() { }); testWidgets('Test creating a new workout - name and description', (WidgetTester tester) async { - final editWorkout = WorkoutPlan( + final editWorkout = Routine( id: 2, creationDate: newPlan.creationDate, name: 'My workout', description: 'Get yuuuge'); - when(mockWorkoutPlans.addWorkout(any)).thenAnswer((_) => Future.value(editWorkout)); + when(mockRoutineProvider.addRoutine(any)).thenAnswer((_) => Future.value(editWorkout)); await tester.pumpWidget(createHomeScreen(newPlan)); await tester.pumpAndSettle(); @@ -144,8 +144,8 @@ void main() { await tester.enterText(find.byKey(const Key('field-description')), editWorkout.description); await tester.tap(find.byKey(const Key(SUBMIT_BUTTON_KEY_NAME))); - verifyNever(mockWorkoutPlans.editWorkout(any)); - verify(mockWorkoutPlans.addWorkout(any)); + verifyNever(mockRoutineProvider.editRoutine(any)); + verify(mockRoutineProvider.addRoutine(any)); // Detail page await tester.pumpAndSettle(); diff --git a/test/workout/workout_form_test.mocks.dart b/test/routine/workout_form_test.mocks.dart similarity index 86% rename from test/workout/workout_form_test.mocks.dart rename to test/routine/workout_form_test.mocks.dart index 6eda3025..e9b590d1 100644 --- a/test/workout/workout_form_test.mocks.dart +++ b/test/routine/workout_form_test.mocks.dart @@ -1,5 +1,5 @@ // Mocks generated by Mockito 5.4.0 from annotations -// in wger/test/workout/workout_form_test.dart. +// in wger/test/routine/workout_form_test.dart. // Do not manually edit this file. // ignore_for_file: no_leading_underscores_for_library_prefixes @@ -9,16 +9,16 @@ import 'dart:ui' as _i15; import 'package:mockito/mockito.dart' as _i1; import 'package:wger/models/exercises/base.dart' as _i13; import 'package:wger/models/exercises/translation.dart' as _i14; -import 'package:wger/models/workouts/day.dart' as _i6; -import 'package:wger/models/workouts/log.dart' as _i10; -import 'package:wger/models/workouts/repetition_unit.dart' as _i4; -import 'package:wger/models/workouts/session.dart' as _i9; -import 'package:wger/models/workouts/set.dart' as _i7; -import 'package:wger/models/workouts/setting.dart' as _i8; -import 'package:wger/models/workouts/weight_unit.dart' as _i3; -import 'package:wger/models/workouts/workout_plan.dart' as _i5; +import 'package:wger/models/routines/day.dart' as _i6; +import 'package:wger/models/routines/log.dart' as _i10; +import 'package:wger/models/routines/repetition_unit.dart' as _i4; +import 'package:wger/models/routines/routine.dart' as _i5; +import 'package:wger/models/routines/session.dart' as _i9; +import 'package:wger/models/routines/set.dart' as _i7; +import 'package:wger/models/routines/setting.dart' as _i8; +import 'package:wger/models/routines/weight_unit.dart' as _i3; import 'package:wger/providers/base_provider.dart' as _i2; -import 'package:wger/providers/workout_plans.dart' as _i11; +import 'package:wger/providers/routine.dart' as _i11; // ignore_for_file: type=lint // ignore_for_file: avoid_redundant_argument_values @@ -61,8 +61,8 @@ class _FakeRepetitionUnit_2 extends _i1.SmartFake implements _i4.RepetitionUnit ); } -class _FakeWorkoutPlan_3 extends _i1.SmartFake implements _i5.WorkoutPlan { - _FakeWorkoutPlan_3( +class _FakeRoutine_3 extends _i1.SmartFake implements _i5.Routine { + _FakeRoutine_3( Object parent, Invocation parentInvocation, ) : super( @@ -121,11 +121,11 @@ class _FakeLog_8 extends _i1.SmartFake implements _i10.Log { ); } -/// A class which mocks [WorkoutPlansProvider]. +/// A class which mocks [RoutineProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProvider { - MockWorkoutPlansProvider() { +class MockRoutineProvider extends _i1.Mock implements _i11.RoutineProvider { + MockRoutineProvider() { _i1.throwOnMissingStub(this); } @@ -137,16 +137,19 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv Invocation.getter(#baseProvider), ), ) as _i2.WgerBaseProvider); + @override - List<_i5.WorkoutPlan> get items => (super.noSuchMethod( + List<_i5.Routine> get items => (super.noSuchMethod( Invocation.getter(#items), - returnValue: <_i5.WorkoutPlan>[], - ) as List<_i5.WorkoutPlan>); + returnValue: <_i5.Routine>[], + ) as List<_i5.Routine>); + @override List<_i3.WeightUnit> get weightUnits => (super.noSuchMethod( Invocation.getter(#weightUnits), returnValue: <_i3.WeightUnit>[], ) as List<_i3.WeightUnit>); + @override _i3.WeightUnit get defaultWeightUnit => (super.noSuchMethod( Invocation.getter(#defaultWeightUnit), @@ -155,11 +158,13 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv Invocation.getter(#defaultWeightUnit), ), ) as _i3.WeightUnit); + @override List<_i4.RepetitionUnit> get repetitionUnits => (super.noSuchMethod( Invocation.getter(#repetitionUnits), returnValue: <_i4.RepetitionUnit>[], ) as List<_i4.RepetitionUnit>); + @override _i4.RepetitionUnit get defaultRepetitionUnit => (super.noSuchMethod( Invocation.getter(#defaultRepetitionUnit), @@ -168,11 +173,13 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv Invocation.getter(#defaultRepetitionUnit), ), ) as _i4.RepetitionUnit); + @override bool get hasListeners => (super.noSuchMethod( Invocation.getter(#hasListeners), returnValue: false, ) as bool); + @override void clear() => super.noSuchMethod( Invocation.method( @@ -181,28 +188,31 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override - List<_i5.WorkoutPlan> getPlans() => (super.noSuchMethod( + List<_i5.Routine> getPlans() => (super.noSuchMethod( Invocation.method( #getPlans, [], ), - returnValue: <_i5.WorkoutPlan>[], - ) as List<_i5.WorkoutPlan>); + returnValue: <_i5.Routine>[], + ) as List<_i5.Routine>); + @override - _i5.WorkoutPlan findById(int? id) => (super.noSuchMethod( + _i5.Routine findById(int? id) => (super.noSuchMethod( Invocation.method( #findById, [id], ), - returnValue: _FakeWorkoutPlan_3( + returnValue: _FakeRoutine_3( this, Invocation.method( #findById, [id], ), ), - ) as _i5.WorkoutPlan); + ) as _i5.Routine); + @override int findIndexById(int? id) => (super.noSuchMethod( Invocation.method( @@ -211,6 +221,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: 0, ) as int); + @override void setCurrentPlan(int? id) => super.noSuchMethod( Invocation.method( @@ -219,16 +230,18 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override - void resetCurrentPlan() => super.noSuchMethod( + void resetCurrentRoutine() => super.noSuchMethod( Invocation.method( #resetCurrentPlan, [], ), returnValueForMissingStub: null, ); + @override - _i12.Future fetchAndSetAllPlansFull() => (super.noSuchMethod( + _i12.Future fetchAndSetAllRoutinesFull() => (super.noSuchMethod( Invocation.method( #fetchAndSetAllPlansFull, [], @@ -236,8 +249,9 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override - _i12.Future fetchAndSetAllPlansSparse() => (super.noSuchMethod( + _i12.Future fetchAndSetAllRoutinesSparse() => (super.noSuchMethod( Invocation.method( #fetchAndSetAllPlansSparse, [], @@ -245,50 +259,54 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => (super.noSuchMethod( + _i12.Future<_i5.Routine> fetchAndSetRoutineSparse(int? planId) => (super.noSuchMethod( Invocation.method( #fetchAndSetPlanSparse, [planId], ), - returnValue: _i12.Future<_i5.WorkoutPlan>.value(_FakeWorkoutPlan_3( + returnValue: _i12.Future<_i5.Routine>.value(_FakeRoutine_3( this, Invocation.method( #fetchAndSetPlanSparse, [planId], ), )), - ) as _i12.Future<_i5.WorkoutPlan>); + ) as _i12.Future<_i5.Routine>); + @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => (super.noSuchMethod( + _i12.Future<_i5.Routine> fetchAndSetRoutineFull(int? workoutId) => (super.noSuchMethod( Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], ), - returnValue: _i12.Future<_i5.WorkoutPlan>.value(_FakeWorkoutPlan_3( + returnValue: _i12.Future<_i5.Routine>.value(_FakeRoutine_3( this, Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], ), )), - ) as _i12.Future<_i5.WorkoutPlan>); + ) as _i12.Future<_i5.Routine>); + @override - _i12.Future<_i5.WorkoutPlan> addWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( + _i12.Future<_i5.Routine> addRoutine(_i5.Routine? workout) => (super.noSuchMethod( Invocation.method( #addWorkout, [workout], ), - returnValue: _i12.Future<_i5.WorkoutPlan>.value(_FakeWorkoutPlan_3( + returnValue: _i12.Future<_i5.Routine>.value(_FakeRoutine_3( this, Invocation.method( #addWorkout, [workout], ), )), - ) as _i12.Future<_i5.WorkoutPlan>); + ) as _i12.Future<_i5.Routine>); + @override - _i12.Future editWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( + _i12.Future editRoutine(_i5.Routine? workout) => (super.noSuchMethod( Invocation.method( #editWorkout, [workout], @@ -296,8 +314,9 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override - _i12.Future deleteWorkout(int? id) => (super.noSuchMethod( + _i12.Future deleteRoutine(int? id) => (super.noSuchMethod( Invocation.method( #deleteWorkout, [id], @@ -305,9 +324,10 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future> fetchLogData( - _i5.WorkoutPlan? workout, + _i5.Routine? workout, _i13.ExerciseBase? base, ) => (super.noSuchMethod( @@ -320,6 +340,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future>.value({}), ) as _i12.Future>); + @override _i12.Future fetchAndSetRepetitionUnits() => (super.noSuchMethod( Invocation.method( @@ -329,6 +350,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future fetchAndSetWeightUnits() => (super.noSuchMethod( Invocation.method( @@ -338,6 +360,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future fetchAndSetUnits() => (super.noSuchMethod( Invocation.method( @@ -347,10 +370,11 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i6.Day> addDay( _i6.Day? day, - _i5.WorkoutPlan? workout, + _i5.Routine? workout, ) => (super.noSuchMethod( Invocation.method( @@ -371,6 +395,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i6.Day>); + @override _i12.Future editDay(_i6.Day? day) => (super.noSuchMethod( Invocation.method( @@ -380,6 +405,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future deleteDay(_i6.Day? day) => (super.noSuchMethod( Invocation.method( @@ -389,6 +415,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i7.Set> addSet(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -403,6 +430,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i7.Set>); + @override _i12.Future editSet(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -412,6 +440,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future> reorderSets( List<_i7.Set>? sets, @@ -427,6 +456,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future>.value(<_i7.Set>[]), ) as _i12.Future>); + @override _i12.Future fetchComputedSettings(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -436,6 +466,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future fetchSmartText( _i7.Set? workoutSet, @@ -451,6 +482,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future.value(''), ) as _i12.Future); + @override _i12.Future deleteSet(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -460,6 +492,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i8.Setting> addSetting(_i8.Setting? workoutSetting) => (super.noSuchMethod( Invocation.method( @@ -474,6 +507,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i8.Setting>); + @override _i12.Future fetchSessionData() => (super.noSuchMethod( Invocation.method( @@ -482,6 +516,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValue: _i12.Future.value(), ) as _i12.Future); + @override _i12.Future<_i9.WorkoutSession> addSession(_i9.WorkoutSession? session) => (super.noSuchMethod( Invocation.method( @@ -496,6 +531,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i9.WorkoutSession>); + @override _i12.Future<_i10.Log> addLog(_i10.Log? log) => (super.noSuchMethod( Invocation.method( @@ -510,6 +546,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), )), ) as _i12.Future<_i10.Log>); + @override _i12.Future deleteLog(_i10.Log? log) => (super.noSuchMethod( Invocation.method( @@ -519,6 +556,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv returnValue: _i12.Future.value(), returnValueForMissingStub: _i12.Future.value(), ) as _i12.Future); + @override void addListener(_i15.VoidCallback? listener) => super.noSuchMethod( Invocation.method( @@ -527,6 +565,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void removeListener(_i15.VoidCallback? listener) => super.noSuchMethod( Invocation.method( @@ -535,6 +574,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void dispose() => super.noSuchMethod( Invocation.method( @@ -543,6 +583,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void notifyListeners() => super.noSuchMethod( Invocation.method( diff --git a/test/workout/workout_log_model_test.dart b/test/routine/workout_log_model_test.dart similarity index 95% rename from test/workout/workout_log_model_test.dart rename to test/routine/workout_log_model_test.dart index f7f381d9..21ee216a 100644 --- a/test/workout/workout_log_model_test.dart +++ b/test/routine/workout_log_model_test.dart @@ -17,7 +17,7 @@ */ import 'package:flutter_test/flutter_test.dart'; -import 'package:wger/models/workouts/log.dart'; +import 'package:wger/models/routines/log.dart'; void main() { group('Test the workout log model', () { @@ -27,7 +27,7 @@ void main() { setUp(() { log1 = Log( id: 123, - workoutPlan: 100, + routineId: 100, exerciseBaseId: 1, reps: 10, rir: '1.5', @@ -38,7 +38,7 @@ void main() { ); log2 = Log( id: 9, - workoutPlan: 42, + routineId: 42, exerciseBaseId: 1, reps: 10, rir: '1.5', diff --git a/test/workout/workout_plan_model_test.dart b/test/routine/workout_plan_model_test.dart similarity index 80% rename from test/workout/workout_plan_model_test.dart rename to test/routine/workout_plan_model_test.dart index 9ab1a588..b384a9e2 100644 --- a/test/workout/workout_plan_model_test.dart +++ b/test/routine/workout_plan_model_test.dart @@ -19,24 +19,24 @@ import 'package:flutter_test/flutter_test.dart'; import '../../test_data/exercises.dart'; -import '../../test_data/workouts.dart'; +import '../../test_data/routines.dart'; void main() { group('model tests', () { test('Test the filterLogsByExercise method', () { - final workout = getWorkout(); + final routine = getRoutine(); - expect(workout.logs.length, 3); - final logExercise1 = workout.filterLogsByExerciseBase(getTestExerciseBases()[0]); + expect(routine.logs.length, 3); + final logExercise1 = routine.filterLogsByExerciseBase(getTestExerciseBases()[0]); expect(logExercise1.length, 2); expect(logExercise1[0].id, 1); expect(logExercise1[1].id, 2); - final logExercise2 = workout.filterLogsByExerciseBase(getTestExerciseBases()[1]); + final logExercise2 = routine.filterLogsByExerciseBase(getTestExerciseBases()[1]); expect(logExercise2.length, 1); expect(logExercise2[0].id, 3); - expect(workout.filterLogsByExerciseBase(getTestExerciseBases()[2]).length, 0); + expect(routine.filterLogsByExerciseBase(getTestExerciseBases()[2]).length, 0); }); }); } diff --git a/test/workout/workout_plan_screen_test.dart b/test/routine/workout_plan_screen_test.dart similarity index 86% rename from test/workout/workout_plan_screen_test.dart rename to test/routine/workout_plan_screen_test.dart index 838e7d41..86954811 100644 --- a/test/workout/workout_plan_screen_test.dart +++ b/test/routine/workout_plan_screen_test.dart @@ -23,10 +23,10 @@ import 'package:mockito/annotations.dart'; import 'package:provider/provider.dart'; import 'package:wger/providers/base_provider.dart'; import 'package:wger/providers/exercises.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/screens/workout_plan_screen.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/screens/routine_screen.dart'; -import '../../test_data/workouts.dart'; +import '../../test_data/routines.dart'; import 'workout_plan_screen_test.mocks.dart'; @GenerateMocks([WgerBaseProvider]) @@ -36,8 +36,8 @@ void main() { Widget createHomeScreen({locale = 'en'}) { final key = GlobalKey(); - return ChangeNotifierProvider( - create: (context) => WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []), + return ChangeNotifierProvider( + create: (context) => RoutineProvider(mockBaseProvider, exercisesProvider, []), child: MaterialApp( locale: Locale(locale), localizationsDelegates: AppLocalizations.localizationsDelegates, @@ -46,14 +46,14 @@ void main() { home: TextButton( onPressed: () => key.currentState!.push( MaterialPageRoute( - settings: RouteSettings(arguments: getWorkout()), - builder: (_) => WorkoutPlanScreen(), + settings: RouteSettings(arguments: getRoutine()), + builder: (_) => RoutineScreen(), ), ), child: const SizedBox(), ), routes: { - WorkoutPlanScreen.routeName: (ctx) => WorkoutPlanScreen(), + RoutineScreen.routeName: (ctx) => RoutineScreen(), }, ), ); diff --git a/test/workout/workout_plan_screen_test.mocks.dart b/test/routine/workout_plan_screen_test.mocks.dart similarity index 93% rename from test/workout/workout_plan_screen_test.mocks.dart rename to test/routine/workout_plan_screen_test.mocks.dart index 3ddba809..868cfd19 100644 --- a/test/workout/workout_plan_screen_test.mocks.dart +++ b/test/routine/workout_plan_screen_test.mocks.dart @@ -1,5 +1,5 @@ // Mocks generated by Mockito 5.4.0 from annotations -// in wger/test/workout/workout_plan_screen_test.dart. +// in wger/test/routine/workout_plan_screen_test.dart. // Do not manually edit this file. // ignore_for_file: no_leading_underscores_for_library_prefixes @@ -102,7 +102,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { returnValueForMissingStub: null, ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -146,7 +147,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -169,7 +171,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> patch( @@ -184,7 +187,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future<_i3.Response> deleteRequest( diff --git a/test/workout/workout_plans_screen_test.dart b/test/routine/workout_plans_screen_test.dart similarity index 86% rename from test/workout/workout_plans_screen_test.dart rename to test/routine/workout_plans_screen_test.dart index 45ee4879..3618b908 100644 --- a/test/workout/workout_plans_screen_test.dart +++ b/test/routine/workout_plans_screen_test.dart @@ -23,14 +23,14 @@ import 'package:http/http.dart' as http; import 'package:mockito/annotations.dart'; import 'package:mockito/mockito.dart'; import 'package:provider/provider.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; +import 'package:wger/models/routines/routine.dart'; import 'package:wger/providers/base_provider.dart'; import 'package:wger/providers/exercises.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/providers/routine.dart'; import 'package:wger/screens/form_screen.dart'; -import 'package:wger/screens/workout_plans_screen.dart'; +import 'package:wger/screens/routines_screen.dart'; import 'package:wger/widgets/nutrition/forms.dart'; -import 'package:wger/widgets/workouts/forms.dart'; +import 'package:wger/widgets/routines/forms.dart'; import 'workout_plans_screen_test.mocks.dart'; @@ -52,20 +52,20 @@ void main() { when(mockBaseProvider.makeUrl('workout', query: anyNamed('query'))).thenReturn(uri); when(mockBaseProvider.deleteRequest(any, any)).thenAnswer((_) async => http.Response('', 204)); - return ChangeNotifierProvider( - create: (context) => WorkoutPlansProvider( + return ChangeNotifierProvider( + create: (context) => RoutineProvider( mockBaseProvider, testExercisesProvider, [ - WorkoutPlan(id: 1, creationDate: DateTime(2021, 01, 01), name: 'test 1'), - WorkoutPlan(id: 2, creationDate: DateTime(2021, 02, 12), name: 'test 2'), + Routine(id: 1, creationDate: DateTime(2021, 01, 01), name: 'test 1'), + Routine(id: 2, creationDate: DateTime(2021, 02, 12), name: 'test 2'), ], ), child: MaterialApp( locale: Locale(locale), localizationsDelegates: AppLocalizations.localizationsDelegates, supportedLocales: AppLocalizations.supportedLocales, - home: WorkoutPlansScreen(), + home: RoutinesScreen(), routes: { FormScreen.routeName: (ctx) => FormScreen(), }, @@ -77,7 +77,7 @@ void main() { await tester.pumpWidget(createHomeScreen()); //debugDumpApp(); - expect(find.text('Workout plans'), findsOneWidget); + expect(find.text('Routines'), findsOneWidget); expect(find.byType(Dismissible), findsNWidgets(2)); expect(find.byType(ListTile), findsNWidgets(2)); }); @@ -114,7 +114,7 @@ void main() { expect(find.byType(PlanForm), findsNothing); await tester.tap(find.byType(FloatingActionButton)); await tester.pumpAndSettle(); - expect(find.byType(WorkoutForm), findsOneWidget); + expect(find.byType(RoutineForm), findsOneWidget); }); testWidgets('Tests the localization of dates - EN', (WidgetTester tester) async { diff --git a/test/workout/workout_plans_screen_test.mocks.dart b/test/routine/workout_plans_screen_test.mocks.dart similarity index 93% rename from test/workout/workout_plans_screen_test.mocks.dart rename to test/routine/workout_plans_screen_test.mocks.dart index ef435464..4538ede3 100644 --- a/test/workout/workout_plans_screen_test.mocks.dart +++ b/test/routine/workout_plans_screen_test.mocks.dart @@ -1,5 +1,5 @@ // Mocks generated by Mockito 5.4.0 from annotations -// in wger/test/workout/workout_plans_screen_test.dart. +// in wger/test/routine/workout_plans_screen_test.dart. // Do not manually edit this file. // ignore_for_file: no_leading_underscores_for_library_prefixes @@ -102,7 +102,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { returnValueForMissingStub: null, ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -146,7 +147,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -169,7 +171,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> patch( @@ -184,7 +187,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future<_i3.Response> deleteRequest( diff --git a/test/workout/workout_provider_test.dart b/test/routine/workout_provider_test.dart similarity index 87% rename from test/workout/workout_provider_test.dart rename to test/routine/workout_provider_test.dart index 598c0849..592a87fe 100644 --- a/test/workout/workout_provider_test.dart +++ b/test/routine/workout_provider_test.dart @@ -24,12 +24,12 @@ import 'package:http/http.dart'; import 'package:mockito/annotations.dart'; import 'package:mockito/mockito.dart'; import 'package:shared_preferences/shared_preferences.dart'; -import 'package:wger/models/workouts/repetition_unit.dart'; -import 'package:wger/models/workouts/weight_unit.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; +import 'package:wger/models/routines/repetition_unit.dart'; +import 'package:wger/models/routines/routine.dart'; +import 'package:wger/models/routines/weight_unit.dart'; import 'package:wger/providers/base_provider.dart'; import 'package:wger/providers/exercises.dart'; -import 'package:wger/providers/workout_plans.dart'; +import 'package:wger/providers/routine.dart'; import '../fixtures/fixture_reader.dart'; import 'workout_provider_test.mocks.dart'; @@ -56,12 +56,12 @@ void main() { ); // Load the entries - final provider = WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); - final plan = await provider.fetchAndSetPlanSparse(325397); + final provider = RoutineProvider(mockBaseProvider, exercisesProvider, []); + final plan = await provider.fetchAndSetRoutineSparse(325397); final plans = provider.getPlans(); // Check that everything is ok - expect(plan, isA()); + expect(plan, isA()); expect(plan.id, 325397); expect(plan.description, 'Test workout abcd'); expect(plans.length, 1); @@ -86,10 +86,10 @@ void main() { ); // Load the entries - final provider = WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); + final provider = RoutineProvider(mockBaseProvider, exercisesProvider, []); - await provider.fetchAndSetPlanSparse(325397); - await provider.deleteWorkout(325397); + await provider.fetchAndSetRoutineSparse(325397); + await provider.deleteRoutine(325397); final plans = provider.getPlans(); expect(plans.length, 0); }); @@ -104,7 +104,7 @@ void main() { .thenAnswer((_) => Future.value(tRepetitionUnits['results'])); // Load the entries - final provider = WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); + final provider = RoutineProvider(mockBaseProvider, exercisesProvider, []); await provider.fetchAndSetRepetitionUnits(); final repetitionUnits = provider.repetitionUnits; @@ -121,7 +121,7 @@ void main() { final ExercisesProvider testExercisesProvider = ExercisesProvider(mockBaseProvider); // Load the entries - final provider = WorkoutPlansProvider(mockBaseProvider, testExercisesProvider, []); + final provider = RoutineProvider(mockBaseProvider, testExercisesProvider, []); await provider.fetchAndSetWeightUnits(); final weightUnits = provider.weightUnits; @@ -148,7 +148,7 @@ void main() { final prefs = await SharedPreferences.getInstance(); // Load the entries - final provider = WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); + final provider = RoutineProvider(mockBaseProvider, exercisesProvider, []); await provider.fetchAndSetUnits(); final prefsJson = jsonDecode(prefs.getString('workoutUnits')!); diff --git a/test/workout/workout_provider_test.mocks.dart b/test/routine/workout_provider_test.mocks.dart similarity index 93% rename from test/workout/workout_provider_test.mocks.dart rename to test/routine/workout_provider_test.mocks.dart index a42145cb..0f80187f 100644 --- a/test/workout/workout_provider_test.mocks.dart +++ b/test/routine/workout_provider_test.mocks.dart @@ -1,5 +1,5 @@ // Mocks generated by Mockito 5.4.0 from annotations -// in wger/test/workout/workout_provider_test.dart. +// in wger/test/routine/workout_provider_test.dart. // Do not manually edit this file. // ignore_for_file: no_leading_underscores_for_library_prefixes @@ -102,7 +102,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { returnValueForMissingStub: null, ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -146,7 +147,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -169,7 +171,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> patch( @@ -184,7 +187,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future<_i3.Response> deleteRequest( diff --git a/test/workout/workout_set_form_test.dart b/test/routine/workout_set_form_test.dart similarity index 76% rename from test/workout/workout_set_form_test.dart rename to test/routine/workout_set_form_test.dart index accc91f4..14b9bffe 100644 --- a/test/workout/workout_set_form_test.dart +++ b/test/routine/workout_set_form_test.dart @@ -23,37 +23,37 @@ import 'package:mockito/annotations.dart'; import 'package:mockito/mockito.dart'; import 'package:provider/provider.dart'; import 'package:wger/helpers/consts.dart'; -import 'package:wger/models/workouts/day.dart'; -import 'package:wger/models/workouts/set.dart'; -import 'package:wger/models/workouts/setting.dart'; +import 'package:wger/models/routines/day.dart'; +import 'package:wger/models/routines/set.dart'; +import 'package:wger/models/routines/setting.dart'; import 'package:wger/providers/base_provider.dart'; import 'package:wger/providers/exercises.dart'; -import 'package:wger/providers/workout_plans.dart'; -import 'package:wger/widgets/workouts/forms.dart'; +import 'package:wger/providers/routine.dart'; +import 'package:wger/widgets/routines/forms.dart'; -import '../../test_data/workouts.dart'; +import '../../test_data/routines.dart'; import 'workout_set_form_test.mocks.dart'; -@GenerateMocks([ExercisesProvider, WgerBaseProvider, WorkoutPlansProvider]) +@GenerateMocks([ExercisesProvider, WgerBaseProvider, RoutineProvider]) void main() { - var mockWorkoutPlans = MockWorkoutPlansProvider(); + var mockRoutineProvider = MockRoutineProvider(); final mockBaseProvider = MockWgerBaseProvider(); final mockExerciseProvider = MockExercisesProvider(); - final workoutPlan = getWorkout(); + final routine = getRoutine(); Day day = Day(); setUp(() { - day = workoutPlan.days.first; - mockWorkoutPlans = MockWorkoutPlansProvider(); + day = routine.days.first; + mockRoutineProvider = MockRoutineProvider(); }); Widget createHomeScreen({locale = 'en'}) { - return ChangeNotifierProvider( - create: (context) => WorkoutPlansProvider( + return ChangeNotifierProvider( + create: (context) => RoutineProvider( mockBaseProvider, mockExerciseProvider, - [workoutPlan], + [routine], ), child: ChangeNotifierProvider( create: (context) => mockExerciseProvider, @@ -81,9 +81,9 @@ void main() { }); testWidgets('Test creating a new set', (WidgetTester tester) async { - when(mockWorkoutPlans.addSet(any)).thenAnswer((_) => Future.value(Set.empty())); - when(mockWorkoutPlans.addSetting(any)).thenAnswer((_) => Future.value(Setting.empty())); - when(mockWorkoutPlans.fetchSmartText(any, any)).thenAnswer((_) => Future.value('2 x 10')); + when(mockRoutineProvider.addSet(any)).thenAnswer((_) => Future.value(Set.empty())); + when(mockRoutineProvider.addSetting(any)).thenAnswer((_) => Future.value(Setting.empty())); + when(mockRoutineProvider.fetchSmartText(any, any)).thenAnswer((_) => Future.value('2 x 10')); await tester.pumpWidget(createHomeScreen()); await tester.pumpAndSettle(); diff --git a/test/workout/workout_set_form_test.mocks.dart b/test/routine/workout_set_form_test.mocks.dart similarity index 92% rename from test/workout/workout_set_form_test.mocks.dart rename to test/routine/workout_set_form_test.mocks.dart index 3eb80a05..f4b7791c 100644 --- a/test/workout/workout_set_form_test.mocks.dart +++ b/test/routine/workout_set_form_test.mocks.dart @@ -1,5 +1,5 @@ // Mocks generated by Mockito 5.4.0 from annotations -// in wger/test/workout/workout_set_form_test.dart. +// in wger/test/routine/workout_set_form_test.dart. // Do not manually edit this file. // ignore_for_file: no_leading_underscores_for_library_prefixes @@ -14,18 +14,18 @@ import 'package:wger/models/exercises/equipment.dart' as _i5; import 'package:wger/models/exercises/language.dart' as _i7; import 'package:wger/models/exercises/muscle.dart' as _i6; import 'package:wger/models/exercises/translation.dart' as _i22; -import 'package:wger/models/workouts/day.dart' as _i13; -import 'package:wger/models/workouts/log.dart' as _i17; -import 'package:wger/models/workouts/repetition_unit.dart' as _i11; -import 'package:wger/models/workouts/session.dart' as _i16; -import 'package:wger/models/workouts/set.dart' as _i14; -import 'package:wger/models/workouts/setting.dart' as _i15; -import 'package:wger/models/workouts/weight_unit.dart' as _i10; -import 'package:wger/models/workouts/workout_plan.dart' as _i12; +import 'package:wger/models/routines/day.dart' as _i13; +import 'package:wger/models/routines/log.dart' as _i17; +import 'package:wger/models/routines/repetition_unit.dart' as _i11; +import 'package:wger/models/routines/routine.dart' as _i12; +import 'package:wger/models/routines/session.dart' as _i16; +import 'package:wger/models/routines/set.dart' as _i14; +import 'package:wger/models/routines/setting.dart' as _i15; +import 'package:wger/models/routines/weight_unit.dart' as _i10; import 'package:wger/providers/auth.dart' as _i8; import 'package:wger/providers/base_provider.dart' as _i2; import 'package:wger/providers/exercises.dart' as _i18; -import 'package:wger/providers/workout_plans.dart' as _i21; +import 'package:wger/providers/routine.dart' as _i21; // ignore_for_file: type=lint // ignore_for_file: avoid_redundant_argument_values @@ -158,8 +158,8 @@ class _FakeRepetitionUnit_11 extends _i1.SmartFake implements _i11.RepetitionUni ); } -class _FakeWorkoutPlan_12 extends _i1.SmartFake implements _i12.WorkoutPlan { - _FakeWorkoutPlan_12( +class _FakeRoutine_12 extends _i1.SmartFake implements _i12.Routine { + _FakeRoutine_12( Object parent, Invocation parentInvocation, ) : super( @@ -234,6 +234,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { Invocation.getter(#baseProvider), ), ) as _i2.WgerBaseProvider); + @override set exerciseBases(List<_i3.ExerciseBase>? exercisesBases) => super.noSuchMethod( Invocation.setter( @@ -242,11 +243,13 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), returnValueForMissingStub: null, ); + @override List<_i3.ExerciseBase> get filteredExerciseBases => (super.noSuchMethod( Invocation.getter(#filteredExerciseBases), returnValue: <_i3.ExerciseBase>[], ) as List<_i3.ExerciseBase>); + @override set filteredExerciseBases(List<_i3.ExerciseBase>? newFilteredExercises) => super.noSuchMethod( Invocation.setter( @@ -255,36 +258,43 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), returnValueForMissingStub: null, ); + @override Map> get exerciseBasesByVariation => (super.noSuchMethod( Invocation.getter(#exerciseBasesByVariation), returnValue: >{}, ) as Map>); + @override List<_i3.ExerciseBase> get bases => (super.noSuchMethod( Invocation.getter(#bases), returnValue: <_i3.ExerciseBase>[], ) as List<_i3.ExerciseBase>); + @override List<_i4.ExerciseCategory> get categories => (super.noSuchMethod( Invocation.getter(#categories), returnValue: <_i4.ExerciseCategory>[], ) as List<_i4.ExerciseCategory>); + @override List<_i6.Muscle> get muscles => (super.noSuchMethod( Invocation.getter(#muscles), returnValue: <_i6.Muscle>[], ) as List<_i6.Muscle>); + @override List<_i5.Equipment> get equipment => (super.noSuchMethod( Invocation.getter(#equipment), returnValue: <_i5.Equipment>[], ) as List<_i5.Equipment>); + @override List<_i7.Language> get languages => (super.noSuchMethod( Invocation.getter(#languages), returnValue: <_i7.Language>[], ) as List<_i7.Language>); + @override set languages(List<_i7.Language>? languages) => super.noSuchMethod( Invocation.setter( @@ -293,11 +303,13 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), returnValueForMissingStub: null, ); + @override bool get hasListeners => (super.noSuchMethod( Invocation.getter(#hasListeners), returnValue: false, ) as bool); + @override _i19.Future setFilters(_i18.Filters? newFilters) => (super.noSuchMethod( Invocation.method( @@ -307,6 +319,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future findByFilters() => (super.noSuchMethod( Invocation.method( @@ -316,6 +329,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override void clear() => super.noSuchMethod( Invocation.method( @@ -324,6 +338,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), returnValueForMissingStub: null, ); + @override _i3.ExerciseBase findExerciseBaseById(int? id) => (super.noSuchMethod( Invocation.method( @@ -338,6 +353,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), ), ) as _i3.ExerciseBase); + @override List<_i3.ExerciseBase> findExerciseBasesByVariationId( int? id, { @@ -351,6 +367,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), returnValue: <_i3.ExerciseBase>[], ) as List<_i3.ExerciseBase>); + @override _i4.ExerciseCategory findCategoryById(int? id) => (super.noSuchMethod( Invocation.method( @@ -365,6 +382,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), ), ) as _i4.ExerciseCategory); + @override _i5.Equipment findEquipmentById(int? id) => (super.noSuchMethod( Invocation.method( @@ -379,6 +397,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), ), ) as _i5.Equipment); + @override _i6.Muscle findMuscleById(int? id) => (super.noSuchMethod( Invocation.method( @@ -393,6 +412,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), ), ) as _i6.Muscle); + @override _i7.Language findLanguageById(int? id) => (super.noSuchMethod( Invocation.method( @@ -407,6 +427,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), ), ) as _i7.Language); + @override _i19.Future fetchAndSetCategories() => (super.noSuchMethod( Invocation.method( @@ -416,6 +437,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future fetchAndSetVariations() => (super.noSuchMethod( Invocation.method( @@ -425,6 +447,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future fetchAndSetMuscles() => (super.noSuchMethod( Invocation.method( @@ -434,6 +457,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future fetchAndSetEquipment() => (super.noSuchMethod( Invocation.method( @@ -443,6 +467,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future fetchAndSetLanguages() => (super.noSuchMethod( Invocation.method( @@ -452,6 +477,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future<_i3.ExerciseBase> fetchAndSetExerciseBase(int? exerciseBaseId) => (super.noSuchMethod( Invocation.method( @@ -466,6 +492,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), )), ) as _i19.Future<_i3.ExerciseBase>); + @override _i3.ExerciseBase readExerciseBaseFromBaseInfo(dynamic baseData) => (super.noSuchMethod( Invocation.method( @@ -480,6 +507,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), ), ) as _i3.ExerciseBase); + @override _i19.Future checkExerciseCacheVersion() => (super.noSuchMethod( Invocation.method( @@ -489,6 +517,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future fetchAndSetExercises() => (super.noSuchMethod( Invocation.method( @@ -498,6 +527,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future> searchExercise( String? name, { @@ -515,6 +545,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), returnValue: _i19.Future>.value(<_i3.ExerciseBase>[]), ) as _i19.Future>); + @override void addListener(_i20.VoidCallback? listener) => super.noSuchMethod( Invocation.method( @@ -523,6 +554,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), returnValueForMissingStub: null, ); + @override void removeListener(_i20.VoidCallback? listener) => super.noSuchMethod( Invocation.method( @@ -531,6 +563,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), returnValueForMissingStub: null, ); + @override void dispose() => super.noSuchMethod( Invocation.method( @@ -539,6 +572,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ), returnValueForMissingStub: null, ); + @override void notifyListeners() => super.noSuchMethod( Invocation.method( @@ -565,6 +599,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { Invocation.getter(#auth), ), ) as _i8.AuthProvider); + @override set auth(_i8.AuthProvider? _auth) => super.noSuchMethod( Invocation.setter( @@ -573,6 +608,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { ), returnValueForMissingStub: null, ); + @override _i9.Client get client => (super.noSuchMethod( Invocation.getter(#client), @@ -581,6 +617,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { Invocation.getter(#client), ), ) as _i9.Client); + @override set client(_i9.Client? _client) => super.noSuchMethod( Invocation.setter( @@ -589,6 +626,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { ), returnValueForMissingStub: null, ); + @override Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( @@ -598,6 +636,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { ), returnValue: {}, ) as Map); + @override Uri makeUrl( String? path, { @@ -628,6 +667,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { ), ), ) as Uri); + @override _i19.Future> fetch(Uri? uri) => (super.noSuchMethod( Invocation.method( @@ -636,6 +676,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { ), returnValue: _i19.Future>.value({}), ) as _i19.Future>); + @override _i19.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( Invocation.method( @@ -644,6 +685,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { ), returnValue: _i19.Future>.value([]), ) as _i19.Future>); + @override _i19.Future> post( Map? data, @@ -659,6 +701,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { ), returnValue: _i19.Future>.value({}), ) as _i19.Future>); + @override _i19.Future> patch( Map? data, @@ -674,6 +717,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { ), returnValue: _i19.Future>.value({}), ) as _i19.Future>); + @override _i19.Future<_i9.Response> deleteRequest( String? url, @@ -700,11 +744,11 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { ) as _i19.Future<_i9.Response>); } -/// A class which mocks [WorkoutPlansProvider]. +/// A class which mocks [RoutineProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProvider { - MockWorkoutPlansProvider() { +class MockRoutineProvider extends _i1.Mock implements _i21.RoutineProvider { + MockRoutineProvider() { _i1.throwOnMissingStub(this); } @@ -716,16 +760,19 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv Invocation.getter(#baseProvider), ), ) as _i2.WgerBaseProvider); + @override - List<_i12.WorkoutPlan> get items => (super.noSuchMethod( + List<_i12.Routine> get items => (super.noSuchMethod( Invocation.getter(#items), - returnValue: <_i12.WorkoutPlan>[], - ) as List<_i12.WorkoutPlan>); + returnValue: <_i12.Routine>[], + ) as List<_i12.Routine>); + @override List<_i10.WeightUnit> get weightUnits => (super.noSuchMethod( Invocation.getter(#weightUnits), returnValue: <_i10.WeightUnit>[], ) as List<_i10.WeightUnit>); + @override _i10.WeightUnit get defaultWeightUnit => (super.noSuchMethod( Invocation.getter(#defaultWeightUnit), @@ -734,11 +781,13 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv Invocation.getter(#defaultWeightUnit), ), ) as _i10.WeightUnit); + @override List<_i11.RepetitionUnit> get repetitionUnits => (super.noSuchMethod( Invocation.getter(#repetitionUnits), returnValue: <_i11.RepetitionUnit>[], ) as List<_i11.RepetitionUnit>); + @override _i11.RepetitionUnit get defaultRepetitionUnit => (super.noSuchMethod( Invocation.getter(#defaultRepetitionUnit), @@ -747,11 +796,13 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv Invocation.getter(#defaultRepetitionUnit), ), ) as _i11.RepetitionUnit); + @override bool get hasListeners => (super.noSuchMethod( Invocation.getter(#hasListeners), returnValue: false, ) as bool); + @override void clear() => super.noSuchMethod( Invocation.method( @@ -760,28 +811,31 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override - List<_i12.WorkoutPlan> getPlans() => (super.noSuchMethod( + List<_i12.Routine> getPlans() => (super.noSuchMethod( Invocation.method( #getPlans, [], ), - returnValue: <_i12.WorkoutPlan>[], - ) as List<_i12.WorkoutPlan>); + returnValue: <_i12.Routine>[], + ) as List<_i12.Routine>); + @override - _i12.WorkoutPlan findById(int? id) => (super.noSuchMethod( + _i12.Routine findById(int? id) => (super.noSuchMethod( Invocation.method( #findById, [id], ), - returnValue: _FakeWorkoutPlan_12( + returnValue: _FakeRoutine_12( this, Invocation.method( #findById, [id], ), ), - ) as _i12.WorkoutPlan); + ) as _i12.Routine); + @override int findIndexById(int? id) => (super.noSuchMethod( Invocation.method( @@ -790,6 +844,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), returnValue: 0, ) as int); + @override void setCurrentPlan(int? id) => super.noSuchMethod( Invocation.method( @@ -798,16 +853,18 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override - void resetCurrentPlan() => super.noSuchMethod( + void resetCurrentRoutine() => super.noSuchMethod( Invocation.method( #resetCurrentPlan, [], ), returnValueForMissingStub: null, ); + @override - _i19.Future fetchAndSetAllPlansFull() => (super.noSuchMethod( + _i19.Future fetchAndSetAllRoutinesFull() => (super.noSuchMethod( Invocation.method( #fetchAndSetAllPlansFull, [], @@ -815,8 +872,9 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override - _i19.Future fetchAndSetAllPlansSparse() => (super.noSuchMethod( + _i19.Future fetchAndSetAllRoutinesSparse() => (super.noSuchMethod( Invocation.method( #fetchAndSetAllPlansSparse, [], @@ -824,50 +882,54 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override - _i19.Future<_i12.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => (super.noSuchMethod( + _i19.Future<_i12.Routine> fetchAndSetRoutineSparse(int? planId) => (super.noSuchMethod( Invocation.method( #fetchAndSetPlanSparse, [planId], ), - returnValue: _i19.Future<_i12.WorkoutPlan>.value(_FakeWorkoutPlan_12( + returnValue: _i19.Future<_i12.Routine>.value(_FakeRoutine_12( this, Invocation.method( #fetchAndSetPlanSparse, [planId], ), )), - ) as _i19.Future<_i12.WorkoutPlan>); + ) as _i19.Future<_i12.Routine>); + @override - _i19.Future<_i12.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => (super.noSuchMethod( + _i19.Future<_i12.Routine> fetchAndSetRoutineFull(int? workoutId) => (super.noSuchMethod( Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], ), - returnValue: _i19.Future<_i12.WorkoutPlan>.value(_FakeWorkoutPlan_12( + returnValue: _i19.Future<_i12.Routine>.value(_FakeRoutine_12( this, Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], ), )), - ) as _i19.Future<_i12.WorkoutPlan>); + ) as _i19.Future<_i12.Routine>); + @override - _i19.Future<_i12.WorkoutPlan> addWorkout(_i12.WorkoutPlan? workout) => (super.noSuchMethod( + _i19.Future<_i12.Routine> addRoutine(_i12.Routine? workout) => (super.noSuchMethod( Invocation.method( #addWorkout, [workout], ), - returnValue: _i19.Future<_i12.WorkoutPlan>.value(_FakeWorkoutPlan_12( + returnValue: _i19.Future<_i12.Routine>.value(_FakeRoutine_12( this, Invocation.method( #addWorkout, [workout], ), )), - ) as _i19.Future<_i12.WorkoutPlan>); + ) as _i19.Future<_i12.Routine>); + @override - _i19.Future editWorkout(_i12.WorkoutPlan? workout) => (super.noSuchMethod( + _i19.Future editRoutine(_i12.Routine? workout) => (super.noSuchMethod( Invocation.method( #editWorkout, [workout], @@ -875,8 +937,9 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override - _i19.Future deleteWorkout(int? id) => (super.noSuchMethod( + _i19.Future deleteRoutine(int? id) => (super.noSuchMethod( Invocation.method( #deleteWorkout, [id], @@ -884,9 +947,10 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future> fetchLogData( - _i12.WorkoutPlan? workout, + _i12.Routine? workout, _i3.ExerciseBase? base, ) => (super.noSuchMethod( @@ -899,6 +963,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), returnValue: _i19.Future>.value({}), ) as _i19.Future>); + @override _i19.Future fetchAndSetRepetitionUnits() => (super.noSuchMethod( Invocation.method( @@ -908,6 +973,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future fetchAndSetWeightUnits() => (super.noSuchMethod( Invocation.method( @@ -917,6 +983,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future fetchAndSetUnits() => (super.noSuchMethod( Invocation.method( @@ -926,10 +993,11 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future<_i13.Day> addDay( _i13.Day? day, - _i12.WorkoutPlan? workout, + _i12.Routine? workout, ) => (super.noSuchMethod( Invocation.method( @@ -950,6 +1018,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), )), ) as _i19.Future<_i13.Day>); + @override _i19.Future editDay(_i13.Day? day) => (super.noSuchMethod( Invocation.method( @@ -959,6 +1028,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future deleteDay(_i13.Day? day) => (super.noSuchMethod( Invocation.method( @@ -968,6 +1038,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future<_i14.Set> addSet(_i14.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -982,6 +1053,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), )), ) as _i19.Future<_i14.Set>); + @override _i19.Future editSet(_i14.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -991,6 +1063,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future> reorderSets( List<_i14.Set>? sets, @@ -1006,6 +1079,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), returnValue: _i19.Future>.value(<_i14.Set>[]), ) as _i19.Future>); + @override _i19.Future fetchComputedSettings(_i14.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -1015,6 +1089,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future fetchSmartText( _i14.Set? workoutSet, @@ -1030,6 +1105,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), returnValue: _i19.Future.value(''), ) as _i19.Future); + @override _i19.Future deleteSet(_i14.Set? workoutSet) => (super.noSuchMethod( Invocation.method( @@ -1039,6 +1115,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future<_i15.Setting> addSetting(_i15.Setting? workoutSetting) => (super.noSuchMethod( Invocation.method( @@ -1053,6 +1130,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), )), ) as _i19.Future<_i15.Setting>); + @override _i19.Future fetchSessionData() => (super.noSuchMethod( Invocation.method( @@ -1061,6 +1139,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), returnValue: _i19.Future.value(), ) as _i19.Future); + @override _i19.Future<_i16.WorkoutSession> addSession(_i16.WorkoutSession? session) => (super.noSuchMethod( Invocation.method( @@ -1075,6 +1154,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), )), ) as _i19.Future<_i16.WorkoutSession>); + @override _i19.Future<_i17.Log> addLog(_i17.Log? log) => (super.noSuchMethod( Invocation.method( @@ -1089,6 +1169,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), )), ) as _i19.Future<_i17.Log>); + @override _i19.Future deleteLog(_i17.Log? log) => (super.noSuchMethod( Invocation.method( @@ -1098,6 +1179,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv returnValue: _i19.Future.value(), returnValueForMissingStub: _i19.Future.value(), ) as _i19.Future); + @override void addListener(_i20.VoidCallback? listener) => super.noSuchMethod( Invocation.method( @@ -1106,6 +1188,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void removeListener(_i20.VoidCallback? listener) => super.noSuchMethod( Invocation.method( @@ -1114,6 +1197,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void dispose() => super.noSuchMethod( Invocation.method( @@ -1122,6 +1206,7 @@ class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProv ), returnValueForMissingStub: null, ); + @override void notifyListeners() => super.noSuchMethod( Invocation.method( diff --git a/test/user/provider_test.mocks.dart b/test/user/provider_test.mocks.dart index 11199fbc..ca0652c2 100644 --- a/test/user/provider_test.mocks.dart +++ b/test/user/provider_test.mocks.dart @@ -102,7 +102,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { returnValueForMissingStub: null, ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -146,7 +147,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -169,7 +171,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> patch( @@ -184,7 +187,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future<_i3.Response> deleteRequest( diff --git a/test/weight/weight_provider_test.mocks.dart b/test/weight/weight_provider_test.mocks.dart index e60495f5..59888956 100644 --- a/test/weight/weight_provider_test.mocks.dart +++ b/test/weight/weight_provider_test.mocks.dart @@ -102,7 +102,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { returnValueForMissingStub: null, ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => + (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -146,7 +147,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> fetchPaginated(Uri? uri) => (super.noSuchMethod( @@ -169,7 +171,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future> patch( @@ -184,7 +187,8 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: _i5.Future>.value({}), + returnValue: + _i5.Future>.value({}), ) as _i5.Future>); @override _i5.Future<_i3.Response> deleteRequest( diff --git a/test/weight/weight_screen_test.mocks.dart b/test/weight/weight_screen_test.mocks.dart index 7de6b61d..f89f2247 100644 --- a/test/weight/weight_screen_test.mocks.dart +++ b/test/weight/weight_screen_test.mocks.dart @@ -22,7 +22,8 @@ import 'package:wger/providers/body_weight.dart' as _i4; // ignore_for_file: camel_case_types // ignore_for_file: subtype_of_sealed_class -class _FakeWgerBaseProvider_0 extends _i1.SmartFake implements _i2.WgerBaseProvider { +class _FakeWgerBaseProvider_0 extends _i1.SmartFake + implements _i2.WgerBaseProvider { _FakeWgerBaseProvider_0( Object parent, Invocation parentInvocation, @@ -45,7 +46,8 @@ class _FakeWeightEntry_1 extends _i1.SmartFake implements _i3.WeightEntry { /// A class which mocks [BodyWeightProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockBodyWeightProvider extends _i1.Mock implements _i4.BodyWeightProvider { +class MockBodyWeightProvider extends _i1.Mock + implements _i4.BodyWeightProvider { MockBodyWeightProvider() { _i1.throwOnMissingStub(this); } @@ -99,7 +101,8 @@ class MockBodyWeightProvider extends _i1.Mock implements _i4.BodyWeightProvider ), ) as _i3.WeightEntry); @override - _i3.WeightEntry? findByDate(DateTime? date) => (super.noSuchMethod(Invocation.method( + _i3.WeightEntry? findByDate(DateTime? date) => + (super.noSuchMethod(Invocation.method( #findByDate, [date], )) as _i3.WeightEntry?); @@ -109,10 +112,12 @@ class MockBodyWeightProvider extends _i1.Mock implements _i4.BodyWeightProvider #fetchAndSetEntries, [], ), - returnValue: _i5.Future>.value(<_i3.WeightEntry>[]), + returnValue: + _i5.Future>.value(<_i3.WeightEntry>[]), ) as _i5.Future>); @override - _i5.Future<_i3.WeightEntry> addEntry(_i3.WeightEntry? entry) => (super.noSuchMethod( + _i5.Future<_i3.WeightEntry> addEntry(_i3.WeightEntry? entry) => + (super.noSuchMethod( Invocation.method( #addEntry, [entry], diff --git a/test_data/workouts.dart b/test_data/routines.dart similarity index 88% rename from test_data/workouts.dart rename to test_data/routines.dart index 229e3a47..2b2efa0b 100644 --- a/test_data/workouts.dart +++ b/test_data/routines.dart @@ -16,13 +16,13 @@ * along with this program. If not, see . */ -import 'package:wger/models/workouts/day.dart'; -import 'package:wger/models/workouts/log.dart'; -import 'package:wger/models/workouts/repetition_unit.dart'; -import 'package:wger/models/workouts/set.dart'; -import 'package:wger/models/workouts/setting.dart'; -import 'package:wger/models/workouts/weight_unit.dart'; -import 'package:wger/models/workouts/workout_plan.dart'; +import 'package:wger/models/routines/day.dart'; +import 'package:wger/models/routines/log.dart'; +import 'package:wger/models/routines/repetition_unit.dart'; +import 'package:wger/models/routines/routine.dart'; +import 'package:wger/models/routines/set.dart'; +import 'package:wger/models/routines/setting.dart'; +import 'package:wger/models/routines/weight_unit.dart'; import './exercises.dart'; @@ -32,7 +32,7 @@ const weightUnit2 = WeightUnit(id: 2, name: 'metric tonnes'); const RepetitionUnit repetitionUnit1 = RepetitionUnit(id: 1, name: 'Repetitions'); const RepetitionUnit repetitionUnit2 = RepetitionUnit(id: 2, name: 'Hours'); -WorkoutPlan getWorkout() { +Routine getRoutine() { final testBases = getTestExerciseBases(); final log1 = Log.empty() @@ -41,7 +41,7 @@ WorkoutPlan getWorkout() { ..rir = '1.5' ..date = DateTime(2021, 5, 1) ..reps = 10 - ..workoutPlan = 1; + ..routineId = 1; log1.exerciseBase = testBases[0]; log1.weightUnit = weightUnit1; log1.repetitionUnit = repetitionUnit1; @@ -52,7 +52,7 @@ WorkoutPlan getWorkout() { ..rir = '2' ..date = DateTime(2021, 5, 1) ..reps = 12 - ..workoutPlan = 1; + ..routineId = 1; log2.exerciseBase = testBases[0]; log2.weightUnit = weightUnit1; log2.repetitionUnit = repetitionUnit1; @@ -63,7 +63,7 @@ WorkoutPlan getWorkout() { ..rir = '' ..date = DateTime(2021, 5, 2) ..reps = 8 - ..workoutPlan = 1; + ..routineId = 1; log3.exerciseBase = testBases[1]; log3.weightUnit = weightUnit1; log3.repetitionUnit = repetitionUnit1; @@ -146,7 +146,7 @@ WorkoutPlan getWorkout() { final dayChestShoulders = Day() ..id = 1 - ..workoutId = 1 + ..routineId = 1 ..description = 'chest, shoulders' ..daysOfWeek = [1, 2]; dayChestShoulders.sets.add(setBenchPress); @@ -154,12 +154,12 @@ WorkoutPlan getWorkout() { final dayLegs = Day() ..id = 2 - ..workoutId = 1 + ..routineId = 1 ..description = 'legs' ..daysOfWeek = [4]; dayLegs.sets.add(setSquat); - final workout = WorkoutPlan( + final workout = Routine( id: 1, creationDate: DateTime(2021, 01, 01), name: '3 day workout',