diff --git a/integration_test/1_dashboard.dart b/integration_test/1_dashboard.dart index cbd5d2ab..a64a9a4d 100644 --- a/integration_test/1_dashboard.dart +++ b/integration_test/1_dashboard.dart @@ -5,10 +5,12 @@ 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/user.dart'; import 'package:wger/providers/workout_plans.dart'; import 'package:wger/screens/dashboard.dart'; import 'package:wger/theme/theme.dart'; +import '../test/exercises/contribute_exercise_test.mocks.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'; @@ -17,6 +19,7 @@ import '../test_data/body_weight.dart'; import '../test_data/exercises.dart'; import '../test_data/measurements.dart'; import '../test_data/nutritional_plans.dart'; +import '../test_data/profile.dart'; import '../test_data/workouts.dart'; Widget createDashboardScreen({locale = 'en'}) { @@ -42,13 +45,19 @@ Widget createDashboardScreen({locale = 'en'}) { when(mockNutritionProvider.items).thenReturn([getNutritionalPlan()]); final mockWeightProvider = MockBodyWeightProvider(); - when(mockWeightProvider.items).thenReturn(getWeightEntries()); + when(mockWeightProvider.items).thenReturn(getScreenshotWeightEntries()); final mockMeasurementProvider = MockMeasurementProvider(); when(mockMeasurementProvider.categories).thenReturn(getMeasurementCategories()); + final mockUserProvider = MockUserProvider(); + when(mockUserProvider.profile).thenReturn(tProfile1); + return MultiProvider( providers: [ + ChangeNotifierProvider( + create: (context) => mockUserProvider, + ), ChangeNotifierProvider( create: (context) => mockWorkoutProvider, ), diff --git a/integration_test/6_weight.dart b/integration_test/6_weight.dart index 09522c55..d8ca8989 100644 --- a/integration_test/6_weight.dart +++ b/integration_test/6_weight.dart @@ -1,36 +1,34 @@ 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/models/body_weight/weight_entry.dart'; import 'package:wger/providers/body_weight.dart'; +import 'package:wger/providers/user.dart'; import 'package:wger/screens/form_screen.dart'; import 'package:wger/screens/weight_screen.dart'; import 'package:wger/theme/theme.dart'; import '../test/utils.dart'; +import '../test/weight/weight_screen_test.mocks.dart'; +import '../test_data/body_weight.dart'; +import '../test_data/profile.dart'; Widget createWeightScreen({locale = 'en'}) { - final provider = BodyWeightProvider(mockBaseProvider); - provider.items = [ - WeightEntry(id: 1, weight: 86, date: DateTime(2021, 01, 01)), - WeightEntry(id: 2, weight: 81, date: DateTime(2021, 01, 10)), - WeightEntry(id: 3, weight: 82, date: DateTime(2021, 01, 20)), - WeightEntry(id: 4, weight: 83, date: DateTime(2021, 01, 30)), - WeightEntry(id: 5, weight: 86, date: DateTime(2021, 02, 20)), - WeightEntry(id: 6, weight: 90, date: DateTime(2021, 02, 28)), - WeightEntry(id: 7, weight: 91, date: DateTime(2021, 03, 20)), - WeightEntry(id: 8, weight: 91.1, date: DateTime(2021, 03, 30)), - WeightEntry(id: 9, weight: 90, date: DateTime(2021, 05, 1)), - WeightEntry(id: 10, weight: 91, date: DateTime(2021, 6, 5)), - WeightEntry(id: 11, weight: 89, date: DateTime(2021, 6, 20)), - WeightEntry(id: 12, weight: 88, date: DateTime(2021, 7, 15)), - WeightEntry(id: 13, weight: 86, date: DateTime(2021, 7, 20)), - WeightEntry(id: 14, weight: 83, date: DateTime(2021, 7, 30)), - WeightEntry(id: 15, weight: 80, date: DateTime(2021, 8, 10)) - ]; + final mockWeightProvider = BodyWeightProvider(mockBaseProvider); + mockWeightProvider.items = getScreenshotWeightEntries(); - return ChangeNotifierProvider( - create: (context) => provider, + final mockUserProvider = MockUserProvider(); + when(mockUserProvider.profile).thenReturn(tProfile1); + + return MultiProvider( + providers: [ + ChangeNotifierProvider( + create: (context) => mockUserProvider, + ), + ChangeNotifierProvider( + create: (context) => mockWeightProvider, + ), + ], child: MaterialApp( locale: Locale(locale), debugShowCheckedModeBanner: false, diff --git a/integration_test/make_screenshots_test.dart b/integration_test/make_screenshots_test.dart index 5dcddb1e..639aaaf8 100644 --- a/integration_test/make_screenshots_test.dart +++ b/integration_test/make_screenshots_test.dart @@ -37,15 +37,12 @@ const languages = [ // Note: it seems if too many languages are processed at once, some processes // disappear and no images are written. Doing this in smaller steps works fine - /* 'ca', 'de-DE', 'el-GR', 'en-US', 'es-ES', - */ - /* 'fr-FR', 'hi-IN', @@ -54,12 +51,15 @@ const languages = [ 'pt-BR', */ + /* 'nb-NO', 'pl-PL', 'ru-RU', 'tr-TR', 'uk', 'zh-CN' + + */ ]; void main() { diff --git a/test_data/body_weight.dart b/test_data/body_weight.dart index 81dc4e0d..b9f89200 100644 --- a/test_data/body_weight.dart +++ b/test_data/body_weight.dart @@ -24,3 +24,23 @@ final testWeightEntry2 = WeightEntry(id: 2, weight: 81, date: DateTime(2021, 01, List getWeightEntries() { return [testWeightEntry1, testWeightEntry2]; } + +List getScreenshotWeightEntries() { + return [ + WeightEntry(id: 1, weight: 86, date: DateTime(2021, 01, 01)), + WeightEntry(id: 2, weight: 81, date: DateTime(2021, 01, 10)), + WeightEntry(id: 3, weight: 82, date: DateTime(2021, 01, 20)), + WeightEntry(id: 4, weight: 83, date: DateTime(2021, 01, 30)), + WeightEntry(id: 5, weight: 86, date: DateTime(2021, 02, 20)), + WeightEntry(id: 6, weight: 90, date: DateTime(2021, 02, 28)), + WeightEntry(id: 7, weight: 91, date: DateTime(2021, 03, 20)), + WeightEntry(id: 8, weight: 91.1, date: DateTime(2021, 03, 30)), + WeightEntry(id: 9, weight: 90, date: DateTime(2021, 05, 1)), + WeightEntry(id: 10, weight: 91, date: DateTime(2021, 6, 5)), + WeightEntry(id: 11, weight: 89, date: DateTime(2021, 6, 20)), + WeightEntry(id: 12, weight: 88, date: DateTime(2021, 7, 15)), + WeightEntry(id: 13, weight: 86, date: DateTime(2021, 7, 20)), + WeightEntry(id: 14, weight: 83, date: DateTime(2021, 7, 30)), + WeightEntry(id: 15, weight: 80, date: DateTime(2021, 8, 10)), + ]; +}