mirror of
https://github.com/wger-project/flutter.git
synced 2026-02-18 00:17:48 +01:00
Add missing user provider to make screenshot generation work again
This commit is contained in:
@@ -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<UserProvider>(
|
||||
create: (context) => mockUserProvider,
|
||||
),
|
||||
ChangeNotifierProvider<WorkoutPlansProvider>(
|
||||
create: (context) => mockWorkoutProvider,
|
||||
),
|
||||
|
||||
@@ -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<BodyWeightProvider>(
|
||||
create: (context) => provider,
|
||||
final mockUserProvider = MockUserProvider();
|
||||
when(mockUserProvider.profile).thenReturn(tProfile1);
|
||||
|
||||
return MultiProvider(
|
||||
providers: [
|
||||
ChangeNotifierProvider<UserProvider>(
|
||||
create: (context) => mockUserProvider,
|
||||
),
|
||||
ChangeNotifierProvider<BodyWeightProvider>(
|
||||
create: (context) => mockWeightProvider,
|
||||
),
|
||||
],
|
||||
child: MaterialApp(
|
||||
locale: Locale(locale),
|
||||
debugShowCheckedModeBanner: false,
|
||||
|
||||
@@ -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() {
|
||||
|
||||
@@ -24,3 +24,23 @@ final testWeightEntry2 = WeightEntry(id: 2, weight: 81, date: DateTime(2021, 01,
|
||||
List<WeightEntry> getWeightEntries() {
|
||||
return [testWeightEntry1, testWeightEntry2];
|
||||
}
|
||||
|
||||
List<WeightEntry> 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)),
|
||||
];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user