From c514842b598f0b16875b37e7df475e39a8342e5a Mon Sep 17 00:00:00 2001 From: Roland Geider Date: Thu, 16 Nov 2023 21:36:21 +0100 Subject: [PATCH] Lint the code with a line length of 100 This makes it easier to understand the diffs --- flatpak/scripts/flatpak_packager.dart | 46 ++--- flatpak/scripts/flatpak_shared.dart | 55 ++---- flatpak/scripts/manifest_generator.dart | 18 +- integration_test/1_dashboard.dart | 9 +- integration_test/2_workout.dart | 3 +- integration_test/3_gym_mode.dart | 6 +- integration_test/4_measurements.dart | 3 +- integration_test/app_test.dart | 27 +-- .../exercise_DB/exercise_database.dart | 12 +- .../exercise_DB/exercise_database.g.dart | 168 +++++++----------- lib/database/exercise_DB/type_converters.dart | 6 +- lib/exceptions/http_exception.dart | 5 +- lib/helpers/charts.dart | 4 +- lib/helpers/exercises/forms.dart | 6 +- lib/helpers/json.dart | 3 +- lib/helpers/misc.dart | 4 +- lib/helpers/platform.dart | 3 +- lib/helpers/ui.dart | 9 +- lib/main.dart | 32 ++-- lib/models/body_weight/weight_entry.dart | 3 +- lib/models/body_weight/weight_entry.g.dart | 3 +- lib/models/exercises/base.dart | 3 +- lib/models/exercises/base.g.dart | 22 +-- lib/models/exercises/category.dart | 3 +- lib/models/exercises/category.g.dart | 3 +- lib/models/exercises/comment.dart | 3 +- lib/models/exercises/equipment.dart | 3 +- lib/models/exercises/image.dart | 3 +- lib/models/exercises/image.g.dart | 3 +- lib/models/exercises/language.dart | 3 +- lib/models/exercises/muscle.dart | 3 +- lib/models/exercises/translation.dart | 3 +- lib/models/exercises/translation.g.dart | 7 +- lib/models/exercises/variation.dart | 3 +- .../measurements/measurement_category.g.dart | 4 +- .../measurements/measurement_entry.dart | 10 +- .../measurements/measurement_entry.g.dart | 3 +- lib/models/nutrition/image.dart | 3 +- lib/models/nutrition/image.g.dart | 3 +- lib/models/nutrition/ingredient.dart | 15 +- lib/models/nutrition/ingredient.g.dart | 3 +- .../nutrition/ingredient_weight_unit.g.dart | 6 +- lib/models/nutrition/log.dart | 8 +- lib/models/nutrition/log.g.dart | 9 +- lib/models/nutrition/meal.dart | 6 +- lib/models/nutrition/meal_item.dart | 3 +- lib/models/nutrition/nutritional_plan.dart | 27 +-- lib/models/nutrition/nutritional_plan.g.dart | 3 +- lib/models/nutrition/nutritional_values.dart | 4 +- lib/models/nutrition/weight_unit.dart | 3 +- lib/models/nutrition/weight_unit.g.dart | 3 +- lib/models/user/profile.dart | 3 +- lib/models/user/profile.g.dart | 7 +- lib/models/workouts/day.dart | 3 +- lib/models/workouts/log.dart | 7 +- lib/models/workouts/repetition_unit.dart | 3 +- lib/models/workouts/repetition_unit.g.dart | 3 +- lib/models/workouts/session.dart | 15 +- lib/models/workouts/session.g.dart | 12 +- lib/models/workouts/set.dart | 4 +- lib/models/workouts/setting.dart | 16 +- lib/models/workouts/weight_unit.dart | 3 +- lib/models/workouts/weight_unit.g.dart | 3 +- lib/models/workouts/workout_plan.dart | 10 +- lib/models/workouts/workout_plan.g.dart | 3 +- lib/providers/add_exercise.dart | 27 +-- lib/providers/auth.dart | 17 +- lib/providers/base_provider.dart | 3 +- lib/providers/body_weight.dart | 6 +- lib/providers/exercises.dart | 97 ++++------ lib/providers/gallery.dart | 12 +- lib/providers/measurement.dart | 28 ++- lib/providers/nutrition.dart | 42 ++--- lib/providers/user.dart | 3 +- lib/providers/workout_plans.dart | 80 +++------ lib/screens/add_exercise_screen.dart | 22 +-- lib/screens/auth_screen.dart | 54 ++---- lib/screens/exercise_screen.dart | 7 +- lib/screens/exercises_screen.dart | 3 +- lib/screens/form_screen.dart | 3 +- lib/screens/home_tabs_screen.dart | 3 +- lib/screens/measurement_entries_screen.dart | 21 +-- lib/screens/nutritional_diary_screen.dart | 6 +- lib/screens/nutritional_plan_screen.dart | 9 +- lib/screens/nutritional_plans_screen.dart | 3 +- lib/screens/workout_plan_screen.dart | 9 +- lib/screens/workout_plans_screen.dart | 3 +- lib/theme/theme.dart | 6 +- .../add_exercise_dropdown_button.dart | 6 +- .../add_exercise_multiselect_button.dart | 11 +- .../add_exercise/add_exercise_text_area.dart | 6 +- .../mixins/image_picker_mixin.dart | 9 +- lib/widgets/add_exercise/preview_images.dart | 11 +- .../add_exercise/steps/step1basics.dart | 20 +-- .../add_exercise/steps/step2variations.dart | 20 +-- .../add_exercise/steps/step3description.dart | 3 +- .../add_exercise/steps/step4translations.dart | 10 +- .../add_exercise/steps/step5images.dart | 6 +- lib/widgets/core/about.dart | 22 +-- lib/widgets/core/app_bar.dart | 12 +- lib/widgets/core/core.dart | 3 +- lib/widgets/dashboard/calendar.dart | 23 +-- lib/widgets/dashboard/widgets.dart | 76 +++----- lib/widgets/exercises/exercises.dart | 27 +-- lib/widgets/exercises/filter_modal.dart | 9 +- lib/widgets/exercises/filter_row.dart | 13 +- lib/widgets/exercises/forms.dart | 6 +- lib/widgets/exercises/list_tile.dart | 10 +- lib/widgets/exercises/videos.dart | 3 +- lib/widgets/gallery/forms.dart | 9 +- lib/widgets/gallery/overview.dart | 12 +- lib/widgets/measurements/categories_card.dart | 4 +- lib/widgets/measurements/charts.dart | 19 +- lib/widgets/measurements/entries.dart | 10 +- lib/widgets/measurements/forms.dart | 47 ++--- lib/widgets/nutrition/charts.dart | 21 +-- lib/widgets/nutrition/forms.dart | 64 +++---- lib/widgets/nutrition/helpers.dart | 3 +- lib/widgets/nutrition/meal.dart | 34 ++-- .../nutrition/nutritional_diary_detail.dart | 67 +++---- .../nutrition/nutritional_plan_detail.dart | 64 +++---- .../nutrition/nutritional_plans_list.dart | 21 +-- lib/widgets/nutrition/widgets.dart | 50 ++---- lib/widgets/user/forms.dart | 10 +- lib/widgets/weight/entries_list.dart | 11 +- lib/widgets/weight/forms.dart | 15 +- lib/widgets/workouts/app_bar.dart | 3 +- lib/widgets/workouts/charts.dart | 16 +- lib/widgets/workouts/day.dart | 41 ++--- lib/widgets/workouts/forms.dart | 127 +++++-------- lib/widgets/workouts/gym_mode.dart | 99 ++++------- lib/widgets/workouts/log.dart | 16 +- lib/widgets/workouts/workout_plan_detail.dart | 4 +- lib/widgets/workouts/workout_plans_list.dart | 26 +-- test/auth/auth_provider_test.dart | 24 +-- test/auth/auth_screen_test.dart | 6 +- test/exercises/contribute_exercise_test.dart | 15 +- .../contribute_exercise_test.mocks.dart | 9 +- .../exercise_provider_load_test.dart | 9 +- test/exercises/exercise_provider_test.dart | 82 +++------ .../exercises_detail_widget_test.dart | 18 +- test/gallery/gallery_form_test.dart | 12 +- test/gallery/gallery_form_test.mocks.dart | 12 +- test/gallery/gallery_provider_test.dart | 3 +- test/gallery/gallery_screen_test.dart | 18 +- test/gallery/gallery_screen_test.mocks.dart | 12 +- .../measurement_categories_screen_test.dart | 31 +--- ...surement_categories_screen_test.mocks.dart | 12 +- .../measurement_category_test.dart | 9 +- .../measurement_entries_screen_test.dart | 23 +-- test/measurements/measurement_entry_test.dart | 6 +- .../measurement_provider_test.dart | 83 ++++----- .../measurement_provider_test.mocks.dart | 12 +- test/nutrition/nutrition_provider_test.dart | 9 +- test/nutrition/nutritional_diary_test.dart | 15 +- .../nutrition/nutritional_meal_form_test.dart | 3 +- .../nutritional_meal_form_test.mocks.dart | 39 ++-- .../nutritional_meal_item_form_test.dart | 44 ++--- .../nutrition/nutritional_plan_form_test.dart | 21 +-- .../nutritional_plan_form_test.mocks.dart | 39 ++-- .../nutritional_plan_model_test.dart | 9 +- .../nutritional_plan_screen_test.dart | 9 +- .../nutritional_plan_screen_test.mocks.dart | 30 ++-- .../nutritional_plans_screen_test.dart | 15 +- .../nutritional_plans_screen_test.mocks.dart | 30 ++-- .../nutritional_values_class_test.dart | 15 +- test/other/base_provider_test.dart | 33 ++-- test/other/base_provider_test.mocks.dart | 9 +- test/user/provider_test.mocks.dart | 12 +- test/utils.dart | 3 +- test/weight/weight_model_test.dart | 21 +-- test/weight/weight_provider_test.dart | 23 +-- test/weight/weight_provider_test.mocks.dart | 12 +- test/weight/weight_screen_test.dart | 15 +- test/weight/weight_screen_test.mocks.dart | 15 +- test/workout/gym_mode_screen_test.dart | 9 +- test/workout/gym_mode_screen_test.mocks.dart | 36 ++-- test/workout/plate_calculator_test.dart | 6 +- .../repetition_unit_form_widget_test.dart | 6 +- ...epetition_unit_form_widget_test.mocks.dart | 39 ++-- .../workout/weight_unit_form_widget_test.dart | 3 +- .../weight_unit_form_widget_test.mocks.dart | 15 +- test/workout/workout_day_form_test.dart | 15 +- test/workout/workout_day_form_test.mocks.dart | 39 ++-- test/workout/workout_form_test.dart | 47 ++--- test/workout/workout_form_test.mocks.dart | 39 ++-- test/workout/workout_plan_model_test.dart | 9 +- test/workout/workout_plan_screen_test.dart | 12 +- .../workout_plan_screen_test.mocks.dart | 12 +- test/workout/workout_plans_screen_test.dart | 27 +-- .../workout_plans_screen_test.mocks.dart | 12 +- test/workout/workout_provider_test.dart | 33 ++-- test/workout/workout_provider_test.mocks.dart | 12 +- test/workout/workout_set_form_test.dart | 15 +- test/workout/workout_set_form_test.mocks.dart | 72 +++----- test_data/body_weight.dart | 6 +- test_data/exercises.dart | 29 +-- test_data/measurements.dart | 21 +-- test_data/workouts.dart | 3 +- test_driver/screenshot_driver.dart | 3 +- 200 files changed, 1172 insertions(+), 2420 deletions(-) diff --git a/flatpak/scripts/flatpak_packager.dart b/flatpak/scripts/flatpak_packager.dart index 36b5e4a0..5346a605 100644 --- a/flatpak/scripts/flatpak_packager.dart +++ b/flatpak/scripts/flatpak_packager.dart @@ -18,8 +18,7 @@ void main(List arguments) async { 'You must run this script with a metadata file argument, using the --meta flag.'); } if (arguments.length == metaIndex + 1) { - throw Exception( - 'The --meta flag must be followed by the path to the metadata file.'); + throw Exception('The --meta flag must be followed by the path to the metadata file.'); } final metaFile = File(arguments[metaIndex + 1]); @@ -31,18 +30,14 @@ void main(List arguments) async { final fetchFromGithub = arguments.contains('--github'); - final outputDir = - Directory('${Directory.current.path}/flatpak_generator_exports'); + final outputDir = Directory('${Directory.current.path}/flatpak_generator_exports'); outputDir.createSync(); - final packageGenerator = - PackageGenerator(inputDir: metaFile.parent, meta: meta); + final packageGenerator = PackageGenerator(inputDir: metaFile.parent, meta: meta); packageGenerator.generatePackage( outputDir, - PackageGenerator.runningOnARM() - ? CPUArchitecture.aarch64 - : CPUArchitecture.x86_64, + PackageGenerator.runningOnARM() ? CPUArchitecture.aarch64 : CPUArchitecture.x86_64, fetchFromGithub, ); } @@ -54,8 +49,8 @@ class PackageGenerator { PackageGenerator({required this.inputDir, required this.meta}); - Future generatePackage(Directory outputDir, CPUArchitecture arch, - bool fetchReleasesFromGithub) async { + Future generatePackage( + Directory outputDir, CPUArchitecture arch, bool fetchReleasesFromGithub) async { final tempDir = outputDir.createTempSync('flutter_generator_temp'); final appId = meta.appId; @@ -90,8 +85,7 @@ class PackageGenerator { } final editedAppDataContent = AppDataModifier.replaceVersions( - origAppDataFile.readAsStringSync(), - await meta.getReleases(fetchReleasesFromGithub)); + origAppDataFile.readAsStringSync(), await meta.getReleases(fetchReleasesFromGithub)); final editedAppDataFile = File('${tempDir.path}/$appId.appdata.xml'); editedAppDataFile.writeAsStringSync(editedAppDataContent); @@ -107,21 +101,17 @@ class PackageGenerator { final destDir = Directory('${tempDir.path}/bin'); destDir.createSync(); - final baseFileName = - '${meta.lowercaseAppName}-linux-${arch.flatpakArchCode}'; + final baseFileName = '${meta.lowercaseAppName}-linux-${arch.flatpakArchCode}'; final packagePath = '${outputDir.absolute.path}/$baseFileName.tar.gz'; - Process.runSync( - 'cp', ['-r', '${buildDir.absolute.path}/.', destDir.absolute.path]); - Process.runSync('tar', ['-czvf', packagePath, '.'], - workingDirectory: tempDir.absolute.path); + Process.runSync('cp', ['-r', '${buildDir.absolute.path}/.', destDir.absolute.path]); + Process.runSync('tar', ['-czvf', packagePath, '.'], workingDirectory: tempDir.absolute.path); print('Generated $packagePath'); final preShasum = Process.runSync('shasum', ['-a', '256', packagePath]); final sha256 = preShasum.stdout.toString().split(' ').first; - final shaFile = await File('${outputDir.path}/$baseFileName.sha256') - .writeAsString(sha256); + final shaFile = await File('${outputDir.path}/$baseFileName.sha256').writeAsString(sha256); print('Generated ${shaFile.path}'); shaByArch.putIfAbsent(arch, () => sha256); @@ -138,21 +128,17 @@ class PackageGenerator { // updates releases in ${appName}.appdata.xml class AppDataModifier { - static String replaceVersions( - String origAppDataContent, List versions) { - final joinedReleases = versions - .map((v) => '\t\t') - .join('\n'); - final releasesSection = - '\n$joinedReleases\n\t'; //todo check this + static String replaceVersions(String origAppDataContent, List versions) { + final joinedReleases = + versions.map((v) => '\t\t').join('\n'); + final releasesSection = '\n$joinedReleases\n\t'; //todo check this if (origAppDataContent.contains('') .replaceFirst(RegExp(''), releasesSection) .replaceAll('<~>', '\n'); } else { - return origAppDataContent.replaceFirst( - '', '\n\t$releasesSection\n'); + return origAppDataContent.replaceFirst('', '\n\t$releasesSection\n'); } } } diff --git a/flatpak/scripts/flatpak_shared.dart b/flatpak/scripts/flatpak_shared.dart index 223387d2..4e16b65f 100644 --- a/flatpak/scripts/flatpak_shared.dart +++ b/flatpak/scripts/flatpak_shared.dart @@ -43,9 +43,8 @@ class Icon { _fileExtension = path.split('.').last; } - String getFilename(String appId) => (type == _symbolicType) - ? '$appId-symbolic.$_fileExtension' - : '$appId.$_fileExtension'; + String getFilename(String appId) => + (type == _symbolicType) ? '$appId-symbolic.$_fileExtension' : '$appId.$_fileExtension'; } class GithubReleases { @@ -74,8 +73,7 @@ class GithubReleases { final releaseJsonContent = (await http.get(Uri( scheme: 'https', host: 'api.github.com', - path: - '/repos/$githubReleaseOrganization/$githubReleaseProject/releases'))) + path: '/repos/$githubReleaseOrganization/$githubReleaseProject/releases'))) .body; final decodedJson = jsonDecode(releaseJsonContent) as List; @@ -86,10 +84,8 @@ class GithubReleases { await Future.forEach(decodedJson, (dynamic releaseDynamic) async { final releaseMap = releaseDynamic as Map; - final releaseDateAndTime = - DateTime.parse(releaseMap['published_at'] as String); - final releaseDateString = - releaseDateAndTime.toIso8601String().split('T').first; + final releaseDateAndTime = DateTime.parse(releaseMap['published_at'] as String); + final releaseDateString = releaseDateAndTime.toIso8601String().split('T').first; if (latestReleaseAssetDate == null || (latestReleaseAssetDate?.compareTo(releaseDateAndTime) == -1)) { @@ -100,8 +96,7 @@ class GithubReleases { } } - releases.add(Release( - version: releaseMap['name'] as String, date: releaseDateString)); + releases.add(Release(version: releaseMap['name'] as String, date: releaseDateString)); }); if (releases.isNotEmpty) { @@ -120,8 +115,7 @@ class GithubReleases { final downloadUrl = amMap['browser_download_url'] as String; final filename = amMap['name'] as String; final fileExtension = filename.substring(filename.indexOf('.') + 1); - final filenameWithoutExtension = - filename.substring(0, filename.indexOf('.')); + final filenameWithoutExtension = filename.substring(0, filename.indexOf('.')); final arch = filenameWithoutExtension.endsWith('aarch64') ? CPUArchitecture.aarch64 @@ -218,8 +212,7 @@ class FlatpakMeta { : _localReleases = localReleases, _localReleaseAssets = localReleaseAssets { if (githubReleaseOrganization != null && githubReleaseProject != null) { - _githubReleases = - GithubReleases(githubReleaseOrganization!, githubReleaseProject!); + _githubReleases = GithubReleases(githubReleaseOrganization!, githubReleaseProject!); } } @@ -232,15 +225,13 @@ class FlatpakMeta { return await _githubReleases!.getReleases(); } else { if (_localReleases == null) { - throw Exception( - 'Metadata must include releases if not fetching releases from Github.'); + throw Exception('Metadata must include releases if not fetching releases from Github.'); } return _localReleases!; } } - Future?> getReleaseAssets( - bool fetchReleasesFromGithub) async { + Future?> getReleaseAssets(bool fetchReleasesFromGithub) async { if (fetchReleasesFromGithub) { if (_githubReleases == null) { throw Exception( @@ -249,8 +240,7 @@ class FlatpakMeta { return _githubReleases!.getLatestReleaseAssets(); } else { if (_localReleases == null) { - throw Exception( - 'Metadata must include releases if not fetching releases from Github.'); + throw Exception('Metadata must include releases if not fetching releases from Github.'); } return _localReleaseAssets; } @@ -262,17 +252,13 @@ class FlatpakMeta { return FlatpakMeta( appId: json['appId'] as String, lowercaseAppName: json['lowercaseAppName'] as String, - githubReleaseOrganization: - json['githubReleaseOrganization'] as String?, + githubReleaseOrganization: json['githubReleaseOrganization'] as String?, githubReleaseProject: json['githubReleaseProject'] as String?, localReleases: (json['localReleases'] as List?)?.map((dynamic r) { final rMap = r as Map; - return Release( - version: rMap['version'] as String, - date: rMap['date'] as String); + return Release(version: rMap['version'] as String, date: rMap['date'] as String); }).toList(), - localReleaseAssets: - (json['localReleaseAssets'] as List?)?.map((dynamic ra) { + localReleaseAssets: (json['localReleaseAssets'] as List?)?.map((dynamic ra) { final raMap = ra as Map; final archString = raMap['arch'] as String; final arch = (archString == CPUArchitecture.x86_64.flatpakArchCode) @@ -284,10 +270,8 @@ class FlatpakMeta { throw Exception( 'Architecture must be either "${CPUArchitecture.x86_64.flatpakArchCode}" or "${CPUArchitecture.aarch64.flatpakArchCode}"'); } - final tarballPath = - '${jsonFile.parent.path}/${raMap['tarballPath'] as String}'; - final preShasum = - Process.runSync('shasum', ['-a', '256', tarballPath]); + final tarballPath = '${jsonFile.parent.path}/${raMap['tarballPath'] as String}'; + final preShasum = Process.runSync('shasum', ['-a', '256', tarballPath]); final shasum = preShasum.stdout.toString().split(' ').first; if (preShasum.exitCode != 0) { throw Exception(preShasum.stderr); @@ -302,17 +286,14 @@ class FlatpakMeta { appDataPath: json['appDataPath'] as String, desktopPath: json['desktopPath'] as String, icons: (json['icons'] as Map).entries.map((mapEntry) { - return Icon( - type: mapEntry.key as String, path: mapEntry.value as String); + return Icon(type: mapEntry.key as String, path: mapEntry.value as String); }).toList(), freedesktopRuntime: json['freedesktopRuntime'] as String, buildCommandsAfterUnpack: (json['buildCommandsAfterUnpack'] as List?) ?.map((dynamic bc) => bc as String) .toList(), extraModules: json['extraModules'] as List?, - finishArgs: (json['finishArgs'] as List) - .map((dynamic fa) => fa as String) - .toList()); + finishArgs: (json['finishArgs'] as List).map((dynamic fa) => fa as String).toList()); } catch (e) { throw Exception('Could not parse JSON file, due to this error:\n$e'); } diff --git a/flatpak/scripts/manifest_generator.dart b/flatpak/scripts/manifest_generator.dart index 6d152ba0..da27f860 100644 --- a/flatpak/scripts/manifest_generator.dart +++ b/flatpak/scripts/manifest_generator.dart @@ -14,8 +14,7 @@ void main(List arguments) async { 'You must run this script with a metadata file argument, using the --meta flag.'); } if (arguments.length == metaIndex + 1) { - throw Exception( - 'The --meta flag must be followed by the path to the metadata file.'); + throw Exception('The --meta flag must be followed by the path to the metadata file.'); } final metaFile = File(arguments[metaIndex + 1]); @@ -27,20 +26,17 @@ void main(List arguments) async { final fetchFromGithub = arguments.contains('--github'); - final outputDir = - Directory('${Directory.current.path}/flatpak_generator_exports'); + final outputDir = Directory('${Directory.current.path}/flatpak_generator_exports'); outputDir.createSync(); final manifestGenerator = FlatpakManifestGenerator(meta); - final manifestContent = - await manifestGenerator.generateFlatpakManifest(fetchFromGithub); + final manifestContent = await manifestGenerator.generateFlatpakManifest(fetchFromGithub); final manifestPath = '${outputDir.path}/${meta.appId}.json'; final manifestFile = File(manifestPath); manifestFile.writeAsStringSync(manifestContent); print('Generated $manifestPath'); - final flathubJsonContent = - await manifestGenerator.generateFlathubJson(fetchFromGithub); + final flathubJsonContent = await manifestGenerator.generateFlathubJson(fetchFromGithub); if (flathubJsonContent != null) { final flathubJsonPath = '${outputDir.path}/flathub.json'; final flathubJsonFile = File(flathubJsonPath); @@ -119,8 +115,7 @@ class FlatpakManifestGenerator { const encoder = JsonEncoder.withIndent(' '); - final onlyArchListInput = - fetchFromGithub ? _githubArchSupport! : _localArchSupport!; + final onlyArchListInput = fetchFromGithub ? _githubArchSupport! : _localArchSupport!; final onlyArchList = List.empty(growable: true); for (final e in onlyArchListInput.entries) { @@ -136,8 +131,7 @@ class FlatpakManifestGenerator { } } - void _lazyGenerateArchSupportMap( - bool fetchFromGithub, List assets) { + void _lazyGenerateArchSupportMap(bool fetchFromGithub, List assets) { if (fetchFromGithub) { if (_githubArchSupport == null) { _githubArchSupport = { diff --git a/integration_test/1_dashboard.dart b/integration_test/1_dashboard.dart index 1282fc5c..7abfcf45 100644 --- a/integration_test/1_dashboard.dart +++ b/integration_test/1_dashboard.dart @@ -34,20 +34,17 @@ Widget createDashboardScreen({locale = 'en'}) { } ] }; - when(mockWorkoutProvider.fetchSessionData()) - .thenAnswer((a) => Future.value(logs)); + when(mockWorkoutProvider.fetchSessionData()).thenAnswer((a) => Future.value(logs)); final mockNutritionProvider = MockNutritionPlansProvider(); - when(mockNutritionProvider.currentPlan) - .thenAnswer((realInvocation) => getNutritionalPlan()); + when(mockNutritionProvider.currentPlan).thenAnswer((realInvocation) => getNutritionalPlan()); when(mockNutritionProvider.items).thenReturn([getNutritionalPlan()]); final mockWeightProvider = MockBodyWeightProvider(); when(mockWeightProvider.items).thenReturn(getWeightEntries()); final mockMeasurementProvider = MockMeasurementProvider(); - when(mockMeasurementProvider.categories) - .thenReturn(getMeasurementCategories()); + when(mockMeasurementProvider.categories).thenReturn(getMeasurementCategories()); return MultiProvider( providers: [ diff --git a/integration_test/2_workout.dart b/integration_test/2_workout.dart index 88492fb2..b36d5265 100644 --- a/integration_test/2_workout.dart +++ b/integration_test/2_workout.dart @@ -15,8 +15,7 @@ Widget createWorkoutDetailScreen({locale = 'en'}) { final mockWorkoutProvider = MockWorkoutPlansProvider(); final workout = getWorkout(); when(mockWorkoutProvider.activePlan).thenReturn(workout); - when(mockWorkoutProvider.fetchAndSetWorkoutPlanFull(1)) - .thenAnswer((_) => Future.value(workout)); + when(mockWorkoutProvider.fetchAndSetWorkoutPlanFull(1)).thenAnswer((_) => Future.value(workout)); return MultiProvider( providers: [ diff --git a/integration_test/3_gym_mode.dart b/integration_test/3_gym_mode.dart index 4ee0f812..e31e8ca1 100644 --- a/integration_test/3_gym_mode.dart +++ b/integration_test/3_gym_mode.dart @@ -20,10 +20,8 @@ Widget createGymModeScreen({locale = 'en'}) { final mockExerciseProvider = MockExercisesProvider(); - when(mockExerciseProvider.findExerciseBaseById(1)) - .thenReturn(bases[0]); // bench press - when(mockExerciseProvider.findExerciseBaseById(6)) - .thenReturn(bases[5]); // side raises + when(mockExerciseProvider.findExerciseBaseById(1)).thenReturn(bases[0]); // bench press + when(mockExerciseProvider.findExerciseBaseById(6)).thenReturn(bases[5]); // side raises //when(mockExerciseProvider.findExerciseBaseById(2)).thenReturn(bases[1]); // crunches //when(mockExerciseProvider.findExerciseBaseById(3)).thenReturn(bases[2]); // dead lift diff --git a/integration_test/4_measurements.dart b/integration_test/4_measurements.dart index f9fe8bc8..c745d6c3 100644 --- a/integration_test/4_measurements.dart +++ b/integration_test/4_measurements.dart @@ -11,8 +11,7 @@ import '../test_data/measurements.dart'; Widget createMeasurementScreen({locale = 'en'}) { final mockMeasurementProvider = MockMeasurementProvider(); - when(mockMeasurementProvider.categories) - .thenReturn(getMeasurementCategories()); + when(mockMeasurementProvider.categories).thenReturn(getMeasurementCategories()); return MultiProvider( providers: [ diff --git a/integration_test/app_test.dart b/integration_test/app_test.dart index 966a7354..f6b04b1d 100644 --- a/integration_test/app_test.dart +++ b/integration_test/app_test.dart @@ -11,14 +11,12 @@ import '4_measurements.dart'; import '5_nutritional_plan.dart'; import '6_weight.dart'; -Future takeScreenshot( - tester, binding, String language, String name) async { +Future takeScreenshot(tester, binding, String language, String name) async { if (Platform.isAndroid) { await binding.convertFlutterSurfaceToImage(); await tester.pumpAndSettle(); } - final filename = - 'fastlane/metadata/android/$language/images/phoneScreenshots/$name.png'; + final filename = 'fastlane/metadata/android/$language/images/phoneScreenshots/$name.png'; await binding.takeScreenshot(filename); } @@ -62,10 +60,8 @@ void main() { await takeScreenshot(tester, binding, language, '01 - dashboard'); }); - testWidgets('workout detail screen - $language', - (WidgetTester tester) async { - await tester - .pumpWidget(createWorkoutDetailScreen(locale: languageCode)); + testWidgets('workout detail screen - $language', (WidgetTester tester) async { + await tester.pumpWidget(createWorkoutDetailScreen(locale: languageCode)); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); await takeScreenshot(tester, binding, language, '02 - workout detail'); @@ -78,24 +74,19 @@ void main() { await takeScreenshot(tester, binding, language, '03 - gym mode'); }); - testWidgets('measurement screen - $language', - (WidgetTester tester) async { + testWidgets('measurement screen - $language', (WidgetTester tester) async { await tester.pumpWidget(createMeasurementScreen(locale: languageCode)); await takeScreenshot(tester, binding, language, '04 - measurements'); }); - testWidgets('nutritional plan detail - $language', - (WidgetTester tester) async { - await tester - .pumpWidget(createNutritionalPlanScreen(locale: languageCode)); + testWidgets('nutritional plan detail - $language', (WidgetTester tester) async { + await tester.pumpWidget(createNutritionalPlanScreen(locale: languageCode)); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); - await takeScreenshot( - tester, binding, language, '05 - nutritional plan'); + await takeScreenshot(tester, binding, language, '05 - nutritional plan'); }); - testWidgets('body weight screen - $language', - (WidgetTester tester) async { + testWidgets('body weight screen - $language', (WidgetTester tester) async { await tester.pumpWidget(createWeightScreen(locale: languageCode)); await tester.pumpAndSettle(); await takeScreenshot(tester, binding, language, '06 - weight'); diff --git a/lib/database/exercise_DB/exercise_database.dart b/lib/database/exercise_DB/exercise_database.dart index 0a913b80..c8e0a8e8 100644 --- a/lib/database/exercise_DB/exercise_database.dart +++ b/lib/database/exercise_DB/exercise_database.dart @@ -17,16 +17,12 @@ part 'exercise_database.g.dart'; @DataClassName('ExerciseTable') class ExerciseTableItems extends Table { IntColumn get id => integer().autoIncrement()(); - TextColumn get exercisebase => - text().map(const ExerciseBaseConverter()).nullable()(); + TextColumn get exercisebase => text().map(const ExerciseBaseConverter()).nullable()(); TextColumn get muscle => text().map(const MuscleConverter()).nullable()(); - TextColumn get category => - text().map(const ExerciseCategoryConverter()).nullable()(); - TextColumn get variation => - text().map(const VariationConverter()).nullable()(); + TextColumn get category => text().map(const ExerciseCategoryConverter()).nullable()(); + TextColumn get variation => text().map(const VariationConverter()).nullable()(); TextColumn get language => text().map(const LanguageConverter()).nullable()(); - TextColumn get equipment => - text().map(const EquipmentConverter()).nullable()(); + TextColumn get equipment => text().map(const EquipmentConverter()).nullable()(); DateTimeColumn get expiresIn => dateTime().nullable()(); } diff --git a/lib/database/exercise_DB/exercise_database.g.dart b/lib/database/exercise_DB/exercise_database.g.dart index 636c8d93..6880d80d 100644 --- a/lib/database/exercise_DB/exercise_database.g.dart +++ b/lib/database/exercise_DB/exercise_database.g.dart @@ -11,76 +11,55 @@ class $ExerciseTableItemsTable extends ExerciseTableItems $ExerciseTableItemsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _idMeta = const VerificationMeta('id'); @override - late final GeneratedColumn id = GeneratedColumn( - 'id', aliasedName, false, + late final GeneratedColumn id = GeneratedColumn('id', aliasedName, false, hasAutoIncrement: true, type: DriftSqlType.int, requiredDuringInsert: false, - defaultConstraints: - GeneratedColumn.constraintIsAlways('PRIMARY KEY AUTOINCREMENT')); - static const VerificationMeta _exercisebaseMeta = - const VerificationMeta('exercisebase'); + defaultConstraints: GeneratedColumn.constraintIsAlways('PRIMARY KEY AUTOINCREMENT')); + static const VerificationMeta _exercisebaseMeta = const VerificationMeta('exercisebase'); @override - late final GeneratedColumnWithTypeConverter - exercisebase = GeneratedColumn('exercisebase', aliasedName, true, + late final GeneratedColumnWithTypeConverter exercisebase = + GeneratedColumn('exercisebase', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false) - .withConverter( - $ExerciseTableItemsTable.$converterexercisebasen); + .withConverter($ExerciseTableItemsTable.$converterexercisebasen); static const VerificationMeta _muscleMeta = const VerificationMeta('muscle'); @override - late final GeneratedColumnWithTypeConverter muscle = - GeneratedColumn('muscle', aliasedName, true, - type: DriftSqlType.string, requiredDuringInsert: false) - .withConverter($ExerciseTableItemsTable.$convertermusclen); - static const VerificationMeta _categoryMeta = - const VerificationMeta('category'); + late final GeneratedColumnWithTypeConverter muscle = GeneratedColumn( + 'muscle', aliasedName, true, + type: DriftSqlType.string, requiredDuringInsert: false) + .withConverter($ExerciseTableItemsTable.$convertermusclen); + static const VerificationMeta _categoryMeta = const VerificationMeta('category'); @override - late final GeneratedColumnWithTypeConverter - category = GeneratedColumn('category', aliasedName, true, + late final GeneratedColumnWithTypeConverter category = + GeneratedColumn('category', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false) - .withConverter( - $ExerciseTableItemsTable.$convertercategoryn); - static const VerificationMeta _variationMeta = - const VerificationMeta('variation'); + .withConverter($ExerciseTableItemsTable.$convertercategoryn); + static const VerificationMeta _variationMeta = const VerificationMeta('variation'); @override late final GeneratedColumnWithTypeConverter variation = GeneratedColumn('variation', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false) - .withConverter( - $ExerciseTableItemsTable.$convertervariationn); - static const VerificationMeta _languageMeta = - const VerificationMeta('language'); + .withConverter($ExerciseTableItemsTable.$convertervariationn); + static const VerificationMeta _languageMeta = const VerificationMeta('language'); @override - late final GeneratedColumnWithTypeConverter language = - GeneratedColumn('language', aliasedName, true, - type: DriftSqlType.string, requiredDuringInsert: false) - .withConverter( - $ExerciseTableItemsTable.$converterlanguagen); - static const VerificationMeta _equipmentMeta = - const VerificationMeta('equipment'); + late final GeneratedColumnWithTypeConverter language = GeneratedColumn( + 'language', aliasedName, true, + type: DriftSqlType.string, requiredDuringInsert: false) + .withConverter($ExerciseTableItemsTable.$converterlanguagen); + static const VerificationMeta _equipmentMeta = const VerificationMeta('equipment'); @override late final GeneratedColumnWithTypeConverter equipment = GeneratedColumn('equipment', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false) - .withConverter( - $ExerciseTableItemsTable.$converterequipmentn); - static const VerificationMeta _expiresInMeta = - const VerificationMeta('expiresIn'); + .withConverter($ExerciseTableItemsTable.$converterequipmentn); + static const VerificationMeta _expiresInMeta = const VerificationMeta('expiresIn'); @override late final GeneratedColumn expiresIn = GeneratedColumn( 'expires_in', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); @override - List get $columns => [ - id, - exercisebase, - muscle, - category, - variation, - language, - equipment, - expiresIn - ]; + List get $columns => + [id, exercisebase, muscle, category, variation, language, equipment, expiresIn]; @override String get aliasedName => _alias ?? actualTableName; @override @@ -101,8 +80,8 @@ class $ExerciseTableItemsTable extends ExerciseTableItems context.handle(_languageMeta, const VerificationResult.success()); context.handle(_equipmentMeta, const VerificationResult.success()); if (data.containsKey('expires_in')) { - context.handle(_expiresInMeta, - expiresIn.isAcceptableOrUnknown(data['expires_in']!, _expiresInMeta)); + context.handle( + _expiresInMeta, expiresIn.isAcceptableOrUnknown(data['expires_in']!, _expiresInMeta)); } return context; } @@ -113,26 +92,20 @@ class $ExerciseTableItemsTable extends ExerciseTableItems ExerciseTable map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return ExerciseTable( - id: attachedDatabase.typeMapping - .read(DriftSqlType.int, data['${effectivePrefix}id'])!, - exercisebase: $ExerciseTableItemsTable.$converterexercisebasen.fromSql( - attachedDatabase.typeMapping.read( - DriftSqlType.string, data['${effectivePrefix}exercisebase'])), + id: attachedDatabase.typeMapping.read(DriftSqlType.int, data['${effectivePrefix}id'])!, + exercisebase: $ExerciseTableItemsTable.$converterexercisebasen.fromSql(attachedDatabase + .typeMapping + .read(DriftSqlType.string, data['${effectivePrefix}exercisebase'])), muscle: $ExerciseTableItemsTable.$convertermusclen.fromSql( - attachedDatabase.typeMapping - .read(DriftSqlType.string, data['${effectivePrefix}muscle'])), - category: $ExerciseTableItemsTable.$convertercategoryn.fromSql( - attachedDatabase.typeMapping - .read(DriftSqlType.string, data['${effectivePrefix}category'])), - variation: $ExerciseTableItemsTable.$convertervariationn.fromSql( - attachedDatabase.typeMapping - .read(DriftSqlType.string, data['${effectivePrefix}variation'])), - language: $ExerciseTableItemsTable.$converterlanguagen.fromSql( - attachedDatabase.typeMapping - .read(DriftSqlType.string, data['${effectivePrefix}language'])), - equipment: $ExerciseTableItemsTable.$converterequipmentn.fromSql( - attachedDatabase.typeMapping - .read(DriftSqlType.string, data['${effectivePrefix}equipment'])), + attachedDatabase.typeMapping.read(DriftSqlType.string, data['${effectivePrefix}muscle'])), + category: $ExerciseTableItemsTable.$convertercategoryn.fromSql(attachedDatabase.typeMapping + .read(DriftSqlType.string, data['${effectivePrefix}category'])), + variation: $ExerciseTableItemsTable.$convertervariationn.fromSql(attachedDatabase.typeMapping + .read(DriftSqlType.string, data['${effectivePrefix}variation'])), + language: $ExerciseTableItemsTable.$converterlanguagen.fromSql(attachedDatabase.typeMapping + .read(DriftSqlType.string, data['${effectivePrefix}language'])), + equipment: $ExerciseTableItemsTable.$converterequipmentn.fromSql(attachedDatabase.typeMapping + .read(DriftSqlType.string, data['${effectivePrefix}equipment'])), expiresIn: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}expires_in']), ); @@ -143,28 +116,23 @@ class $ExerciseTableItemsTable extends ExerciseTableItems return $ExerciseTableItemsTable(attachedDatabase, alias); } - static TypeConverter $converterexercisebase = - const ExerciseBaseConverter(); + static TypeConverter $converterexercisebase = const ExerciseBaseConverter(); static TypeConverter $converterexercisebasen = NullAwareTypeConverter.wrap($converterexercisebase); - static TypeConverter $convertermuscle = - const MuscleConverter(); + static TypeConverter $convertermuscle = const MuscleConverter(); static TypeConverter $convertermusclen = NullAwareTypeConverter.wrap($convertermuscle); static TypeConverter $convertercategory = const ExerciseCategoryConverter(); static TypeConverter $convertercategoryn = NullAwareTypeConverter.wrap($convertercategory); - static TypeConverter $convertervariation = - const VariationConverter(); + static TypeConverter $convertervariation = const VariationConverter(); static TypeConverter $convertervariationn = NullAwareTypeConverter.wrap($convertervariation); - static TypeConverter $converterlanguage = - const LanguageConverter(); + static TypeConverter $converterlanguage = const LanguageConverter(); static TypeConverter $converterlanguagen = NullAwareTypeConverter.wrap($converterlanguage); - static TypeConverter $converterequipment = - const EquipmentConverter(); + static TypeConverter $converterequipment = const EquipmentConverter(); static TypeConverter $converterequipmentn = NullAwareTypeConverter.wrap($converterequipment); } @@ -224,31 +192,18 @@ class ExerciseTable extends DataClass implements Insertable { ExerciseTableItemsCompanion toCompanion(bool nullToAbsent) { return ExerciseTableItemsCompanion( id: Value(id), - exercisebase: exercisebase == null && nullToAbsent - ? const Value.absent() - : Value(exercisebase), - muscle: - muscle == null && nullToAbsent ? const Value.absent() : Value(muscle), - category: category == null && nullToAbsent - ? const Value.absent() - : Value(category), - variation: variation == null && nullToAbsent - ? const Value.absent() - : Value(variation), - language: language == null && nullToAbsent - ? const Value.absent() - : Value(language), - equipment: equipment == null && nullToAbsent - ? const Value.absent() - : Value(equipment), - expiresIn: expiresIn == null && nullToAbsent - ? const Value.absent() - : Value(expiresIn), + exercisebase: + exercisebase == null && nullToAbsent ? const Value.absent() : Value(exercisebase), + muscle: muscle == null && nullToAbsent ? const Value.absent() : Value(muscle), + category: category == null && nullToAbsent ? const Value.absent() : Value(category), + variation: variation == null && nullToAbsent ? const Value.absent() : Value(variation), + language: language == null && nullToAbsent ? const Value.absent() : Value(language), + equipment: equipment == null && nullToAbsent ? const Value.absent() : Value(equipment), + expiresIn: expiresIn == null && nullToAbsent ? const Value.absent() : Value(expiresIn), ); } - factory ExerciseTable.fromJson(Map json, - {ValueSerializer? serializer}) { + factory ExerciseTable.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return ExerciseTable( id: serializer.fromJson(json['id']), @@ -287,8 +242,7 @@ class ExerciseTable extends DataClass implements Insertable { Value expiresIn = const Value.absent()}) => ExerciseTable( id: id ?? this.id, - exercisebase: - exercisebase.present ? exercisebase.value : this.exercisebase, + exercisebase: exercisebase.present ? exercisebase.value : this.exercisebase, muscle: muscle.present ? muscle.value : this.muscle, category: category.present ? category.value : this.category, variation: variation.present ? variation.value : this.variation, @@ -312,8 +266,8 @@ class ExerciseTable extends DataClass implements Insertable { } @override - int get hashCode => Object.hash(id, exercisebase, muscle, category, variation, - language, equipment, expiresIn); + int get hashCode => + Object.hash(id, exercisebase, muscle, category, variation, language, equipment, expiresIn); @override bool operator ==(Object other) => identical(this, other) || @@ -409,8 +363,7 @@ class ExerciseTableItemsCompanion extends UpdateCompanion { if (exercisebase.present) { final converter = $ExerciseTableItemsTable.$converterexercisebasen; - map['exercisebase'] = - Variable(converter.toSql(exercisebase.value)); + map['exercisebase'] = Variable(converter.toSql(exercisebase.value)); } if (muscle.present) { final converter = $ExerciseTableItemsTable.$convertermusclen; @@ -461,8 +414,7 @@ class ExerciseTableItemsCompanion extends UpdateCompanion { abstract class _$ExerciseDatabase extends GeneratedDatabase { _$ExerciseDatabase(QueryExecutor e) : super(e); - late final $ExerciseTableItemsTable exerciseTableItems = - $ExerciseTableItemsTable(this); + late final $ExerciseTableItemsTable exerciseTableItems = $ExerciseTableItemsTable(this); @override Iterable> get allTables => allSchemaEntities.whereType>(); diff --git a/lib/database/exercise_DB/type_converters.dart b/lib/database/exercise_DB/type_converters.dart index 63b60093..74a039de 100644 --- a/lib/database/exercise_DB/type_converters.dart +++ b/lib/database/exercise_DB/type_converters.dart @@ -50,14 +50,12 @@ class EquipmentConverter extends TypeConverter { } } -class ExerciseCategoryConverter - extends TypeConverter { +class ExerciseCategoryConverter extends TypeConverter { const ExerciseCategoryConverter(); @override ExerciseCategory fromSql(String fromDb) { - return ExerciseCategory.fromJson( - json.decode(fromDb) as Map); + return ExerciseCategory.fromJson(json.decode(fromDb) as Map); } @override diff --git a/lib/exceptions/http_exception.dart b/lib/exceptions/http_exception.dart index 777efa2b..b442e34a 100644 --- a/lib/exceptions/http_exception.dart +++ b/lib/exceptions/http_exception.dart @@ -26,10 +26,7 @@ class WgerHttpException implements Exception { /// JSON. Will use the response as-is if it fails. WgerHttpException(dynamic responseBody) { if (responseBody == null) { - errors = { - 'unknown_error': - 'An unknown error occurred, no further information available' - }; + errors = {'unknown_error': 'An unknown error occurred, no further information available'}; } else { try { errors = {'unknown_error': json.decode(responseBody)}; diff --git a/lib/helpers/charts.dart b/lib/helpers/charts.dart index 9b758437..64a0b6e8 100644 --- a/lib/helpers/charts.dart +++ b/lib/helpers/charts.dart @@ -1,7 +1,5 @@ double chartGetInterval(DateTime first, DateTime last, {divider = 3}) { final dayDiff = last.difference(first); - return dayDiff.inMilliseconds == 0 - ? 1000 - : dayDiff.inMilliseconds.abs() / divider; + return dayDiff.inMilliseconds == 0 ? 1000 : dayDiff.inMilliseconds.abs() / divider; } diff --git a/lib/helpers/exercises/forms.dart b/lib/helpers/exercises/forms.dart index 6e05d93c..25d92bde 100644 --- a/lib/helpers/exercises/forms.dart +++ b/lib/helpers/exercises/forms.dart @@ -14,8 +14,7 @@ String? validateName(String? name, BuildContext context) { } if (name.length < MIN_CHARS_NAME || name.length > MAX_CHARS_NAME) { - return AppLocalizations.of(context) - .enterCharacters(MIN_CHARS_NAME, MAX_CHARS_NAME); + return AppLocalizations.of(context).enterCharacters(MIN_CHARS_NAME, MAX_CHARS_NAME); } return null; @@ -27,8 +26,7 @@ String? validateDescription(String? name, BuildContext context) { } if (name.length < MIN_CHARS_DESCRIPTION) { - return AppLocalizations.of(context) - .enterMinCharacters(MIN_CHARS_DESCRIPTION); + return AppLocalizations.of(context).enterMinCharacters(MIN_CHARS_DESCRIPTION); } return null; diff --git a/lib/helpers/json.dart b/lib/helpers/json.dart index 291414a7..7bc3ba44 100644 --- a/lib/helpers/json.dart +++ b/lib/helpers/json.dart @@ -60,6 +60,5 @@ String? timeToString(TimeOfDay? time) { if (time == null) { return null; } - return const DefaultMaterialLocalizations() - .formatTimeOfDay(time, alwaysUse24HourFormat: true); + return const DefaultMaterialLocalizations().formatTimeOfDay(time, alwaysUse24HourFormat: true); } diff --git a/lib/helpers/misc.dart b/lib/helpers/misc.dart index 4c24a6df..26c34cc2 100644 --- a/lib/helpers/misc.dart +++ b/lib/helpers/misc.dart @@ -42,9 +42,7 @@ String repText( // rather "8 repetitions". If there is weight we want to output "8 x 50kg", // since the repetitions are implied. If other units are used, we always // print them - if (repetitionUnitObj.id != REP_UNIT_REPETITIONS || - weight == 0 || - weight == null) { + if (repetitionUnitObj.id != REP_UNIT_REPETITIONS || weight == 0 || weight == null) { out.add(repetitionUnitObj.name); } } diff --git a/lib/helpers/platform.dart b/lib/helpers/platform.dart index 6d857378..82b0484d 100644 --- a/lib/helpers/platform.dart +++ b/lib/helpers/platform.dart @@ -21,5 +21,4 @@ import 'package:flutter/foundation.dart'; // Note: we're not using Platform.isAndroid etc because during tests these would+ // always take the value of the current platform. TargetPlatform is always Android // during tests, but can be changed to check for correct UI switches, etc. -final isDesktop = [TargetPlatform.linux, TargetPlatform.macOS] - .contains(defaultTargetPlatform); +final isDesktop = [TargetPlatform.linux, TargetPlatform.macOS].contains(defaultTargetPlatform); diff --git a/lib/helpers/ui.dart b/lib/helpers/ui.dart index 39dfabe5..626e42e6 100644 --- a/lib/helpers/ui.dart +++ b/lib/helpers/ui.dart @@ -49,8 +49,7 @@ void showErrorDialog(dynamic exception, BuildContext context) { ); } -void showHttpExceptionErrorDialog( - WgerHttpException exception, BuildContext context) async { +void showHttpExceptionErrorDialog(WgerHttpException exception, BuildContext context) async { log('showHttpExceptionErrorDialog: '); log(exception.toString()); log('-------------------'); @@ -59,8 +58,7 @@ void showHttpExceptionErrorDialog( for (final key in exception.errors!.keys) { // Error headers // Ensure that the error heading first letter is capitalized. - final String errorHeaderMsg = - key[0].toUpperCase() + key.substring(1, key.length); + final String errorHeaderMsg = key[0].toUpperCase() + key.substring(1, key.length); errorList.add( Text( @@ -131,8 +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/main.dart b/lib/main.dart index 9071fbf5..964395c2 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -81,21 +81,19 @@ class MyApp extends StatelessWidget { create: (ctx) => AuthProvider(), ), ChangeNotifierProxyProvider( - create: (context) => ExercisesProvider(WgerBaseProvider( - Provider.of(context, listen: false))), + create: (context) => ExercisesProvider( + WgerBaseProvider(Provider.of(context, listen: false))), update: (context, base, previous) => previous ?? ExercisesProvider(WgerBaseProvider(base)), ), - ChangeNotifierProxyProvider2( + ChangeNotifierProxyProvider2( create: (context) => WorkoutPlansProvider( WgerBaseProvider(Provider.of(context, listen: false)), Provider.of(context, listen: false), [], ), update: (context, auth, exercises, previous) => - previous ?? - WorkoutPlansProvider(WgerBaseProvider(auth), exercises, []), + previous ?? WorkoutPlansProvider(WgerBaseProvider(auth), exercises, []), ), ChangeNotifierProxyProvider( create: (context) => NutritionPlansProvider( @@ -116,8 +114,7 @@ class MyApp extends StatelessWidget { create: (context) => UserProvider( WgerBaseProvider(Provider.of(context, listen: false)), ), - update: (context, base, previous) => - previous ?? UserProvider(WgerBaseProvider(base)), + update: (context, base, previous) => previous ?? UserProvider(WgerBaseProvider(base)), ), ChangeNotifierProxyProvider( create: (context) => BodyWeightProvider( @@ -127,10 +124,9 @@ class MyApp extends StatelessWidget { previous ?? BodyWeightProvider(WgerBaseProvider(base)), ), ChangeNotifierProxyProvider( - create: (context) => GalleryProvider( - Provider.of(context, listen: false), []), - update: (context, auth, previous) => - previous ?? GalleryProvider(auth, []), + create: (context) => + GalleryProvider(Provider.of(context, listen: false), []), + update: (context, auth, previous) => previous ?? GalleryProvider(auth, []), ), ChangeNotifierProxyProvider( create: (context) => AddExerciseProvider( @@ -149,8 +145,7 @@ class MyApp extends StatelessWidget { : FutureBuilder( future: auth.tryAutoLogin(), builder: (ctx, authResultSnapshot) => - authResultSnapshot.connectionState == - ConnectionState.waiting + authResultSnapshot.connectionState == ConnectionState.waiting ? SplashScreen() : AuthScreen(), ), @@ -160,10 +155,8 @@ class MyApp extends StatelessWidget { GalleryScreen.routeName: (ctx) => const GalleryScreen(), GymModeScreen.routeName: (ctx) => GymModeScreen(), HomeTabsScreen.routeName: (ctx) => HomeTabsScreen(), - MeasurementCategoriesScreen.routeName: (ctx) => - MeasurementCategoriesScreen(), - MeasurementEntriesScreen.routeName: (ctx) => - MeasurementEntriesScreen(), + MeasurementCategoriesScreen.routeName: (ctx) => MeasurementCategoriesScreen(), + MeasurementEntriesScreen.routeName: (ctx) => MeasurementEntriesScreen(), NutritionScreen.routeName: (ctx) => NutritionScreen(), NutritionalDiaryScreen.routeName: (ctx) => NutritionalDiaryScreen(), NutritionalPlanScreen.routeName: (ctx) => NutritionalPlanScreen(), @@ -171,8 +164,7 @@ class MyApp extends StatelessWidget { WorkoutPlanScreen.routeName: (ctx) => WorkoutPlanScreen(), WorkoutPlansScreen.routeName: (ctx) => WorkoutPlansScreen(), ExercisesScreen.routeName: (ctx) => const ExercisesScreen(), - ExerciseDetailScreen.routeName: (ctx) => - const ExerciseDetailScreen(), + ExerciseDetailScreen.routeName: (ctx) => const ExerciseDetailScreen(), AddExerciseScreen.routeName: (ctx) => const AddExerciseScreen(), AboutPage.routeName: (ctx) => const AboutPage(), }, diff --git a/lib/models/body_weight/weight_entry.dart b/lib/models/body_weight/weight_entry.dart index 4ab714e7..1fbb5dbf 100644 --- a/lib/models/body_weight/weight_entry.dart +++ b/lib/models/body_weight/weight_entry.dart @@ -45,7 +45,6 @@ class WeightEntry { } // Boilerplate - factory WeightEntry.fromJson(Map json) => - _$WeightEntryFromJson(json); + factory WeightEntry.fromJson(Map json) => _$WeightEntryFromJson(json); Map toJson() => _$WeightEntryToJson(this); } diff --git a/lib/models/body_weight/weight_entry.g.dart b/lib/models/body_weight/weight_entry.g.dart index 60ee02c9..d1152d20 100644 --- a/lib/models/body_weight/weight_entry.g.dart +++ b/lib/models/body_weight/weight_entry.g.dart @@ -18,8 +18,7 @@ WeightEntry _$WeightEntryFromJson(Map json) { ); } -Map _$WeightEntryToJson(WeightEntry instance) => - { +Map _$WeightEntryToJson(WeightEntry instance) => { 'id': instance.id, 'weight': numToString(instance.weight), 'date': toDate(instance.date), diff --git a/lib/models/exercises/base.dart b/lib/models/exercises/base.dart index 9b3eea3b..21d34ee6 100644 --- a/lib/models/exercises/base.dart +++ b/lib/models/exercises/base.dart @@ -158,8 +158,7 @@ class ExerciseBase extends Equatable { } // Boilerplate - factory ExerciseBase.fromJson(Map json) => - _$ExerciseBaseFromJson(json); + factory ExerciseBase.fromJson(Map json) => _$ExerciseBaseFromJson(json); Map toJson() => _$ExerciseBaseToJson(this); diff --git a/lib/models/exercises/base.g.dart b/lib/models/exercises/base.g.dart index b57b9ebf..d9f7c36e 100644 --- a/lib/models/exercises/base.g.dart +++ b/lib/models/exercises/base.g.dart @@ -24,26 +24,18 @@ ExerciseBase _$ExerciseBaseFromJson(Map json) { return ExerciseBase( id: json['id'] as int?, uuid: json['uuid'] as String?, - created: json['created'] == null - ? null - : DateTime.parse(json['created'] as String), - lastUpdate: json['last_update'] == null - ? null - : DateTime.parse(json['last_update'] as String), + created: json['created'] == null ? null : DateTime.parse(json['created'] as String), + lastUpdate: json['last_update'] == null ? null : DateTime.parse(json['last_update'] as String), variationId: json['variations'] as int?, ) ..categoryId = json['category'] as int - ..musclesIds = - (json['muscles'] as List).map((e) => e as int).toList() - ..musclesSecondaryIds = (json['muscles_secondary'] as List) - .map((e) => e as int) - .toList() - ..equipmentIds = - (json['equipment'] as List).map((e) => e as int).toList(); + ..musclesIds = (json['muscles'] as List).map((e) => e as int).toList() + ..musclesSecondaryIds = + (json['muscles_secondary'] as List).map((e) => e as int).toList() + ..equipmentIds = (json['equipment'] as List).map((e) => e as int).toList(); } -Map _$ExerciseBaseToJson(ExerciseBase instance) => - { +Map _$ExerciseBaseToJson(ExerciseBase instance) => { 'id': instance.id, 'uuid': instance.uuid, 'variations': instance.variationId, diff --git a/lib/models/exercises/category.dart b/lib/models/exercises/category.dart index 13a25645..5e3d9304 100644 --- a/lib/models/exercises/category.dart +++ b/lib/models/exercises/category.dart @@ -40,8 +40,7 @@ class ExerciseCategory extends Equatable { } // Boilerplate - factory ExerciseCategory.fromJson(Map json) => - _$ExerciseCategoryFromJson(json); + factory ExerciseCategory.fromJson(Map json) => _$ExerciseCategoryFromJson(json); Map toJson() => _$ExerciseCategoryToJson(this); @override diff --git a/lib/models/exercises/category.g.dart b/lib/models/exercises/category.g.dart index 19383107..915120d1 100644 --- a/lib/models/exercises/category.g.dart +++ b/lib/models/exercises/category.g.dart @@ -17,8 +17,7 @@ ExerciseCategory _$ExerciseCategoryFromJson(Map json) { ); } -Map _$ExerciseCategoryToJson(ExerciseCategory instance) => - { +Map _$ExerciseCategoryToJson(ExerciseCategory instance) => { 'id': instance.id, 'name': instance.name, }; diff --git a/lib/models/exercises/comment.dart b/lib/models/exercises/comment.dart index 7c4d49df..f55efa66 100644 --- a/lib/models/exercises/comment.dart +++ b/lib/models/exercises/comment.dart @@ -38,7 +38,6 @@ class Comment { }); // Boilerplate - factory Comment.fromJson(Map json) => - _$CommentFromJson(json); + factory Comment.fromJson(Map json) => _$CommentFromJson(json); Map toJson() => _$CommentToJson(this); } diff --git a/lib/models/exercises/equipment.dart b/lib/models/exercises/equipment.dart index 7e420e93..09ca9356 100644 --- a/lib/models/exercises/equipment.dart +++ b/lib/models/exercises/equipment.dart @@ -35,8 +35,7 @@ class Equipment extends Equatable { }); // Boilerplate - factory Equipment.fromJson(Map json) => - _$EquipmentFromJson(json); + factory Equipment.fromJson(Map json) => _$EquipmentFromJson(json); Map toJson() => _$EquipmentToJson(this); @override diff --git a/lib/models/exercises/image.dart b/lib/models/exercises/image.dart index 899b0e5b..148da3e6 100644 --- a/lib/models/exercises/image.dart +++ b/lib/models/exercises/image.dart @@ -46,8 +46,7 @@ class ExerciseImage { }); // Boilerplate - factory ExerciseImage.fromJson(Map json) => - _$ExerciseImageFromJson(json); + factory ExerciseImage.fromJson(Map json) => _$ExerciseImageFromJson(json); Map toJson() => _$ExerciseImageToJson(this); @override diff --git a/lib/models/exercises/image.g.dart b/lib/models/exercises/image.g.dart index 1240dc38..6ef7c62e 100644 --- a/lib/models/exercises/image.g.dart +++ b/lib/models/exercises/image.g.dart @@ -20,8 +20,7 @@ ExerciseImage _$ExerciseImageFromJson(Map json) { ); } -Map _$ExerciseImageToJson(ExerciseImage instance) => - { +Map _$ExerciseImageToJson(ExerciseImage instance) => { 'id': instance.id, 'uuid': instance.uuid, 'exercise_base': instance.exerciseBaseId, diff --git a/lib/models/exercises/language.dart b/lib/models/exercises/language.dart index 3e72986d..23f04856 100644 --- a/lib/models/exercises/language.dart +++ b/lib/models/exercises/language.dart @@ -39,8 +39,7 @@ class Language extends Equatable { }); // Boilerplate - factory Language.fromJson(Map json) => - _$LanguageFromJson(json); + factory Language.fromJson(Map json) => _$LanguageFromJson(json); Map toJson() => _$LanguageToJson(this); @override diff --git a/lib/models/exercises/muscle.dart b/lib/models/exercises/muscle.dart index aea716c7..25ad7abc 100644 --- a/lib/models/exercises/muscle.dart +++ b/lib/models/exercises/muscle.dart @@ -52,8 +52,7 @@ class Muscle extends Equatable { List get props => [id, name, isFront]; String nameTranslated(BuildContext context) { - return name + - (nameEn.isNotEmpty ? ' (${getTranslation(nameEn, context)})' : ''); + return name + (nameEn.isNotEmpty ? ' (${getTranslation(nameEn, context)})' : ''); } @override diff --git a/lib/models/exercises/translation.dart b/lib/models/exercises/translation.dart index 84508337..60e452e9 100644 --- a/lib/models/exercises/translation.dart +++ b/lib/models/exercises/translation.dart @@ -86,8 +86,7 @@ class Translation extends Equatable { } // Boilerplate - factory Translation.fromJson(Map json) => - _$TranslationFromJson(json); + factory Translation.fromJson(Map json) => _$TranslationFromJson(json); Map toJson() => _$TranslationToJson(this); diff --git a/lib/models/exercises/translation.g.dart b/lib/models/exercises/translation.g.dart index d4052547..642c2e7f 100644 --- a/lib/models/exercises/translation.g.dart +++ b/lib/models/exercises/translation.g.dart @@ -22,17 +22,14 @@ Translation _$TranslationFromJson(Map json) { return Translation( id: json['id'] as int?, uuid: json['uuid'] as String?, - created: json['created'] == null - ? null - : DateTime.parse(json['created'] as String), + created: json['created'] == null ? null : DateTime.parse(json['created'] as String), name: json['name'] as String, description: json['description'] as String, baseId: json['exercise_base'] as int?, )..languageId = json['language'] as int; } -Map _$TranslationToJson(Translation instance) => - { +Map _$TranslationToJson(Translation instance) => { 'id': instance.id, 'uuid': instance.uuid, 'language': instance.languageId, diff --git a/lib/models/exercises/variation.dart b/lib/models/exercises/variation.dart index 5aace375..304452c7 100644 --- a/lib/models/exercises/variation.dart +++ b/lib/models/exercises/variation.dart @@ -30,7 +30,6 @@ class Variation { }); // Boilerplate - factory Variation.fromJson(Map json) => - _$VariationFromJson(json); + factory Variation.fromJson(Map json) => _$VariationFromJson(json); Map toJson() => _$VariationToJson(this); } diff --git a/lib/models/measurements/measurement_category.g.dart b/lib/models/measurements/measurement_category.g.dart index ef4ebcd3..eb887b2e 100644 --- a/lib/models/measurements/measurement_category.g.dart +++ b/lib/models/measurements/measurement_category.g.dart @@ -22,9 +22,7 @@ MeasurementCategory _$MeasurementCategoryFromJson(Map json) { ); } -Map _$MeasurementCategoryToJson( - MeasurementCategory instance) => - { +Map _$MeasurementCategoryToJson(MeasurementCategory instance) => { 'id': instance.id, 'name': instance.name, 'unit': instance.unit, diff --git a/lib/models/measurements/measurement_entry.dart b/lib/models/measurements/measurement_entry.dart index 04c27ddd..dd24b05e 100644 --- a/lib/models/measurements/measurement_entry.dart +++ b/lib/models/measurements/measurement_entry.dart @@ -29,12 +29,7 @@ class MeasurementEntry extends Equatable { required this.notes, }); - MeasurementEntry copyWith( - {int? id, - int? category, - DateTime? date, - num? value, - String? notes}) => + MeasurementEntry copyWith({int? id, int? category, DateTime? date, num? value, String? notes}) => MeasurementEntry( id: id ?? this.id, category: category ?? this.category, @@ -44,8 +39,7 @@ class MeasurementEntry extends Equatable { ); // Boilerplate - factory MeasurementEntry.fromJson(Map json) => - _$MeasurementEntryFromJson(json); + factory MeasurementEntry.fromJson(Map json) => _$MeasurementEntryFromJson(json); Map toJson() => _$MeasurementEntryToJson(this); diff --git a/lib/models/measurements/measurement_entry.g.dart b/lib/models/measurements/measurement_entry.g.dart index 4b096960..7f6e346a 100644 --- a/lib/models/measurements/measurement_entry.g.dart +++ b/lib/models/measurements/measurement_entry.g.dart @@ -20,8 +20,7 @@ MeasurementEntry _$MeasurementEntryFromJson(Map json) { ); } -Map _$MeasurementEntryToJson(MeasurementEntry instance) => - { +Map _$MeasurementEntryToJson(MeasurementEntry instance) => { 'id': instance.id, 'category': instance.category, 'date': toDate(instance.date), diff --git a/lib/models/nutrition/image.dart b/lib/models/nutrition/image.dart index bc1271f7..bc23f0e4 100644 --- a/lib/models/nutrition/image.dart +++ b/lib/models/nutrition/image.dart @@ -81,8 +81,7 @@ class IngredientImage { }); // Boilerplate - factory IngredientImage.fromJson(Map json) => - _$IngredientImageFromJson(json); + factory IngredientImage.fromJson(Map json) => _$IngredientImageFromJson(json); Map toJson() => _$IngredientImageToJson(this); } diff --git a/lib/models/nutrition/image.g.dart b/lib/models/nutrition/image.g.dart index 39272d16..0bd0771d 100644 --- a/lib/models/nutrition/image.g.dart +++ b/lib/models/nutrition/image.g.dart @@ -38,8 +38,7 @@ IngredientImage _$IngredientImageFromJson(Map json) { ); } -Map _$IngredientImageToJson(IngredientImage instance) => - { +Map _$IngredientImageToJson(IngredientImage instance) => { 'id': instance.id, 'uuid': instance.uuid, 'ingredient_id': instance.ingredientId, diff --git a/lib/models/nutrition/ingredient.dart b/lib/models/nutrition/ingredient.dart index e4d66528..59a3460f 100644 --- a/lib/models/nutrition/ingredient.dart +++ b/lib/models/nutrition/ingredient.dart @@ -46,11 +46,7 @@ class Ingredient { final num carbohydrates; /// g per 100g of product - @JsonKey( - required: true, - fromJson: stringToNum, - toJson: numToString, - name: 'carbohydrates_sugar') + @JsonKey(required: true, fromJson: stringToNum, toJson: numToString, name: 'carbohydrates_sugar') final num carbohydratesSugar; /// g per 100g of product @@ -62,11 +58,7 @@ class Ingredient { final num fat; /// g per 100g of product - @JsonKey( - required: true, - fromJson: stringToNum, - toJson: numToString, - name: 'fat_saturated') + @JsonKey(required: true, fromJson: stringToNum, toJson: numToString, name: 'fat_saturated') final num fatSaturated; /// g per 100g of product @@ -96,8 +88,7 @@ class Ingredient { }); // Boilerplate - factory Ingredient.fromJson(Map json) => - _$IngredientFromJson(json); + factory Ingredient.fromJson(Map json) => _$IngredientFromJson(json); Map toJson() => _$IngredientToJson(this); } diff --git a/lib/models/nutrition/ingredient.g.dart b/lib/models/nutrition/ingredient.g.dart index fcff133a..d0ea8cfa 100644 --- a/lib/models/nutrition/ingredient.g.dart +++ b/lib/models/nutrition/ingredient.g.dart @@ -43,8 +43,7 @@ Ingredient _$IngredientFromJson(Map json) { ); } -Map _$IngredientToJson(Ingredient instance) => - { +Map _$IngredientToJson(Ingredient instance) => { 'id': instance.id, 'code': instance.code, 'name': instance.name, diff --git a/lib/models/nutrition/ingredient_weight_unit.g.dart b/lib/models/nutrition/ingredient_weight_unit.g.dart index 74b1f101..f147a2ee 100644 --- a/lib/models/nutrition/ingredient_weight_unit.g.dart +++ b/lib/models/nutrition/ingredient_weight_unit.g.dart @@ -13,16 +13,14 @@ IngredientWeightUnit _$IngredientWeightUnitFromJson(Map json) { ); return IngredientWeightUnit( id: json['id'] as int, - weightUnit: - WeightUnit.fromJson(json['weight_unit'] as Map), + weightUnit: WeightUnit.fromJson(json['weight_unit'] as Map), ingredient: Ingredient.fromJson(json['ingredient'] as Map), grams: json['grams'] as int, amount: (json['amount'] as num).toDouble(), ); } -Map _$IngredientWeightUnitToJson( - IngredientWeightUnit instance) => +Map _$IngredientWeightUnitToJson(IngredientWeightUnit instance) => { 'id': instance.id, 'weight_unit': instance.weightUnit, diff --git a/lib/models/nutrition/log.dart b/lib/models/nutrition/log.dart index 45ed5618..8a30650d 100644 --- a/lib/models/nutrition/log.dart +++ b/lib/models/nutrition/log.dart @@ -67,8 +67,7 @@ class Log { this.comment, }); - Log.fromMealItem(MealItem mealItem, this.planId, this.mealId, - [DateTime? dateTime]) { + Log.fromMealItem(MealItem mealItem, this.planId, this.mealId, [DateTime? dateTime]) { ingredientId = mealItem.ingredientId; ingredientObj = mealItem.ingredientObj; weightUnitId = mealItem.weightUnitId; @@ -87,9 +86,8 @@ class Log { final out = NutritionalValues(); //final weight = amount; - final weight = weightUnitObj == null - ? amount - : amount * weightUnitObj!.amount * weightUnitObj!.grams; + final weight = + weightUnitObj == null ? amount : amount * weightUnitObj!.amount * weightUnitObj!.grams; out.energy = ingredientObj.energy * weight / 100; out.protein = ingredientObj.protein * weight / 100; diff --git a/lib/models/nutrition/log.g.dart b/lib/models/nutrition/log.g.dart index 39068768..61690155 100644 --- a/lib/models/nutrition/log.g.dart +++ b/lib/models/nutrition/log.g.dart @@ -9,14 +9,7 @@ part of 'log.dart'; Log _$LogFromJson(Map json) { $checkKeys( json, - requiredKeys: const [ - 'id', - 'plan', - 'datetime', - 'ingredient', - 'weight_unit', - 'amount' - ], + requiredKeys: const ['id', 'plan', 'datetime', 'ingredient', 'weight_unit', 'amount'], ); return Log( id: json['id'] as int?, diff --git a/lib/models/nutrition/meal.dart b/lib/models/nutrition/meal.dart index 04f50064..a89330bb 100644 --- a/lib/models/nutrition/meal.dart +++ b/lib/models/nutrition/meal.dart @@ -38,11 +38,7 @@ class Meal { @JsonKey(name: 'name') late String name; - @JsonKey( - includeFromJson: false, - includeToJson: false, - name: 'meal_items', - defaultValue: []) + @JsonKey(includeFromJson: false, includeToJson: false, name: 'meal_items', defaultValue: []) List mealItems = []; Meal({ diff --git a/lib/models/nutrition/meal_item.dart b/lib/models/nutrition/meal_item.dart index 90dce8d5..c6ae6773 100644 --- a/lib/models/nutrition/meal_item.dart +++ b/lib/models/nutrition/meal_item.dart @@ -67,8 +67,7 @@ class MealItem { MealItem.empty(); // Boilerplate - factory MealItem.fromJson(Map json) => - _$MealItemFromJson(json); + factory MealItem.fromJson(Map json) => _$MealItemFromJson(json); Map toJson() => _$MealItemToJson(this); diff --git a/lib/models/nutrition/nutritional_plan.dart b/lib/models/nutrition/nutritional_plan.dart index 267eed8c..978304c2 100644 --- a/lib/models/nutrition/nutritional_plan.dart +++ b/lib/models/nutrition/nutritional_plan.dart @@ -62,15 +62,12 @@ class NutritionalPlan { } // Boilerplate - factory NutritionalPlan.fromJson(Map json) => - _$NutritionalPlanFromJson(json); + factory NutritionalPlan.fromJson(Map json) => _$NutritionalPlanFromJson(json); Map toJson() => _$NutritionalPlanToJson(this); String getLabel(BuildContext context) { - return description != '' - ? description - : AppLocalizations.of(context).nutritionalPlan; + return description != '' ? description : AppLocalizations.of(context).nutritionalPlan; } /// Calculations @@ -89,9 +86,7 @@ class NutritionalPlan { final now = DateTime.now(); final today = DateTime(now.year, now.month, now.day); - return logEntriesValues.containsKey(today) - ? logEntriesValues[today]! - : NutritionalValues(); + return logEntriesValues.containsKey(today) ? logEntriesValues[today]! : NutritionalValues(); } NutritionalValues get nutritionalValues7DayAvg { @@ -114,12 +109,9 @@ class NutritionalPlan { /// Calculates the percentage each macro nutrient adds to the total energy BaseNutritionalValues energyPercentage(NutritionalValues values) { return BaseNutritionalValues( - values.protein > 0 - ? ((values.protein * ENERGY_PROTEIN * 100) / values.energy) - : 0, + values.protein > 0 ? ((values.protein * ENERGY_PROTEIN * 100) / values.energy) : 0, values.carbohydrates > 0 - ? ((values.carbohydrates * ENERGY_CARBOHYDRATES * 100) / - values.energy) + ? ((values.carbohydrates * ENERGY_CARBOHYDRATES * 100) / values.energy) : 0, values.fat > 0 ? ((values.fat * ENERGY_FAT * 100) / values.energy) : 0, ); @@ -139,8 +131,7 @@ class NutritionalPlan { Map get logEntriesValues { final out = {}; for (final log in logs) { - final date = - DateTime(log.datetime.year, log.datetime.month, log.datetime.day); + final date = DateTime(log.datetime.year, log.datetime.month, log.datetime.day); if (!out.containsKey(date)) { out[date] = NutritionalValues(); @@ -165,8 +156,7 @@ class NutritionalPlan { final List out = []; for (final log in logs) { final dateKey = DateTime(date.year, date.month, date.day); - final logKey = - DateTime(log.datetime.year, log.datetime.month, log.datetime.day); + final logKey = DateTime(log.datetime.year, log.datetime.month, log.datetime.day); if (dateKey == logKey) { out.add(log); @@ -183,8 +173,7 @@ class NutritionalPlan { final List out = []; for (final meal in meals) { for (final mealItem in meal.mealItems) { - final ingredientInList = - out.where((e) => e.ingredientId == mealItem.ingredientId); + final ingredientInList = out.where((e) => e.ingredientId == mealItem.ingredientId); if (ingredientInList.isEmpty) { out.add(mealItem); diff --git a/lib/models/nutrition/nutritional_plan.g.dart b/lib/models/nutrition/nutritional_plan.g.dart index 9b10d8a5..661a9f47 100644 --- a/lib/models/nutrition/nutritional_plan.g.dart +++ b/lib/models/nutrition/nutritional_plan.g.dart @@ -18,8 +18,7 @@ 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/nutrition/nutritional_values.dart b/lib/models/nutrition/nutritional_values.dart index e06ca42d..902fbd32 100644 --- a/lib/models/nutrition/nutritional_values.dart +++ b/lib/models/nutrition/nutritional_values.dart @@ -89,8 +89,8 @@ class NutritionalValues { @override //ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hash(energy, protein, carbohydrates, - carbohydratesSugar, fat, fatSaturated, fibres, sodium); + int get hashCode => Object.hash( + energy, protein, carbohydrates, carbohydratesSugar, fat, fatSaturated, fibres, sodium); } class BaseNutritionalValues { diff --git a/lib/models/nutrition/weight_unit.dart b/lib/models/nutrition/weight_unit.dart index b943d607..3bcab86e 100644 --- a/lib/models/nutrition/weight_unit.dart +++ b/lib/models/nutrition/weight_unit.dart @@ -34,7 +34,6 @@ class WeightUnit { }); // Boilerplate - factory WeightUnit.fromJson(Map json) => - _$WeightUnitFromJson(json); + factory WeightUnit.fromJson(Map json) => _$WeightUnitFromJson(json); Map toJson() => _$WeightUnitToJson(this); } diff --git a/lib/models/nutrition/weight_unit.g.dart b/lib/models/nutrition/weight_unit.g.dart index 74e1f0cf..6f2b9607 100644 --- a/lib/models/nutrition/weight_unit.g.dart +++ b/lib/models/nutrition/weight_unit.g.dart @@ -17,8 +17,7 @@ WeightUnit _$WeightUnitFromJson(Map json) { ); } -Map _$WeightUnitToJson(WeightUnit instance) => - { +Map _$WeightUnitToJson(WeightUnit instance) => { 'id': instance.id, 'name': instance.name, }; diff --git a/lib/models/user/profile.dart b/lib/models/user/profile.dart index 76eda4b2..5bb5335b 100644 --- a/lib/models/user/profile.dart +++ b/lib/models/user/profile.dart @@ -42,7 +42,6 @@ class Profile { }); // Boilerplate - factory Profile.fromJson(Map json) => - _$ProfileFromJson(json); + factory Profile.fromJson(Map json) => _$ProfileFromJson(json); Map toJson() => _$ProfileToJson(this); } diff --git a/lib/models/user/profile.g.dart b/lib/models/user/profile.g.dart index d9147ebe..fc05b9cf 100644 --- a/lib/models/user/profile.g.dart +++ b/lib/models/user/profile.g.dart @@ -9,12 +9,7 @@ part of 'profile.dart'; Profile _$ProfileFromJson(Map json) { $checkKeys( json, - requiredKeys: const [ - 'username', - 'email_verified', - 'is_trustworthy', - 'email' - ], + requiredKeys: const ['username', 'email_verified', 'is_trustworthy', 'email'], ); return Profile( username: json['username'] as String, diff --git a/lib/models/workouts/day.dart b/lib/models/workouts/day.dart index 625308ca..88b5954c 100644 --- a/lib/models/workouts/day.dart +++ b/lib/models/workouts/day.dart @@ -75,8 +75,7 @@ class Day { final now = DateTime.now(); final firstDayOfWeek = now.subtract(Duration(days: now.weekday)); - return DateFormat(DateFormat.WEEKDAY, locale) - .format(firstDayOfWeek.add(Duration(days: day))); + return DateFormat(DateFormat.WEEKDAY, locale).format(firstDayOfWeek.add(Duration(days: day))); } // Boilerplate diff --git a/lib/models/workouts/log.dart b/lib/models/workouts/log.dart index 7a6c328b..99cf2b53 100644 --- a/lib/models/workouts/log.dart +++ b/lib/models/workouts/log.dart @@ -111,8 +111,7 @@ class Log { /// Returns the text representation for a single setting, used in the gym mode String get singleLogRepTextNoNl { - return repText(reps, repetitionUnitObj, weight, weightUnitObj, rir) - .replaceAll('\n', ''); + return repText(reps, repetitionUnitObj, weight, weightUnitObj, rir).replaceAll('\n', ''); } /// Override the equals operator @@ -133,8 +132,8 @@ class Log { @override //ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hash( - exerciseBaseId, weight, weightUnitId, reps, repetitionUnitId, rir); + int get hashCode => + Object.hash(exerciseBaseId, weight, weightUnitId, reps, repetitionUnitId, rir); //@override //int get hashCode => super.hashCode; diff --git a/lib/models/workouts/repetition_unit.dart b/lib/models/workouts/repetition_unit.dart index feedcce6..a732c9a1 100644 --- a/lib/models/workouts/repetition_unit.dart +++ b/lib/models/workouts/repetition_unit.dart @@ -34,7 +34,6 @@ class RepetitionUnit { }); // Boilerplate - factory RepetitionUnit.fromJson(Map json) => - _$RepetitionUnitFromJson(json); + factory RepetitionUnit.fromJson(Map json) => _$RepetitionUnitFromJson(json); Map toJson() => _$RepetitionUnitToJson(this); } diff --git a/lib/models/workouts/repetition_unit.g.dart b/lib/models/workouts/repetition_unit.g.dart index 115dc338..33e6a815 100644 --- a/lib/models/workouts/repetition_unit.g.dart +++ b/lib/models/workouts/repetition_unit.g.dart @@ -17,8 +17,7 @@ RepetitionUnit _$RepetitionUnitFromJson(Map json) { ); } -Map _$RepetitionUnitToJson(RepetitionUnit instance) => - { +Map _$RepetitionUnitToJson(RepetitionUnit instance) => { 'id': instance.id, 'name': instance.name, }; diff --git a/lib/models/workouts/session.dart b/lib/models/workouts/session.dart index 27aee13f..1c2aea7b 100644 --- a/lib/models/workouts/session.dart +++ b/lib/models/workouts/session.dart @@ -41,18 +41,10 @@ class WorkoutSession { @JsonKey(required: false, defaultValue: '') late String notes; - @JsonKey( - required: true, - name: 'time_start', - toJson: timeToString, - fromJson: stringToTime) + @JsonKey(required: true, name: 'time_start', toJson: timeToString, fromJson: stringToTime) late TimeOfDay timeStart; - @JsonKey( - required: true, - name: 'time_end', - toJson: timeToString, - fromJson: stringToTime) + @JsonKey(required: true, name: 'time_end', toJson: timeToString, fromJson: stringToTime) late TimeOfDay timeEnd; WorkoutSession(); @@ -73,8 +65,7 @@ class WorkoutSession { } // Boilerplate - factory WorkoutSession.fromJson(Map json) => - _$WorkoutSessionFromJson(json); + 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/workouts/session.g.dart index e16affad..79f4fee4 100644 --- a/lib/models/workouts/session.g.dart +++ b/lib/models/workouts/session.g.dart @@ -9,14 +9,7 @@ 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? @@ -28,8 +21,7 @@ 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, 'date': toDate(instance.date), diff --git a/lib/models/workouts/set.dart b/lib/models/workouts/set.dart index f65c9222..9d9838c8 100644 --- a/lib/models/workouts/set.dart +++ b/lib/models/workouts/set.dart @@ -114,9 +114,7 @@ class Set { /// Returns all settings for the given exercise List filterSettingsByExercise(ExerciseBase exerciseBase) { - return settings - .where((element) => element.exerciseBaseId == exerciseBase.id) - .toList(); + return settings.where((element) => element.exerciseBaseId == exerciseBase.id).toList(); } /// Returns a list with all repetitions for the given exercise diff --git a/lib/models/workouts/setting.dart b/lib/models/workouts/setting.dart index 26104864..e9db2c19 100644 --- a/lib/models/workouts/setting.dart +++ b/lib/models/workouts/setting.dart @@ -29,18 +29,7 @@ part 'setting.g.dart'; class Setting { /// Allowed RiR values. This list must be kept in sync with RIR_OPTIONS in the /// wger server - static const POSSIBLE_RIR_VALUES = [ - '', - '0', - '0.5', - '1', - '1.5', - '2', - '2.5', - '3', - '3.5', - '4' - ]; + static const POSSIBLE_RIR_VALUES = ['', '0', '0.5', '1', '1.5', '2', '2.5', '3', '3.5', '4']; static const DEFAULT_RIR = ''; @JsonKey(required: true) @@ -99,8 +88,7 @@ class Setting { Setting.empty(); // Boilerplate - factory Setting.fromJson(Map json) => - _$SettingFromJson(json); + factory Setting.fromJson(Map json) => _$SettingFromJson(json); Map toJson() => _$SettingToJson(this); diff --git a/lib/models/workouts/weight_unit.dart b/lib/models/workouts/weight_unit.dart index edb94b1f..82463c75 100644 --- a/lib/models/workouts/weight_unit.dart +++ b/lib/models/workouts/weight_unit.dart @@ -34,7 +34,6 @@ class WeightUnit { }); // Boilerplate - factory WeightUnit.fromJson(Map json) => - _$WeightUnitFromJson(json); + factory WeightUnit.fromJson(Map json) => _$WeightUnitFromJson(json); Map toJson() => _$WeightUnitToJson(this); } diff --git a/lib/models/workouts/weight_unit.g.dart b/lib/models/workouts/weight_unit.g.dart index 74e1f0cf..6f2b9607 100644 --- a/lib/models/workouts/weight_unit.g.dart +++ b/lib/models/workouts/weight_unit.g.dart @@ -17,8 +17,7 @@ WeightUnit _$WeightUnitFromJson(Map json) { ); } -Map _$WeightUnitToJson(WeightUnit instance) => - { +Map _$WeightUnitToJson(WeightUnit instance) => { 'id': instance.id, 'name': instance.name, }; diff --git a/lib/models/workouts/workout_plan.dart b/lib/models/workouts/workout_plan.dart index 586db249..3619eda8 100644 --- a/lib/models/workouts/workout_plan.dart +++ b/lib/models/workouts/workout_plan.dart @@ -63,8 +63,7 @@ class WorkoutPlan { } // Boilerplate - factory WorkoutPlan.fromJson(Map json) => - _$WorkoutPlanFromJson(json); + factory WorkoutPlan.fromJson(Map json) => _$WorkoutPlanFromJson(json); Map toJson() => _$WorkoutPlanToJson(this); @@ -74,11 +73,8 @@ class WorkoutPlan { /// means here that the values are the same, i.e. logs with the same weight, /// reps, etc. are considered equal. Workout ID, Log ID and date are not /// considered. - List filterLogsByExerciseBase(ExerciseBase exerciseBase, - {bool unique = false}) { - var out = logs - .where((element) => element.exerciseBaseId == exerciseBase.id) - .toList(); + List filterLogsByExerciseBase(ExerciseBase exerciseBase, {bool unique = false}) { + var out = logs.where((element) => element.exerciseBaseId == exerciseBase.id).toList(); if (unique) { out = out.toSet().toList(); diff --git a/lib/models/workouts/workout_plan.g.dart b/lib/models/workouts/workout_plan.g.dart index ef156e3e..ac1d6fa9 100644 --- a/lib/models/workouts/workout_plan.g.dart +++ b/lib/models/workouts/workout_plan.g.dart @@ -19,8 +19,7 @@ WorkoutPlan _$WorkoutPlanFromJson(Map json) { ); } -Map _$WorkoutPlanToJson(WorkoutPlan instance) => - { +Map _$WorkoutPlanToJson(WorkoutPlan instance) => { 'id': instance.id, 'creation_date': instance.creationDate.toIso8601String(), 'name': instance.name, diff --git a/lib/providers/add_exercise.dart b/lib/providers/add_exercise.dart index 349f1a7a..67899797 100644 --- a/lib/providers/add_exercise.dart +++ b/lib/providers/add_exercise.dart @@ -65,13 +65,11 @@ class AddExerciseProvider with ChangeNotifier { set descriptionEn(String description) => _descriptionEn = description; - set descriptionTrans(String description) => - _descriptionTranslation = description; + set descriptionTrans(String description) => _descriptionTranslation = description; set alternateNamesEn(List names) => _alternativeNamesEn = names; - set alternateNamesTrans(List names) => - _alternativeNamesTranslation = names; + set alternateNamesTrans(List names) => _alternativeNamesTranslation = names; set equipment(List equipment) => _equipment = equipment; @@ -187,8 +185,7 @@ class AddExerciseProvider with ChangeNotifier { exerciseTranslationEn = await addExerciseTranslation(exerciseTranslationEn); for (final alias in _alternativeNamesEn) { if (alias.isNotEmpty) { - exerciseTranslationEn.alias - .add(await addExerciseAlias(alias, exerciseTranslationEn.id!)); + exerciseTranslationEn.alias.add(await addExerciseAlias(alias, exerciseTranslationEn.id!)); } } @@ -196,8 +193,7 @@ class AddExerciseProvider with ChangeNotifier { if (language != null) { Translation exerciseTranslationLang = exerciseTranslation; exerciseTranslationLang.base = base; - exerciseTranslationLang = - await addExerciseTranslation(exerciseTranslationLang); + exerciseTranslationLang = await addExerciseTranslation(exerciseTranslationLang); for (final alias in _alternativeNamesTranslation) { if (alias.isNotEmpty) { exerciseTranslationLang.alias.add( @@ -221,8 +217,7 @@ class AddExerciseProvider with ChangeNotifier { Future addExerciseBase() async { final Uri postUri = baseProvider.makeUrl(_exerciseBaseUrlPath); - final Map newBaseMap = - await baseProvider.post(base.toJson(), postUri); + final Map newBaseMap = await baseProvider.post(base.toJson(), postUri); final ExerciseBase newExerciseBase = ExerciseBase.fromJson(newBaseMap); notifyListeners(); @@ -233,8 +228,7 @@ class AddExerciseProvider with ChangeNotifier { final Uri postUri = baseProvider.makeUrl(_exerciseVariationPath); // We send an empty dictionary since at the moment the variations only have an ID - final Map variationMap = - await baseProvider.post({}, postUri); + final Map variationMap = await baseProvider.post({}, postUri); final Variation newVariation = Variation.fromJson(variationMap); _variationId = newVariation.id; notifyListeners(); @@ -243,8 +237,7 @@ class AddExerciseProvider with ChangeNotifier { Future addImages(ExerciseBase base) async { for (final image in _exerciseImages) { - final request = - http.MultipartRequest('POST', baseProvider.makeUrl(_imagesUrlPath)); + final request = http.MultipartRequest('POST', baseProvider.makeUrl(_imagesUrlPath)); request.headers.addAll(baseProvider.getDefaultHeaders(includeAuth: true)); request.files.add(await http.MultipartFile.fromPath('image', image.path)); @@ -260,8 +253,7 @@ class AddExerciseProvider with ChangeNotifier { Future addExerciseTranslation(Translation exercise) async { final Uri postUri = baseProvider.makeUrl(_exerciseTranslationUrlPath); - final Map newTranslation = - await baseProvider.post(exercise.toJson(), postUri); + final Map newTranslation = await baseProvider.post(exercise.toJson(), postUri); final Translation newExercise = Translation.fromJson(newTranslation); notifyListeners(); @@ -272,8 +264,7 @@ class AddExerciseProvider with ChangeNotifier { final alias = Alias(exerciseId: exerciseId, alias: name); final Uri postUri = baseProvider.makeUrl(_exerciseAliasPath); - final Alias newAlias = - Alias.fromJson(await baseProvider.post(alias.toJson(), postUri)); + final Alias newAlias = Alias.fromJson(await baseProvider.post(alias.toJson(), postUri)); notifyListeners(); return newAlias; diff --git a/lib/providers/auth.dart b/lib/providers/auth.dart index 2ee0c109..5ff7f4f7 100644 --- a/lib/providers/auth.dart +++ b/lib/providers/auth.dart @@ -63,14 +63,12 @@ class AuthProvider with ChangeNotifier { AndroidMetadata.metaDataAsMap.then((value) => metadata = value!); } else if (Platform.isLinux || Platform.isMacOS) { metadata = { - MANIFEST_KEY_CHECK_UPDATE: - Platform.environment[MANIFEST_KEY_CHECK_UPDATE] ?? '', + MANIFEST_KEY_CHECK_UPDATE: Platform.environment[MANIFEST_KEY_CHECK_UPDATE] ?? '', MANIFEST_KEY_API: Platform.environment[MANIFEST_KEY_API] ?? '' }; } } on PlatformException { - throw Exception( - 'An error occurred reading the metadata from AndroidManifest'); + throw Exception('An error occurred reading the metadata from AndroidManifest'); } catch (error) {} } } @@ -101,8 +99,7 @@ class AuthProvider with ChangeNotifier { } /// Checking if there is a new version of the application. - Future applicationUpdateRequired( - [String? version, Map? metadata]) async { + Future applicationUpdateRequired([String? version, Map? metadata]) async { metadata ??= this.metadata; if (!metadata.containsKey(MANIFEST_KEY_CHECK_UPDATE) || metadata[MANIFEST_KEY_CHECK_UPDATE] == 'false') { @@ -125,10 +122,7 @@ class AuthProvider with ChangeNotifier { required String serverUrl}) async { // Register try { - final Map data = { - 'username': username, - 'password': password - }; + final Map data = {'username': username, 'password': password}; if (email != '') { data['email'] = email; } @@ -136,8 +130,7 @@ class AuthProvider with ChangeNotifier { makeUri(serverUrl, REGISTRATION_URL), headers: { HttpHeaders.contentTypeHeader: 'application/json; charset=UTF-8', - HttpHeaders.authorizationHeader: - 'Token ${metadata[MANIFEST_KEY_API]}', + HttpHeaders.authorizationHeader: 'Token ${metadata[MANIFEST_KEY_API]}', HttpHeaders.userAgentHeader: getAppNameHeader(), }, body: json.encode(data), diff --git a/lib/providers/base_provider.dart b/lib/providers/base_provider.dart index 5ce38fc8..7be7856e 100644 --- a/lib/providers/base_provider.dart +++ b/lib/providers/base_provider.dart @@ -51,8 +51,7 @@ class WgerBaseProvider { } /// Helper function to make a URL. - Uri makeUrl(String path, - {int? id, String? objectMethod, Map? query}) { + Uri makeUrl(String path, {int? id, String? objectMethod, Map? query}) { return makeUri(auth.serverUrl!, path, id, objectMethod, query); } diff --git a/lib/providers/body_weight.dart b/lib/providers/body_weight.dart index 0cdef8a9..82b0ad4d 100644 --- a/lib/providers/body_weight.dart +++ b/lib/providers/body_weight.dart @@ -77,8 +77,7 @@ class BodyWeightProvider with ChangeNotifier { Future addEntry(WeightEntry entry) async { // Create entry and return it - final data = await baseProvider.post( - entry.toJson(), baseProvider.makeUrl(BODY_WEIGHT_URL)); + final data = await baseProvider.post(entry.toJson(), baseProvider.makeUrl(BODY_WEIGHT_URL)); final WeightEntry weightEntry = WeightEntry.fromJson(data); _entries.add(weightEntry); _entries.sort((a, b) => b.date.compareTo(a.date)); @@ -97,8 +96,7 @@ class BodyWeightProvider with ChangeNotifier { Future deleteEntry(int id) async { // Send the request and remove the entry from the list... - final existingEntryIndex = - _entries.indexWhere((element) => element.id == id); + final existingEntryIndex = _entries.indexWhere((element) => element.id == id); final existingWeightEntry = _entries[existingEntryIndex]; _entries.removeAt(existingEntryIndex); notifyListeners(); diff --git a/lib/providers/exercises.dart b/lib/providers/exercises.dart index 02343dff..2cfe0bdd 100644 --- a/lib/providers/exercises.dart +++ b/lib/providers/exercises.dart @@ -136,8 +136,7 @@ class ExercisesProvider with ChangeNotifier { title: 'Equipment', items: Map.fromEntries( _equipment.map( - (singleEquipment) => - MapEntry(singleEquipment, false), + (singleEquipment) => MapEntry(singleEquipment, false), ), ), ), @@ -167,15 +166,13 @@ class ExercisesProvider with ChangeNotifier { // Filter by exercise category and equipment (REPLACE WITH HTTP REQUEST) filteredExerciseBases = filteredItems.where((exercise) { - final bool isInAnyCategory = - filters!.exerciseCategories.selected.contains(exercise.category); + final bool isInAnyCategory = filters!.exerciseCategories.selected.contains(exercise.category); final bool doesContainAnyEquipment = filters!.equipment.selected.any( (selectedEquipment) => exercise.equipment.contains(selectedEquipment), ); - return (isInAnyCategory || - filters!.exerciseCategories.selected.isEmpty) && + return (isInAnyCategory || filters!.exerciseCategories.selected.isEmpty) && (doesContainAnyEquipment || filters!.equipment.selected.isEmpty); }).toList(); } @@ -203,8 +200,7 @@ class ExercisesProvider with ChangeNotifier { /// returned exercises. Since this is typically called by one exercise, we are /// not interested in seeing that same exercise returned in the list of variations. /// If this parameter is not passed, all exercises are returned. - List findExerciseBasesByVariationId(int id, - {int? exerciseBaseIdToExclude}) { + List findExerciseBasesByVariationId(int id, {int? exerciseBaseIdToExclude}) { var out = _exerciseBases.where((base) => base.variationId == id).toList(); if (exerciseBaseIdToExclude != null) { @@ -246,24 +242,22 @@ class ExercisesProvider with ChangeNotifier { } Future fetchAndSetCategories() async { - final categories = await baseProvider - .fetchPaginated(baseProvider.makeUrl(_categoriesUrlPath)); + final categories = await baseProvider.fetchPaginated(baseProvider.makeUrl(_categoriesUrlPath)); for (final category in categories) { _categories.add(ExerciseCategory.fromJson(category)); } } Future fetchAndSetVariations() async { - final variations = await baseProvider - .fetchPaginated(baseProvider.makeUrl(_exerciseVariationsUrlPath)); + final variations = + await baseProvider.fetchPaginated(baseProvider.makeUrl(_exerciseVariationsUrlPath)); for (final variation in variations) { _variations.add(Variation.fromJson(variation)); } } Future fetchAndSetMuscles() async { - final muscles = await baseProvider - .fetchPaginated(baseProvider.makeUrl(_musclesUrlPath)); + final muscles = await baseProvider.fetchPaginated(baseProvider.makeUrl(_musclesUrlPath)); for (final muscle in muscles) { _muscles.add(Muscle.fromJson(muscle)); @@ -271,8 +265,7 @@ class ExercisesProvider with ChangeNotifier { } Future fetchAndSetEquipment() async { - final equipments = await baseProvider - .fetchPaginated(baseProvider.makeUrl(_equipmentUrlPath)); + final equipments = await baseProvider.fetchPaginated(baseProvider.makeUrl(_equipmentUrlPath)); for (final equipment in equipments) { _equipment.add(Equipment.fromJson(equipment)); @@ -280,8 +273,7 @@ class ExercisesProvider with ChangeNotifier { } Future fetchAndSetLanguages() async { - final languageData = await baseProvider - .fetchPaginated(baseProvider.makeUrl(_languageUrlPath)); + final languageData = await baseProvider.fetchPaginated(baseProvider.makeUrl(_languageUrlPath)); for (final language in languageData) { _languages.add(Language.fromJson(language)); @@ -313,14 +305,10 @@ class ExercisesProvider with ChangeNotifier { /// a full exercise base ExerciseBase readExerciseBaseFromBaseInfo(dynamic baseData) { final category = ExerciseCategory.fromJson(baseData['category']); - final musclesPrimary = - baseData['muscles'].map((e) => Muscle.fromJson(e)).toList(); - final musclesSecondary = - baseData['muscles_secondary'].map((e) => Muscle.fromJson(e)).toList(); - final equipment = - baseData['equipment'].map((e) => Equipment.fromJson(e)).toList(); - final images = - baseData['images'].map((e) => ExerciseImage.fromJson(e)).toList(); + final musclesPrimary = baseData['muscles'].map((e) => Muscle.fromJson(e)).toList(); + final musclesSecondary = baseData['muscles_secondary'].map((e) => Muscle.fromJson(e)).toList(); + final equipment = baseData['equipment'].map((e) => Equipment.fromJson(e)).toList(); + final images = baseData['images'].map((e) => ExerciseImage.fromJson(e)).toList(); final videos = baseData['videos'].map((e) => Video.fromJson(e)).toList(); final List exercises = []; @@ -330,10 +318,8 @@ class ExercisesProvider with ChangeNotifier { .map((e) => Alias(exerciseId: exercise.id!, alias: e['alias'])) .toList() .cast(); - exercise.notes = exerciseData['notes'] - .map((e) => Comment.fromJson(e)) - .toList() - .cast(); + exercise.notes = + exerciseData['notes'].map((e) => Comment.fromJson(e)).toList().cast(); exercise.baseId = baseData['id']; exercise.language = findLanguageById(exerciseData['language']); exercises.add(exercise); @@ -390,8 +376,7 @@ class ExercisesProvider with ChangeNotifier { // Only uncomment if need to delete the table, (only for testing purposes). // database.delete(database.exerciseTableItems).go(); // Fetch the list of rows from ExercisesDataTable. ExerciseTable is the Type of the Row - final List items = - await database.select(database.exerciseTableItems).get(); + final List items = await database.select(database.exerciseTableItems).get(); final prefs = await SharedPreferences.getInstance(); await checkExerciseCacheVersion(); @@ -427,8 +412,7 @@ class ExercisesProvider with ChangeNotifier { // Load categories, muscles, equipment and languages final data = await Future.wait([ - baseProvider.fetch(baseProvider - .makeUrl(_exerciseBaseInfoUrlPath, query: {'limit': '1000'})), + baseProvider.fetch(baseProvider.makeUrl(_exerciseBaseInfoUrlPath, query: {'limit': '1000'})), fetchAndSetCategories(), fetchAndSetMuscles(), fetchAndSetEquipment(), @@ -438,41 +422,27 @@ class ExercisesProvider with ChangeNotifier { final exerciseBaseData = data[0]['results']; - _exerciseBases = exerciseBaseData - .map((e) => readExerciseBaseFromBaseInfo(e)) - .toList() - .cast(); + _exerciseBases = + exerciseBaseData.map((e) => readExerciseBaseFromBaseInfo(e)).toList().cast(); try { // Save the result to the cache for (int i = 0; i < _exerciseBases.length; i++) { await database.into(database.exerciseTableItems).insert( ExerciseTableItemsCompanion.insert( - category: (i < _categories.length) - ? Value(_categories[i]) - : const Value(null), - equipment: (i < _equipment.length) - ? Value(_equipment[i]) - : const Value(null), - exercisebase: (i < _exerciseBases.length) - ? Value(_exerciseBases[i]) - : const Value(null), - muscle: (i < _muscles.length) - ? Value(_muscles[i]) - : const Value(null), - variation: (i < _variations.length) - ? Value(_variations[i]) - : const Value(null), - language: (i < _languages.length) - ? Value(_languages[i]) - : const Value(null), + category: (i < _categories.length) ? Value(_categories[i]) : const Value(null), + equipment: (i < _equipment.length) ? Value(_equipment[i]) : const Value(null), + exercisebase: + (i < _exerciseBases.length) ? Value(_exerciseBases[i]) : const Value(null), + muscle: (i < _muscles.length) ? Value(_muscles[i]) : const Value(null), + variation: (i < _variations.length) ? Value(_variations[i]) : const Value(null), + language: (i < _languages.length) ? Value(_languages[i]) : const Value(null), ), ); } final cacheData = { - 'expiresIn': DateTime.now() - .add(const Duration(days: EXERCISE_CACHE_DAYS)) - .toIso8601String(), + 'expiresIn': + DateTime.now().add(const Duration(days: EXERCISE_CACHE_DAYS)).toIso8601String(), }; log("Saved ${_exerciseBases.length} exercises to cache. Valid till ${cacheData['expiresIn']}"); @@ -490,8 +460,7 @@ class ExercisesProvider with ChangeNotifier { /// We could do this locally, but the server has better text searching capabilities /// with postgresql. Future> searchExercise(String name, - {String languageCode = LANGUAGE_SHORT_ENGLISH, - bool searchEnglish = false}) async { + {String languageCode = LANGUAGE_SHORT_ENGLISH, bool searchEnglish = false}) async { if (name.length <= 1) { return []; } @@ -559,10 +528,8 @@ class Filters { List get filterCategories => [exerciseCategories, equipment]; bool get isNothingMarked { - final isExerciseCategoryMarked = - exerciseCategories.items.values.any((isMarked) => isMarked); - final isEquipmentMarked = - equipment.items.values.any((isMarked) => isMarked); + final isExerciseCategoryMarked = exerciseCategories.items.values.any((isMarked) => isMarked); + final isEquipmentMarked = equipment.items.values.any((isMarked) => isMarked); return !isExerciseCategoryMarked && !isEquipmentMarked; } diff --git a/lib/providers/gallery.dart b/lib/providers/gallery.dart index c41c4d32..ce1980b4 100644 --- a/lib/providers/gallery.dart +++ b/lib/providers/gallery.dart @@ -32,8 +32,7 @@ class GalleryProvider extends WgerBaseProvider with ChangeNotifier { List images = []; - GalleryProvider(AuthProvider auth, List entries, - [http.Client? client]) + GalleryProvider(AuthProvider auth, List entries, [http.Client? client]) : images = entries, super(auth, client); @@ -64,8 +63,7 @@ class GalleryProvider extends WgerBaseProvider with ChangeNotifier { HttpHeaders.authorizationHeader: 'Token ${auth.token}', HttpHeaders.userAgentHeader: auth.getAppNameHeader(), }); - request.files - .add(await http.MultipartFile.fromPath('image', imageFile.path)); + request.files.add(await http.MultipartFile.fromPath('image', imageFile.path)); request.fields['date'] = toDate(image.date)!; request.fields['description'] = image.description; @@ -79,8 +77,7 @@ class GalleryProvider extends WgerBaseProvider with ChangeNotifier { } Future editImage(gallery.Image image, XFile? imageFile) async { - final request = - http.MultipartRequest('PATCH', makeUrl(_galleryUrlPath, id: image.id)); + final request = http.MultipartRequest('PATCH', makeUrl(_galleryUrlPath, id: image.id)); request.headers.addAll({ HttpHeaders.authorizationHeader: 'Token ${auth.token}', HttpHeaders.userAgentHeader: auth.getAppNameHeader(), @@ -88,8 +85,7 @@ class GalleryProvider extends WgerBaseProvider with ChangeNotifier { // Only send the image if a new one was selected if (imageFile != null) { - request.files - .add(await http.MultipartFile.fromPath('image', imageFile.path)); + request.files.add(await http.MultipartFile.fromPath('image', imageFile.path)); } // Update image info diff --git a/lib/providers/measurement.dart b/lib/providers/measurement.dart index b4045771..7f2c4ee3 100644 --- a/lib/providers/measurement.dart +++ b/lib/providers/measurement.dart @@ -68,15 +68,13 @@ class MeasurementProvider with ChangeNotifier { final categoryIndex = _categories.indexOf(category); // Process the response - final requestUrl = baseProvider - .makeUrl(_entryUrl, query: {'category': category.id.toString()}); + final requestUrl = baseProvider.makeUrl(_entryUrl, query: {'category': category.id.toString()}); final data = await baseProvider.fetch(requestUrl); final List loadedEntries = []; for (final entry in data['results']) { loadedEntries.add(MeasurementEntry.fromJson(entry)); } - final MeasurementCategory editedCategory = - category.copyWith(entries: loadedEntries); + final MeasurementCategory editedCategory = category.copyWith(entries: loadedEntries); _categories.removeAt(categoryIndex); _categories.insert(categoryIndex, editedCategory); notifyListeners(); @@ -85,18 +83,15 @@ class MeasurementProvider with ChangeNotifier { /// Fetches and sets the measurement categories and their entries Future fetchAndSetAllCategoriesAndEntries() async { await fetchAndSetCategories(); - await Future.wait( - _categories.map((e) => fetchAndSetCategoryEntries(e.id!)).toList()); + await Future.wait(_categories.map((e) => fetchAndSetCategoryEntries(e.id!)).toList()); } /// Adds a measurement category Future addCategory(MeasurementCategory category) async { final Uri postUri = baseProvider.makeUrl(_categoryUrl); - final Map newCategoryMap = - await baseProvider.post(category.toJson(), postUri); - final MeasurementCategory newCategory = - MeasurementCategory.fromJson(newCategoryMap); + final Map newCategoryMap = await baseProvider.post(category.toJson(), postUri); + final MeasurementCategory newCategory = MeasurementCategory.fromJson(newCategoryMap); _categories.add(newCategory); _categories.sort((a, b) => a.name.compareTo(b.name)); notifyListeners(); @@ -123,16 +118,14 @@ class MeasurementProvider with ChangeNotifier { Future editCategory(int id, String? newName, String? newUnit) async { final MeasurementCategory oldCategory = findCategoryById(id); final int categoryIndex = _categories.indexOf(oldCategory); - final MeasurementCategory tempNewCategory = - oldCategory.copyWith(name: newName, unit: newUnit); + final MeasurementCategory tempNewCategory = oldCategory.copyWith(name: newName, unit: newUnit); final Map response = await baseProvider.patch( tempNewCategory.toJson(), baseProvider.makeUrl(_categoryUrl, id: id), ); final MeasurementCategory newCategory = - MeasurementCategory.fromJson(response) - .copyWith(entries: oldCategory.entries); + MeasurementCategory.fromJson(response).copyWith(entries: oldCategory.entries); _categories.removeAt(categoryIndex); _categories.insert(categoryIndex, newCategory); notifyListeners(); @@ -142,8 +135,7 @@ class MeasurementProvider with ChangeNotifier { Future addEntry(MeasurementEntry entry) async { final Uri postUri = baseProvider.makeUrl(_entryUrl); - final Map newEntryMap = - await baseProvider.post(entry.toJson(), postUri); + final Map newEntryMap = await baseProvider.post(entry.toJson(), postUri); final MeasurementEntry newEntry = MeasurementEntry.fromJson(newEntryMap); final MeasurementCategory category = findCategoryById(newEntry.category); @@ -191,8 +183,8 @@ class MeasurementProvider with ChangeNotifier { date: newDate, ); - final Map response = await baseProvider.patch( - tempNewEntry.toJson(), baseProvider.makeUrl(_entryUrl, id: id)); + final Map response = + await baseProvider.patch(tempNewEntry.toJson(), baseProvider.makeUrl(_entryUrl, id: id)); final MeasurementEntry newEntry = MeasurementEntry.fromJson(response); category.entries.removeAt(entryIndex); diff --git a/lib/providers/nutrition.dart b/lib/providers/nutrition.dart index 57274938..789008a3 100644 --- a/lib/providers/nutrition.dart +++ b/lib/providers/nutrition.dart @@ -46,8 +46,7 @@ class NutritionPlansProvider with ChangeNotifier { List _plans = []; List _ingredients = []; - NutritionPlansProvider(this.baseProvider, List entries) - : _plans = entries; + NutritionPlansProvider(this.baseProvider, List entries) : _plans = entries; List get items { return [..._plans]; @@ -92,8 +91,8 @@ class NutritionPlansProvider with ChangeNotifier { /// Fetches and sets all plans sparsely, i.e. only with the data on the plan /// object itself and no child attributes Future fetchAndSetAllPlansSparse() async { - final data = await baseProvider.fetchPaginated( - baseProvider.makeUrl(_nutritionalPlansPath, query: {'limit': '1000'})); + final data = await baseProvider + .fetchPaginated(baseProvider.makeUrl(_nutritionalPlansPath, query: {'limit': '1000'})); _plans = []; for (final planData in data) { final plan = NutritionalPlan.fromJson(planData); @@ -105,8 +104,7 @@ class NutritionPlansProvider with ChangeNotifier { /// Fetches and sets all plans fully, i.e. with all corresponding child objects Future fetchAndSetAllPlansFull() async { - final data = await baseProvider - .fetchPaginated(baseProvider.makeUrl(_nutritionalPlansPath)); + final data = await baseProvider.fetchPaginated(baseProvider.makeUrl(_nutritionalPlansPath)); for (final entry in data) { await fetchAndSetPlanFull(entry['id']); } @@ -196,8 +194,7 @@ class NutritionPlansProvider with ChangeNotifier { _plans.removeAt(existingPlanIndex); notifyListeners(); - final response = - await baseProvider.deleteRequest(_nutritionalPlansPath, id); + final response = await baseProvider.deleteRequest(_nutritionalPlansPath, id); if (response.statusCode >= 400) { _plans.insert(existingPlanIndex, existingPlan); @@ -254,8 +251,7 @@ class NutritionPlansProvider with ChangeNotifier { /// Adds a meal item to a meal Future addMealItem(MealItem mealItem, Meal meal) async { - final data = await baseProvider.post( - mealItem.toJson(), baseProvider.makeUrl(_mealItemPath)); + final data = await baseProvider.post(mealItem.toJson(), baseProvider.makeUrl(_mealItemPath)); mealItem = MealItem.fromJson(data); mealItem.ingredientObj = await fetchIngredient(mealItem.ingredientId); @@ -275,8 +271,7 @@ class NutritionPlansProvider with ChangeNotifier { notifyListeners(); // Try to delete - final response = - await baseProvider.deleteRequest(_mealItemPath, mealItem.id!); + final response = await baseProvider.deleteRequest(_mealItemPath, mealItem.id!); if (response.statusCode >= 400) { meal.mealItems.insert(mealItemIndex, existingMealItem); notifyListeners(); @@ -319,8 +314,7 @@ class NutritionPlansProvider with ChangeNotifier { if (prefs.containsKey(PREFS_INGREDIENTS)) { final ingredientData = json.decode(prefs.getString(PREFS_INGREDIENTS)!); if (DateTime.parse(ingredientData['expiresIn']).isAfter(DateTime.now())) { - ingredientData['ingredients'] - .forEach((e) => _ingredients.add(Ingredient.fromJson(e))); + ingredientData['ingredients'].forEach((e) => _ingredients.add(Ingredient.fromJson(e))); log("Read ${ingredientData['ingredients'].length} ingredients from cache. Valid till ${ingredientData['expiresIn']}"); return; } @@ -329,9 +323,7 @@ class NutritionPlansProvider with ChangeNotifier { // Initialise an empty cache final ingredientData = { 'date': DateTime.now().toIso8601String(), - 'expiresIn': DateTime.now() - .add(const Duration(days: DAYS_TO_CACHE)) - .toIso8601String(), + 'expiresIn': DateTime.now().add(const Duration(days: DAYS_TO_CACHE)).toIso8601String(), 'ingredients': [] }; prefs.setString(PREFS_INGREDIENTS, json.encode(ingredientData)); @@ -355,8 +347,8 @@ class NutritionPlansProvider with ChangeNotifier { // Send the request final response = await baseProvider.fetch( - baseProvider.makeUrl(_ingredientSearchPath, - query: {'term': name, 'language': languages.join(',')}), + baseProvider + .makeUrl(_ingredientSearchPath, query: {'term': name, 'language': languages.join(',')}), ); // Process the response @@ -398,14 +390,12 @@ class NutritionPlansProvider with ChangeNotifier { } /// Log custom ingredient to nutrition diary - Future logIngredientToDiary(MealItem mealItem, int planId, - [DateTime? dateTime]) async { + Future logIngredientToDiary(MealItem mealItem, int planId, [DateTime? dateTime]) async { final plan = findById(planId); mealItem.ingredientObj = await fetchIngredient(mealItem.ingredientId); final Log log = Log.fromMealItem(mealItem, plan.id!, null, dateTime); - final data = await baseProvider.post( - log.toJson(), baseProvider.makeUrl(_nutritionDiaryPath)); + final data = await baseProvider.post(log.toJson(), baseProvider.makeUrl(_nutritionDiaryPath)); log.id = data['id']; plan.logs.add(log); notifyListeners(); @@ -425,11 +415,7 @@ class NutritionPlansProvider with ChangeNotifier { final data = await baseProvider.fetchPaginated( baseProvider.makeUrl( _nutritionDiaryPath, - query: { - 'plan': plan.id.toString(), - 'limit': '999', - 'ordering': 'datetime' - }, + query: {'plan': plan.id.toString(), 'limit': '999', 'ordering': 'datetime'}, ), ); diff --git a/lib/providers/user.dart b/lib/providers/user.dart index 229c55aa..cb547c49 100644 --- a/lib/providers/user.dart +++ b/lib/providers/user.dart @@ -38,8 +38,7 @@ class UserProvider with ChangeNotifier { /// Fetch the current user's profile Future fetchAndSetProfile() async { - final userData = - await baseProvider.fetch(baseProvider.makeUrl(PROFILE_URL)); + final userData = await baseProvider.fetch(baseProvider.makeUrl(PROFILE_URL)); try { profile = Profile.fromJson(userData); } catch (error) { diff --git a/lib/providers/workout_plans.dart b/lib/providers/workout_plans.dart index 69ca3142..c5d2406a 100644 --- a/lib/providers/workout_plans.dart +++ b/lib/providers/workout_plans.dart @@ -53,8 +53,7 @@ class WorkoutPlansProvider with ChangeNotifier { List _weightUnits = []; List _repetitionUnit = []; - WorkoutPlansProvider( - this.baseProvider, ExercisesProvider exercises, List entries) + WorkoutPlansProvider(this.baseProvider, ExercisesProvider exercises, List entries) : _exercises = exercises, _workoutPlans = entries; @@ -76,8 +75,7 @@ class WorkoutPlansProvider with ChangeNotifier { /// Return the default weight unit (kg) WeightUnit get defaultWeightUnit { - return _weightUnits - .firstWhere((element) => element.id == DEFAULT_WEIGHT_UNIT); + return _weightUnits.firstWhere((element) => element.id == DEFAULT_WEIGHT_UNIT); } List get repetitionUnits { @@ -86,8 +84,7 @@ class WorkoutPlansProvider with ChangeNotifier { /// Return the default weight unit (reps) RepetitionUnit get defaultRepetitionUnit { - return _repetitionUnit - .firstWhere((element) => element.id == REP_UNIT_REPETITIONS); + return _repetitionUnit.firstWhere((element) => element.id == REP_UNIT_REPETITIONS); } List getPlans() { @@ -194,8 +191,7 @@ class WorkoutPlansProvider with ChangeNotifier { // Days final List days = []; final daysData = await baseProvider.fetch( - baseProvider - .makeUrl(_daysUrlPath, query: {'training': plan.id.toString()}), + baseProvider.makeUrl(_daysUrlPath, query: {'training': plan.id.toString()}), ); for (final dayEntry in daysData['results']) { final day = Day.fromJson(dayEntry); @@ -203,8 +199,7 @@ class WorkoutPlansProvider with ChangeNotifier { // Sets final List sets = []; final setData = await baseProvider.fetch( - baseProvider - .makeUrl(_setsUrlPath, query: {'exerciseday': day.id.toString()}), + baseProvider.makeUrl(_setsUrlPath, query: {'exerciseday': day.id.toString()}), ); for (final setEntry in setData['results']) { final workoutSet = Set.fromJson(setEntry); @@ -213,22 +208,20 @@ class WorkoutPlansProvider with ChangeNotifier { // Settings final List settings = []; - final settingData = - allSettingsData['results'].where((s) => s['set'] == workoutSet.id); + final settingData = allSettingsData['results'].where((s) => s['set'] == workoutSet.id); for (final settingEntry in settingData) { final workoutSetting = Setting.fromJson(settingEntry); - workoutSetting.exerciseBase = await _exercises - .fetchAndSetExerciseBase(workoutSetting.exerciseBaseId); + workoutSetting.exerciseBase = + await _exercises.fetchAndSetExerciseBase(workoutSetting.exerciseBaseId); workoutSetting.weightUnit = _weightUnits.firstWhere( (e) => e.id == workoutSetting.weightUnitId, ); workoutSetting.repetitionUnit = _repetitionUnit.firstWhere( (e) => e.id == workoutSetting.repetitionUnitId, ); - if (!workoutSet.exerciseBasesIds - .contains(workoutSetting.exerciseBaseId)) { + if (!workoutSet.exerciseBasesIds.contains(workoutSetting.exerciseBaseId)) { workoutSet.addExerciseBase(workoutSetting.exerciseBaseObj); } @@ -252,12 +245,9 @@ class WorkoutPlansProvider with ChangeNotifier { for (final logEntry in logData) { try { final log = Log.fromJson(logEntry); - 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); + 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); } catch (e) { dev.log('fire! fire!'); @@ -271,8 +261,8 @@ class WorkoutPlansProvider with ChangeNotifier { } Future addWorkout(WorkoutPlan workout) async { - final data = await baseProvider.post( - workout.toJson(), baseProvider.makeUrl(_workoutPlansUrlPath)); + final data = + await baseProvider.post(workout.toJson(), baseProvider.makeUrl(_workoutPlansUrlPath)); final plan = WorkoutPlan.fromJson(data); _workoutPlans.insert(0, plan); notifyListeners(); @@ -280,14 +270,13 @@ class WorkoutPlansProvider with ChangeNotifier { } Future editWorkout(WorkoutPlan workout) async { - await baseProvider.patch(workout.toJson(), - baseProvider.makeUrl(_workoutPlansUrlPath, id: workout.id)); + await baseProvider.patch( + workout.toJson(), baseProvider.makeUrl(_workoutPlansUrlPath, id: workout.id)); notifyListeners(); } Future deleteWorkout(int id) async { - final existingWorkoutIndex = - _workoutPlans.indexWhere((element) => element.id == id); + final existingWorkoutIndex = _workoutPlans.indexWhere((element) => element.id == id); final existingWorkout = _workoutPlans[existingWorkoutIndex]; _workoutPlans.removeAt(existingWorkoutIndex); notifyListeners(); @@ -301,8 +290,7 @@ class WorkoutPlansProvider with ChangeNotifier { } } - Future> fetchLogData( - WorkoutPlan workout, ExerciseBase base) async { + Future> fetchLogData(WorkoutPlan workout, ExerciseBase base) async { final data = await baseProvider.fetch( baseProvider.makeUrl( _workoutPlansUrlPath, @@ -316,8 +304,8 @@ class WorkoutPlansProvider with ChangeNotifier { /// Fetch and set weight units for workout (kg, lb, plate, etc.) Future fetchAndSetRepetitionUnits() async { - final response = await baseProvider - .fetchPaginated(baseProvider.makeUrl(_repetitionUnitUrlPath)); + final response = + await baseProvider.fetchPaginated(baseProvider.makeUrl(_repetitionUnitUrlPath)); for (final unit in response) { _repetitionUnit.add(RepetitionUnit.fromJson(unit)); } @@ -325,8 +313,7 @@ class WorkoutPlansProvider with ChangeNotifier { /// Fetch and set weight units for workout (kg, lb, plate, etc.) Future fetchAndSetWeightUnits() async { - final response = await baseProvider - .fetchPaginated(baseProvider.makeUrl(_weightUnitUrlPath)); + final response = await baseProvider.fetchPaginated(baseProvider.makeUrl(_weightUnitUrlPath)); for (final unit in response) { _weightUnits.add(WeightUnit.fromJson(unit)); } @@ -344,8 +331,7 @@ class WorkoutPlansProvider with ChangeNotifier { unitData['weightUnit'].forEach( (e) => _weightUnits.add(WeightUnit.fromJson(e)), ); - dev.log( - "Read workout units data from cache. Valid till ${unitData['expiresIn']}"); + dev.log("Read workout units data from cache. Valid till ${unitData['expiresIn']}"); return; } } @@ -357,9 +343,7 @@ class WorkoutPlansProvider with ChangeNotifier { // Save the result to the cache final exerciseData = { 'date': DateTime.now().toIso8601String(), - 'expiresIn': DateTime.now() - .add(const Duration(days: DAYS_TO_CACHE)) - .toIso8601String(), + 'expiresIn': DateTime.now().add(const Duration(days: DAYS_TO_CACHE)).toIso8601String(), 'repetitionUnits': _repetitionUnit.map((e) => e.toJson()).toList(), 'weightUnit': _weightUnits.map((e) => e.toJson()).toList(), }; @@ -375,8 +359,7 @@ class WorkoutPlansProvider with ChangeNotifier { * Saves a new day instance to the DB and adds it to the given workout */ day.workoutId = workout.id!; - final data = await baseProvider.post( - day.toJson(), baseProvider.makeUrl(_daysUrlPath)); + final data = await baseProvider.post(day.toJson(), baseProvider.makeUrl(_daysUrlPath)); day = Day.fromJson(data); day.sets = []; workout.days.insert(0, day); @@ -385,8 +368,7 @@ class WorkoutPlansProvider with ChangeNotifier { } Future editDay(Day day) async { - await baseProvider.patch( - day.toJson(), baseProvider.makeUrl(_daysUrlPath, id: day.id)); + await baseProvider.patch(day.toJson(), baseProvider.makeUrl(_daysUrlPath, id: day.id)); notifyListeners(); } @@ -505,8 +487,7 @@ class WorkoutPlansProvider with ChangeNotifier { } Future addSession(WorkoutSession session) async { - final data = await baseProvider.post( - session.toJson(), baseProvider.makeUrl(_sessionUrlPath)); + final data = await baseProvider.post(session.toJson(), baseProvider.makeUrl(_sessionUrlPath)); final newSession = WorkoutSession.fromJson(data); notifyListeners(); return newSession; @@ -516,16 +497,13 @@ class WorkoutPlansProvider with ChangeNotifier { * Logs */ Future addLog(Log log) async { - final data = await baseProvider.post( - log.toJson(), baseProvider.makeUrl(_logsUrlPath)); + final data = await baseProvider.post(log.toJson(), baseProvider.makeUrl(_logsUrlPath)); final newLog = Log.fromJson(data); log.id = newLog.id; 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); + log.repetitionUnit = _repetitionUnit.firstWhere((e) => e.id == log.weightUnitId); + log.exerciseBase = await _exercises.fetchAndSetExerciseBase(log.exerciseBaseId); final plan = findById(log.workoutPlan); plan.logs.add(log); diff --git a/lib/screens/add_exercise_screen.dart b/lib/screens/add_exercise_screen.dart index 17152487..4d65f0b6 100644 --- a/lib/screens/add_exercise_screen.dart +++ b/lib/screens/add_exercise_screen.dart @@ -25,9 +25,7 @@ class AddExerciseScreen extends StatelessWidget { Widget build(BuildContext context) { final profile = context.read().profile; - return profile!.isTrustworthy - ? const AddExerciseStepper() - : const EmailNotVerified(); + return profile!.isTrustworthy ? const AddExerciseStepper() : const EmailNotVerified(); } } @@ -72,18 +70,13 @@ class _AddExerciseStepperState extends State { setState(() { _isLoading = true; }); - final addExerciseProvider = - context.read(); - final exerciseProvider = - context.read(); + final addExerciseProvider = context.read(); + final exerciseProvider = context.read(); final baseId = await addExerciseProvider.addExercise(); - final base = await exerciseProvider - .fetchAndSetExerciseBase(baseId); - final name = base - .getExercise( - Localizations.localeOf(context).languageCode) - .name; + final base = await exerciseProvider.fetchAndSetExerciseBase(baseId); + final name = + base.getExercise(Localizations.localeOf(context).languageCode).name; setState(() { _isLoading = false; @@ -95,8 +88,7 @@ class _AddExerciseStepperState extends State { builder: (BuildContext context) { return AlertDialog( title: Text(AppLocalizations.of(context).success), - content: Text( - AppLocalizations.of(context).cacheWarning), + content: Text(AppLocalizations.of(context).cacheWarning), actions: [ TextButton( child: Text(name), diff --git a/lib/screens/auth_screen.dart b/lib/screens/auth_screen.dart index cad5d522..7424ae8f 100644 --- a/lib/screens/auth_screen.dart +++ b/lib/screens/auth_screen.dart @@ -68,8 +68,7 @@ class AuthScreen extends StatelessWidget { ), Container( margin: const EdgeInsets.only(bottom: 20.0), - padding: const EdgeInsets.symmetric( - vertical: 8.0, horizontal: 94.0), + padding: const EdgeInsets.symmetric(vertical: 8.0, horizontal: 94.0), child: const Text( 'WGER', style: TextStyle( @@ -139,10 +138,8 @@ class _AuthCardState extends State { // // If not, the user will not be able to register via the app try { - final metadata = - Provider.of(context, listen: false).metadata; - if (metadata.containsKey(MANIFEST_KEY_API) && - metadata[MANIFEST_KEY_API] == '') { + final metadata = Provider.of(context, listen: false).metadata; + if (metadata.containsKey(MANIFEST_KEY_API) && metadata[MANIFEST_KEY_API] == '') { _canRegister = false; } } on PlatformException { @@ -164,10 +161,8 @@ class _AuthCardState extends State { // Login existing user late Map res; if (_authMode == AuthMode.Login) { - res = await Provider.of(context, listen: false).login( - _authData['username']!, - _authData['password']!, - _authData['serverUrl']!); + res = await Provider.of(context, listen: false) + .login(_authData['username']!, _authData['password']!, _authData['serverUrl']!); // Register new user } else { @@ -235,8 +230,7 @@ class _AuthCardState extends State { elevation: 8.0, child: Container( width: deviceSize.width * 0.9, - padding: EdgeInsets.symmetric( - horizontal: 15.0, vertical: 0.025 * deviceSize.height), + padding: EdgeInsets.symmetric(horizontal: 15.0, vertical: 0.025 * deviceSize.height), child: Form( key: _formKey, child: SingleChildScrollView( @@ -263,9 +257,7 @@ class _AuthCardState extends State { return null; }, - inputFormatters: [ - FilteringTextInputFormatter.deny(RegExp(r'\s\b|\b\s')) - ], + inputFormatters: [FilteringTextInputFormatter.deny(RegExp(r'\s\b|\b\s'))], onSaved: (value) { _authData['username'] = value!; }, @@ -300,9 +292,7 @@ class _AuthCardState extends State { labelText: AppLocalizations.of(context).password, prefixIcon: const Icon(Icons.password), suffixIcon: IconButton( - icon: Icon(isObscure - ? Icons.visibility_off - : Icons.visibility), + icon: Icon(isObscure ? Icons.visibility_off : Icons.visibility), onPressed: () { isObscure = !isObscure; updateState(() {}); @@ -329,13 +319,10 @@ class _AuthCardState extends State { return TextFormField( key: const Key('inputPassword2'), decoration: InputDecoration( - labelText: - AppLocalizations.of(context).confirmPassword, + labelText: AppLocalizations.of(context).confirmPassword, prefixIcon: const Icon(Icons.password), suffixIcon: IconButton( - icon: Icon(confirmIsObscure - ? Icons.visibility_off - : Icons.visibility), + icon: Icon(confirmIsObscure ? Icons.visibility_off : Icons.visibility), onPressed: () { confirmIsObscure = !confirmIsObscure; updateState(() {}); @@ -348,8 +335,7 @@ class _AuthCardState extends State { validator: _authMode == AuthMode.Signup ? (value) { if (value != _passwordController.text) { - return AppLocalizations.of(context) - .passwordsDontMatch; + return AppLocalizations.of(context).passwordsDontMatch; } return null; } @@ -367,10 +353,8 @@ class _AuthCardState extends State { child: TextFormField( key: const Key('inputServer'), decoration: InputDecoration( - labelText: AppLocalizations.of(context) - .customServerUrl, - helperText: AppLocalizations.of(context) - .customServerHint, + labelText: AppLocalizations.of(context).customServerUrl, + helperText: AppLocalizations.of(context).customServerHint, helperMaxLines: 4), controller: _serverUrlController, validator: (value) { @@ -385,10 +369,8 @@ class _AuthCardState extends State { }, onSaved: (value) { // Remove any trailing slash - if (value!.lastIndexOf('/') == - (value.length - 1)) { - value = - value.substring(0, value.lastIndexOf('/')); + if (value!.lastIndexOf('/') == (value.length - 1)) { + value = value.substring(0, value.lastIndexOf('/')); } _authData['serverUrl'] = value; }, @@ -432,8 +414,7 @@ class _AuthCardState extends State { child: Center( child: _isLoading ? const CircularProgressIndicator( - valueColor: - AlwaysStoppedAnimation(Colors.white), + valueColor: AlwaysStoppedAnimation(Colors.white), ) : Text( _authMode == AuthMode.Login @@ -468,8 +449,7 @@ class _AuthCardState extends State { text.substring(0, text.lastIndexOf('?') + 1), ), Text( - text.substring( - text.lastIndexOf('?') + 1, text.length), + text.substring(text.lastIndexOf('?') + 1, text.length), style: const TextStyle( color: wgerPrimaryColor, fontWeight: FontWeight.w700, diff --git a/lib/screens/exercise_screen.dart b/lib/screens/exercise_screen.dart index 5eafe33c..347dacb1 100644 --- a/lib/screens/exercise_screen.dart +++ b/lib/screens/exercise_screen.dart @@ -27,14 +27,11 @@ class ExerciseDetailScreen extends StatelessWidget { @override Widget build(BuildContext context) { - final exerciseBase = - ModalRoute.of(context)!.settings.arguments as ExerciseBase; + final exerciseBase = ModalRoute.of(context)!.settings.arguments as ExerciseBase; return Scaffold( appBar: AppBar( - title: Text(exerciseBase - .getExercise(Localizations.localeOf(context).languageCode) - .name), + title: Text(exerciseBase.getExercise(Localizations.localeOf(context).languageCode).name), ), body: Padding( padding: const EdgeInsets.symmetric(horizontal: 10), diff --git a/lib/screens/exercises_screen.dart b/lib/screens/exercises_screen.dart index 038ba00a..5601c555 100644 --- a/lib/screens/exercises_screen.dart +++ b/lib/screens/exercises_screen.dart @@ -21,8 +21,7 @@ class _ExercisesScreenState extends State { @override Widget build(BuildContext context) { //final size = MediaQuery.of(context).size; - final exercisesList = - Provider.of(context).filteredExerciseBases; + final exercisesList = Provider.of(context).filteredExerciseBases; return Scaffold( appBar: EmptyAppBar(AppLocalizations.of(context).exercises), diff --git a/lib/screens/form_screen.dart b/lib/screens/form_screen.dart index b66dde9b..74b31798 100644 --- a/lib/screens/form_screen.dart +++ b/lib/screens/form_screen.dart @@ -61,8 +61,7 @@ class FormScreen extends StatelessWidget { appBar: AppBar(title: Text(args.title)), body: args.hasListView ? Scrollable( - viewportBuilder: - (BuildContext context, ViewportOffset position) => Padding( + viewportBuilder: (BuildContext context, ViewportOffset position) => Padding( padding: args.padding, child: args.widget, ), diff --git a/lib/screens/home_tabs_screen.dart b/lib/screens/home_tabs_screen.dart index c3dceb77..87afd2e2 100644 --- a/lib/screens/home_tabs_screen.dart +++ b/lib/screens/home_tabs_screen.dart @@ -45,8 +45,7 @@ class HomeTabsScreen extends StatefulWidget { _HomeTabsScreenState createState() => _HomeTabsScreenState(); } -class _HomeTabsScreenState extends State - with SingleTickerProviderStateMixin { +class _HomeTabsScreenState extends State with SingleTickerProviderStateMixin { late Future _initialData; int _selectedIndex = 0; diff --git a/lib/screens/measurement_entries_screen.dart b/lib/screens/measurement_entries_screen.dart index 59e3c4e6..c0670828 100644 --- a/lib/screens/measurement_entries_screen.dart +++ b/lib/screens/measurement_entries_screen.dart @@ -35,8 +35,7 @@ class MeasurementEntriesScreen extends StatelessWidget { @override Widget build(BuildContext context) { final categoryId = ModalRoute.of(context)!.settings.arguments as int; - final category = - Provider.of(context).findCategoryById(categoryId); + final category = Provider.of(context).findCategoryById(categoryId); return Scaffold( appBar: AppBar( @@ -63,26 +62,21 @@ class MeasurementEntriesScreen extends StatelessWidget { builder: (BuildContext contextDialog) { return AlertDialog( content: Text( - AppLocalizations.of(context) - .confirmDelete(category.name), + AppLocalizations.of(context).confirmDelete(category.name), ), actions: [ TextButton( - child: Text(MaterialLocalizations.of(context) - .cancelButtonLabel), - onPressed: () => - Navigator.of(contextDialog).pop(), + child: Text(MaterialLocalizations.of(context).cancelButtonLabel), + onPressed: () => Navigator.of(contextDialog).pop(), ), TextButton( child: Text( AppLocalizations.of(context).delete, - style: TextStyle( - color: Theme.of(context).errorColor), + style: TextStyle(color: Theme.of(context).errorColor), ), onPressed: () { // Confirmed, delete the workout - Provider.of(context, - listen: false) + Provider.of(context, listen: false) .deleteCategory(category.id!); // Close the popup @@ -92,8 +86,7 @@ class MeasurementEntriesScreen extends StatelessWidget { ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text( - AppLocalizations.of(context) - .successfullyDeleted, + AppLocalizations.of(context).successfullyDeleted, textAlign: TextAlign.center, ), ), diff --git a/lib/screens/nutritional_diary_screen.dart b/lib/screens/nutritional_diary_screen.dart index 8bc76ac6..feac4d2b 100644 --- a/lib/screens/nutritional_diary_screen.dart +++ b/lib/screens/nutritional_diary_screen.dart @@ -39,13 +39,11 @@ class NutritionalDiaryScreen extends StatelessWidget { @override Widget build(BuildContext context) { - final args = - ModalRoute.of(context)!.settings.arguments as NutritionalDiaryArguments; + final args = ModalRoute.of(context)!.settings.arguments as NutritionalDiaryArguments; return Scaffold( appBar: AppBar( - title: Text(DateFormat.yMd(Localizations.localeOf(context).languageCode) - .format(args.date)), + title: Text(DateFormat.yMd(Localizations.localeOf(context).languageCode).format(args.date)), ), body: Consumer( builder: (context, nutritionProvider, child) => SingleChildScrollView( diff --git a/lib/screens/nutritional_plan_screen.dart b/lib/screens/nutritional_plan_screen.dart index bc46df94..f89abb1c 100644 --- a/lib/screens/nutritional_plan_screen.dart +++ b/lib/screens/nutritional_plan_screen.dart @@ -35,14 +35,12 @@ class NutritionalPlanScreen extends StatelessWidget { static const routeName = '/nutritional-plan-detail'; Future _loadFullPlan(BuildContext context, int planId) { - return Provider.of(context, listen: false) - .fetchAndSetPlanFull(planId); + return Provider.of(context, listen: false).fetchAndSetPlanFull(planId); } @override Widget build(BuildContext context) { - final _nutritionalPlan = - ModalRoute.of(context)!.settings.arguments as NutritionalPlan; + final _nutritionalPlan = ModalRoute.of(context)!.settings.arguments as NutritionalPlan; return Scaffold( //appBar: getAppBar(nutritionalPlan), @@ -105,8 +103,7 @@ class NutritionalPlanScreen extends StatelessWidget { flexibleSpace: FlexibleSpaceBar( title: Text(_nutritionalPlan.getLabel(context)), background: const Image( - image: AssetImage( - 'assets/images/backgrounds/nutritional_plans.jpg'), + image: AssetImage('assets/images/backgrounds/nutritional_plans.jpg'), fit: BoxFit.cover, ), ), diff --git a/lib/screens/nutritional_plans_screen.dart b/lib/screens/nutritional_plans_screen.dart index 9da484b8..ecc67077 100644 --- a/lib/screens/nutritional_plans_screen.dart +++ b/lib/screens/nutritional_plans_screen.dart @@ -46,8 +46,7 @@ class NutritionScreen extends StatelessWidget { }, ), body: Consumer( - builder: (context, nutritionProvider, child) => - NutritionalPlansList(nutritionProvider), + builder: (context, nutritionProvider, child) => NutritionalPlansList(nutritionProvider), ), ); } diff --git a/lib/screens/workout_plan_screen.dart b/lib/screens/workout_plan_screen.dart index d4e5d30d..c3c3d38a 100644 --- a/lib/screens/workout_plan_screen.dart +++ b/lib/screens/workout_plan_screen.dart @@ -69,8 +69,7 @@ class _WorkoutPlanScreenState extends State { @override Widget build(BuildContext context) { - final workoutPlan = - ModalRoute.of(context)!.settings.arguments as WorkoutPlan; + final workoutPlan = ModalRoute.of(context)!.settings.arguments as WorkoutPlan; return Scaffold( body: CustomScrollView( @@ -81,8 +80,7 @@ class _WorkoutPlanScreenState extends State { flexibleSpace: FlexibleSpaceBar( title: Text(workoutPlan.name), background: const Image( - image: - AssetImage('assets/images/backgrounds/workout_plans.jpg'), + image: AssetImage('assets/images/backgrounds/workout_plans.jpg'), fit: BoxFit.cover, ), ), @@ -128,8 +126,7 @@ class _WorkoutPlanScreenState extends State { ), FutureBuilder( future: _loadFullWorkout(context, workoutPlan.id!), - builder: (context, AsyncSnapshot snapshot) => - SliverList( + builder: (context, AsyncSnapshot snapshot) => SliverList( delegate: SliverChildListDelegate( [ if (snapshot.connectionState == ConnectionState.waiting) diff --git a/lib/screens/workout_plans_screen.dart b/lib/screens/workout_plans_screen.dart index 4838fa67..4d3dbfdf 100644 --- a/lib/screens/workout_plans_screen.dart +++ b/lib/screens/workout_plans_screen.dart @@ -47,8 +47,7 @@ class WorkoutPlansScreen extends StatelessWidget { }, ), body: Consumer( - builder: (context, workoutProvider, child) => - WorkoutPlansList(workoutProvider), + builder: (context, workoutProvider, child) => WorkoutPlansList(workoutProvider), ), ); } diff --git a/lib/theme/theme.dart b/lib/theme/theme.dart index 119680d7..1ba04fac 100644 --- a/lib/theme/theme.dart +++ b/lib/theme/theme.dart @@ -63,10 +63,8 @@ final ThemeData wgerTheme = ThemeData( * Text theme */ textTheme: TextTheme( - headline1: - const TextStyle(fontFamily: 'OpenSansLight', color: Colors.black), - headline2: - const TextStyle(fontFamily: 'OpenSansLight', color: Colors.black), + headline1: const TextStyle(fontFamily: 'OpenSansLight', color: Colors.black), + headline2: const TextStyle(fontFamily: 'OpenSansLight', color: Colors.black), headline3: TextStyle( fontSize: materialSizes['h3']! * 0.8, fontFamily: 'OpenSansBold', diff --git a/lib/widgets/add_exercise/add_exercise_dropdown_button.dart b/lib/widgets/add_exercise/add_exercise_dropdown_button.dart index f9d81a27..0f2894da 100644 --- a/lib/widgets/add_exercise/add_exercise_dropdown_button.dart +++ b/lib/widgets/add_exercise/add_exercise_dropdown_button.dart @@ -17,8 +17,7 @@ class AddExerciseDropdownButton extends StatefulWidget { final FormFieldSetter? onSaved; @override - _AddExerciseDropdownButtonState createState() => - _AddExerciseDropdownButtonState(); + _AddExerciseDropdownButtonState createState() => _AddExerciseDropdownButtonState(); } class _AddExerciseDropdownButtonState extends State { @@ -40,8 +39,7 @@ class _AddExerciseDropdownButtonState extends State { }, value: _selectedItem, decoration: InputDecoration( - contentPadding: - const EdgeInsets.symmetric(horizontal: 10, vertical: 10), + contentPadding: const EdgeInsets.symmetric(horizontal: 10, vertical: 10), border: const OutlineInputBorder( borderRadius: BorderRadius.all(Radius.circular(10)), ), diff --git a/lib/widgets/add_exercise/add_exercise_multiselect_button.dart b/lib/widgets/add_exercise/add_exercise_multiselect_button.dart index 8788c7ef..d190ef38 100644 --- a/lib/widgets/add_exercise/add_exercise_multiselect_button.dart +++ b/lib/widgets/add_exercise/add_exercise_multiselect_button.dart @@ -20,12 +20,10 @@ class AddExerciseMultiselectButton extends StatefulWidget { : super(key: key); @override - _AddExerciseMultiselectButtonState createState() => - _AddExerciseMultiselectButtonState(); + _AddExerciseMultiselectButtonState createState() => _AddExerciseMultiselectButtonState(); } -class _AddExerciseMultiselectButtonState - extends State { +class _AddExerciseMultiselectButtonState extends State { List _selectedItems = []; @override @@ -35,9 +33,8 @@ class _AddExerciseMultiselectButtonState child: MultiSelectDialogField( initialValue: widget.initialItems, onSaved: widget.onSaved, - items: widget.items - .map((item) => MultiSelectItem(item, widget.displayName(item))) - .toList(), + items: + widget.items.map((item) => MultiSelectItem(item, widget.displayName(item))).toList(), onConfirm: (value) { setState(() { _selectedItems = value.cast(); diff --git a/lib/widgets/add_exercise/add_exercise_text_area.dart b/lib/widgets/add_exercise/add_exercise_text_area.dart index 539fd5f6..cec1d50c 100644 --- a/lib/widgets/add_exercise/add_exercise_text_area.dart +++ b/lib/widgets/add_exercise/add_exercise_text_area.dart @@ -28,15 +28,13 @@ class AddExerciseTextArea extends StatelessWidget { return Padding( padding: const EdgeInsets.all(8.0), child: TextFormField( - keyboardType: - isMultiline ? TextInputType.multiline : TextInputType.text, + keyboardType: isMultiline ? TextInputType.multiline : TextInputType.text, maxLines: isMultiline ? null : DEFAULT_LINES, minLines: isMultiline ? MULTILINE_MIN_LINES : DEFAULT_LINES, validator: validator, onSaved: onSaved, decoration: InputDecoration( - contentPadding: - const EdgeInsets.symmetric(horizontal: 10, vertical: 10), + contentPadding: const EdgeInsets.symmetric(horizontal: 10, vertical: 10), border: const OutlineInputBorder( borderRadius: BorderRadius.all(Radius.circular(10)), ), diff --git a/lib/widgets/add_exercise/mixins/image_picker_mixin.dart b/lib/widgets/add_exercise/mixins/image_picker_mixin.dart index a28e744e..d98a235e 100644 --- a/lib/widgets/add_exercise/mixins/image_picker_mixin.dart +++ b/lib/widgets/add_exercise/mixins/image_picker_mixin.dart @@ -17,8 +17,7 @@ mixin ExerciseImagePickerMixin { bool _validateFileType(File file) { final extension = file.path.split('.').last; - return validFileExtensions - .any((element) => extension == element.toLowerCase()); + return validFileExtensions.any((element) => extension == element.toLowerCase()); } void pickImages(BuildContext context, {bool pickFromCamera = false}) async { @@ -26,8 +25,7 @@ mixin ExerciseImagePickerMixin { List? images; if (pickFromCamera) { - final pictureTaken = - await imagePicker.pickImage(source: ImageSource.camera); + final pictureTaken = await imagePicker.pickImage(source: ImageSource.camera); images = pictureTaken == null ? null : [pictureTaken]; } else { images = await imagePicker.pickMultiImage(); @@ -52,8 +50,7 @@ mixin ExerciseImagePickerMixin { if (!isFileValid) { if (context.mounted) { - showDialog( - context: context, builder: (context) => Text(errorMessage)); + showDialog(context: context, builder: (context) => Text(errorMessage)); } return; } diff --git a/lib/widgets/add_exercise/preview_images.dart b/lib/widgets/add_exercise/preview_images.dart index 854cdc3b..e9f291af 100644 --- a/lib/widgets/add_exercise/preview_images.dart +++ b/lib/widgets/add_exercise/preview_images.dart @@ -6,8 +6,7 @@ import 'package:provider/provider.dart'; import '../../providers/add_exercise.dart'; import 'mixins/image_picker_mixin.dart'; -class PreviewExerciseImages extends StatelessWidget - with ExerciseImagePickerMixin { +class PreviewExerciseImages extends StatelessWidget with ExerciseImagePickerMixin { PreviewExerciseImages({ Key? key, required this.selectedImages, @@ -36,14 +35,12 @@ class PreviewExerciseImages extends StatelessWidget child: Container( decoration: BoxDecoration( color: Colors.grey.withOpacity(0.5), - borderRadius: - const BorderRadius.all(Radius.circular(20)), + borderRadius: const BorderRadius.all(Radius.circular(20)), ), child: IconButton( iconSize: 20, - onPressed: () => context - .read() - .removeExercise(file.path), + onPressed: () => + context.read().removeExercise(file.path), color: Colors.white, icon: const Icon(Icons.delete), ), diff --git a/lib/widgets/add_exercise/steps/step1basics.dart b/lib/widgets/add_exercise/steps/step1basics.dart index 399e08ed..0d875947 100644 --- a/lib/widgets/add_exercise/steps/step1basics.dart +++ b/lib/widgets/add_exercise/steps/step1basics.dart @@ -35,16 +35,15 @@ class Step1Basics extends StatelessWidget { helperText: AppLocalizations.of(context).baseNameEnglish, isRequired: true, validator: (name) => validateName(name, context), - onSaved: (String? name) => - addExerciseProvider.exerciseNameEn = name!, + onSaved: (String? name) => addExerciseProvider.exerciseNameEn = name!, ), AddExerciseTextArea( onChange: (value) => {}, title: AppLocalizations.of(context).alternativeNames, isMultiline: true, helperText: AppLocalizations.of(context).oneNamePerLine, - onSaved: (String? alternateName) => addExerciseProvider - .alternateNamesEn = alternateName!.split('\n'), + onSaved: (String? alternateName) => + addExerciseProvider.alternateNamesEn = alternateName!.split('\n'), ), ExerciseCategoryInputWidget( key: const Key('category-dropdown'), @@ -58,8 +57,7 @@ class Step1Basics extends StatelessWidget { return AppLocalizations.of(context).selectEntry; } }, - displayName: (ExerciseCategory c) => - getTranslation(c.name, context), + displayName: (ExerciseCategory c) => getTranslation(c.name, context), ), AddExerciseMultiselectButton( key: const Key('equipment-multiselect'), @@ -86,10 +84,7 @@ class Step1Basics extends StatelessWidget { addExerciseProvider.primaryMuscles = muscles.cast(); }, displayName: (Muscle e) => - e.name + - (e.nameEn.isNotEmpty - ? '\n(${getTranslation(e.nameEn, context)})' - : ''), + e.name + (e.nameEn.isNotEmpty ? '\n(${getTranslation(e.nameEn, context)})' : ''), ), AddExerciseMultiselectButton( key: const Key('secondary-muscles-multiselect'), @@ -103,10 +98,7 @@ class Step1Basics extends StatelessWidget { addExerciseProvider.secondaryMuscles = muscles.cast(); }, displayName: (Muscle e) => - e.name + - (e.nameEn.isNotEmpty - ? '\n(${getTranslation(e.nameEn, context)})' - : ''), + e.name + (e.nameEn.isNotEmpty ? '\n(${getTranslation(e.nameEn, context)})' : ''), ), Consumer( builder: (context, value, child) => MuscleRowWidget( diff --git a/lib/widgets/add_exercise/steps/step2variations.dart b/lib/widgets/add_exercise/steps/step2variations.dart index a25768d5..ebe9254e 100644 --- a/lib/widgets/add_exercise/steps/step2variations.dart +++ b/lib/widgets/add_exercise/steps/step2variations.dart @@ -38,15 +38,12 @@ class Step2Variations extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, //mainAxisSize: MainAxisSize.max, children: [ - ...exerciseProvider - .exerciseBasesByVariation[key]! + ...exerciseProvider.exerciseBasesByVariation[key]! .map( (base) => Text( base .getExercise( - Localizations.localeOf( - context) - .languageCode) + Localizations.localeOf(context).languageCode) .name, overflow: TextOverflow.ellipsis, ), @@ -59,8 +56,7 @@ class Step2Variations extends StatelessWidget { Consumer( builder: (ctx, provider, __) => Switch( value: provider.variationId == key, - onChanged: (state) => - provider.variationId = key), + onChanged: (state) => provider.variationId = key), ), ], ), @@ -80,9 +76,7 @@ class Step2Variations extends StatelessWidget { children: [ Text( base - .getExercise( - Localizations.localeOf(context) - .languageCode) + .getExercise(Localizations.localeOf(context).languageCode) .name, overflow: TextOverflow.ellipsis, ), @@ -92,10 +86,8 @@ class Step2Variations extends StatelessWidget { ), Consumer( builder: (ctx, provider, __) => Switch( - value: - provider.newVariationForExercise == base.id, - onChanged: (state) => - provider.newVariationForExercise = base.id, + value: provider.newVariationForExercise == base.id, + onChanged: (state) => provider.newVariationForExercise = base.id, ), ), ], diff --git a/lib/widgets/add_exercise/steps/step3description.dart b/lib/widgets/add_exercise/steps/step3description.dart index c0632cfe..fad46ba8 100644 --- a/lib/widgets/add_exercise/steps/step3description.dart +++ b/lib/widgets/add_exercise/steps/step3description.dart @@ -23,8 +23,7 @@ class Step3Description extends StatelessWidget { isRequired: true, isMultiline: true, validator: (name) => validateDescription(name, context), - onSaved: (String? description) => - addExerciseProvider.descriptionEn = description!, + onSaved: (String? description) => addExerciseProvider.descriptionEn = description!, ), ], ), diff --git a/lib/widgets/add_exercise/steps/step4translations.dart b/lib/widgets/add_exercise/steps/step4translations.dart index 9763e22a..284ed62d 100644 --- a/lib/widgets/add_exercise/steps/step4translations.dart +++ b/lib/widgets/add_exercise/steps/step4translations.dart @@ -61,8 +61,7 @@ class _Step4TranslationState extends State { title: '${AppLocalizations.of(context).name}*', isRequired: true, validator: (name) => validateName(name, context), - onSaved: (String? name) => - addExerciseProvider.exerciseNameTrans = name!, + onSaved: (String? name) => addExerciseProvider.exerciseNameTrans = name!, ), AddExerciseTextArea( onChange: (value) => {}, @@ -74,8 +73,7 @@ class _Step4TranslationState extends State { if (alternateNames?.isNotEmpty == true) { final names = alternateNames!.split('\n'); for (final name in names) { - if (name.length < MIN_CHARS_NAME || - name.length > MAX_CHARS_NAME) { + if (name.length < MIN_CHARS_NAME || name.length > MAX_CHARS_NAME) { return AppLocalizations.of(context).enterCharacters( MIN_CHARS_NAME, MAX_CHARS_NAME, @@ -85,8 +83,8 @@ class _Step4TranslationState extends State { } return null; }, - onSaved: (String? alternateName) => addExerciseProvider - .alternateNamesTrans = alternateName!.split('\n'), + onSaved: (String? alternateName) => + addExerciseProvider.alternateNamesTrans = alternateName!.split('\n'), ), AddExerciseTextArea( onChange: (value) => {}, diff --git a/lib/widgets/add_exercise/steps/step5images.dart b/lib/widgets/add_exercise/steps/step5images.dart index 27400bb9..34eb1602 100644 --- a/lib/widgets/add_exercise/steps/step5images.dart +++ b/lib/widgets/add_exercise/steps/step5images.dart @@ -13,8 +13,7 @@ class Step5Images extends StatefulWidget { State createState() => _Step5ImagesState(); } -class _Step5ImagesState extends State - with ExerciseImagePickerMixin { +class _Step5ImagesState extends State with ExerciseImagePickerMixin { @override Widget build(BuildContext context) { return Form( @@ -34,8 +33,7 @@ class _Step5ImagesState extends State mainAxisAlignment: MainAxisAlignment.center, children: [ IconButton( - onPressed: () => - pickImages(context, pickFromCamera: true), + onPressed: () => pickImages(context, pickFromCamera: true), icon: const Icon(Icons.camera_alt), ), IconButton( diff --git a/lib/widgets/core/about.dart b/lib/widgets/core/about.dart index ed789964..d4b15e4a 100644 --- a/lib/widgets/core/about.dart +++ b/lib/widgets/core/about.dart @@ -85,10 +85,7 @@ class _AboutPageState extends State { SizedBox(height: 0.025 * deviceSize.height), Text( AppLocalizations.of(context).aboutDescription, - style: Theme.of(context) - .textTheme - .bodyMedium! - .copyWith(fontSize: 16), + style: Theme.of(context).textTheme.bodyMedium!.copyWith(fontSize: 16), ), SizedBox(height: 0.04 * deviceSize.height), ListTile( @@ -105,8 +102,7 @@ class _AboutPageState extends State { ], ), contentPadding: EdgeInsets.zero, - onTap: () async => - launchURL('https://github.com/wger-project', context), + onTap: () async => launchURL('https://github.com/wger-project', context), ), const SizedBox(height: 10), ListTile( @@ -123,9 +119,8 @@ class _AboutPageState extends State { ], ), contentPadding: EdgeInsets.zero, - onTap: () async => launchURL( - 'https://github.com/wger-project/flutter/issues/new/choose', - context), + onTap: () async => + launchURL('https://github.com/wger-project/flutter/issues/new/choose', context), ), const SizedBox(height: 10), ListTile( @@ -142,8 +137,7 @@ class _AboutPageState extends State { ], ), contentPadding: EdgeInsets.zero, - onTap: () async => - launchURL('https://discord.gg/rPWFv6W', context), + onTap: () async => launchURL('https://discord.gg/rPWFv6W', context), ), const SizedBox(height: 10), ListTile( @@ -160,8 +154,7 @@ class _AboutPageState extends State { ], ), contentPadding: EdgeInsets.zero, - onTap: () async => - launchURL('https://hosted.weblate.org/engage/wger/', context), + onTap: () async => launchURL('https://hosted.weblate.org/engage/wger/', context), ), ListTile( leading: const Icon(Icons.article), @@ -171,8 +164,7 @@ class _AboutPageState extends State { showLicensePage( context: context, applicationName: 'wger', - applicationVersion: - 'App: ${authProvider.applicationVersion!.version}\n' + applicationVersion: 'App: ${authProvider.applicationVersion!.version}\n' 'Server: ${authProvider.serverVersion}', applicationLegalese: '\u{a9} 2020 - 2021 contributors', applicationIcon: Padding( diff --git a/lib/widgets/core/app_bar.dart b/lib/widgets/core/app_bar.dart index fc933e99..06f1c746 100644 --- a/lib/widgets/core/app_bar.dart +++ b/lib/widgets/core/app_bar.dart @@ -49,8 +49,7 @@ class MainAppBar extends StatelessWidget implements PreferredSizeWidget { title: Text(AppLocalizations.of(context).optionsLabel), actions: [ TextButton( - child: Text( - MaterialLocalizations.of(context).closeButtonLabel), + child: Text(MaterialLocalizations.of(context).closeButtonLabel), onPressed: () { Navigator.of(context).pop(); }, @@ -70,8 +69,7 @@ class MainAppBar extends StatelessWidget implements PreferredSizeWidget { FormScreen.routeName, arguments: FormScreenArguments( AppLocalizations.of(context).userProfile, - UserProfileForm( - context.read().profile!), + UserProfileForm(context.read().profile!), ), ); }, @@ -79,11 +77,9 @@ class MainAppBar extends StatelessWidget implements PreferredSizeWidget { ListTile( leading: const Icon(Icons.info), onTap: () { - Navigator.of(context) - .pushNamed(AboutPage.routeName); + Navigator.of(context).pushNamed(AboutPage.routeName); }, - title: - Text(AppLocalizations.of(context).aboutPageTitle), + title: Text(AppLocalizations.of(context).aboutPageTitle), ), const Divider(), ListTile( diff --git a/lib/widgets/core/core.dart b/lib/widgets/core/core.dart index 681b938c..d61e5939 100644 --- a/lib/widgets/core/core.dart +++ b/lib/widgets/core/core.dart @@ -65,8 +65,7 @@ class CircleIconAvatar extends StatelessWidget { final Color color; - const CircleIconAvatar(this._icon, - {this.radius = 20, this.color = Colors.black12}); + const CircleIconAvatar(this._icon, {this.radius = 20, this.color = Colors.black12}); @override Widget build(BuildContext context) { diff --git a/lib/widgets/dashboard/calendar.dart b/lib/widgets/dashboard/calendar.dart index 17b069ea..f2ade2f5 100644 --- a/lib/widgets/dashboard/calendar.dart +++ b/lib/widgets/dashboard/calendar.dart @@ -58,16 +58,15 @@ class DashboardCalendarWidget extends StatefulWidget { const DashboardCalendarWidget(); @override - _DashboardCalendarWidgetState createState() => - _DashboardCalendarWidgetState(); + _DashboardCalendarWidgetState createState() => _DashboardCalendarWidgetState(); } class _DashboardCalendarWidgetState extends State with TickerProviderStateMixin { late Map> _events; late final ValueNotifier> _selectedEvents; - RangeSelectionMode _rangeSelectionMode = RangeSelectionMode - .toggledOff; // Can be toggled on/off by longpressing a date + RangeSelectionMode _rangeSelectionMode = + RangeSelectionMode.toggledOff; // Can be toggled on/off by longpressing a date DateTime _focusedDay = DateTime.now(); DateTime? _selectedDay; DateTime? _rangeStart; @@ -109,14 +108,13 @@ class _DashboardCalendarWidgetState extends State _events[date] = []; } - _events[date]!.add(Event(EventType.measurement, - '${category.name}: ${entry.value} ${category.unit}')); + _events[date]! + .add(Event(EventType.measurement, '${category.name}: ${entry.value} ${category.unit}')); } } // Process workout sessions - final WorkoutPlansProvider plans = - Provider.of(context, listen: false); + final WorkoutPlansProvider plans = Provider.of(context, listen: false); await plans.fetchSessionData().then((entries) { for (final entry in entries['results']) { final session = WorkoutSession.fromJson(entry); @@ -125,8 +123,7 @@ class _DashboardCalendarWidgetState extends State _events[date] = []; } var time = ''; - time = - '(${timeToString(session.timeStart)} - ${timeToString(session.timeEnd)})'; + time = '(${timeToString(session.timeStart)} - ${timeToString(session.timeEnd)})'; // Add events to lists _events[date]!.add(Event( @@ -258,12 +255,10 @@ class _DashboardCalendarWidgetState extends State title: Text((() { switch (event.type) { case EventType.caloriesDiary: - return AppLocalizations.of(context) - .nutritionalDiary; + return AppLocalizations.of(context).nutritionalDiary; case EventType.session: - return AppLocalizations.of(context) - .workoutSession; + return AppLocalizations.of(context).workoutSession; case EventType.weight: return AppLocalizations.of(context).weight; diff --git a/lib/widgets/dashboard/widgets.dart b/lib/widgets/dashboard/widgets.dart index 7b0e41fd..c1e02b02 100644 --- a/lib/widgets/dashboard/widgets.dart +++ b/lib/widgets/dashboard/widgets.dart @@ -46,8 +46,7 @@ import 'package:wger/widgets/workouts/forms.dart'; class DashboardNutritionWidget extends StatefulWidget { @override - _DashboardNutritionWidgetState createState() => - _DashboardNutritionWidgetState(); + _DashboardNutritionWidgetState createState() => _DashboardNutritionWidgetState(); } class _DashboardNutritionWidgetState extends State { @@ -58,8 +57,7 @@ class _DashboardNutritionWidgetState extends State { @override void initState() { super.initState(); - _plan = - Provider.of(context, listen: false).currentPlan; + _plan = Provider.of(context, listen: false).currentPlan; _hasContent = _plan != null; } @@ -102,8 +100,7 @@ class _DashboardNutritionWidgetState extends State { icon: const Icon(Icons.history_edu), color: wgerPrimaryButtonColor, onPressed: () { - Provider.of(context, listen: false) - .logMealToDiary(meal); + Provider.of(context, listen: false).logMealToDiary(meal); ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text( @@ -134,8 +131,7 @@ class _DashboardNutritionWidgetState extends State { ), ), const SizedBox(width: 5), - Text( - '${item.amount.toStringAsFixed(0)} ${AppLocalizations.of(context).g}'), + Text('${item.amount.toStringAsFixed(0)} ${AppLocalizations.of(context).g}'), ], ), ], @@ -155,9 +151,7 @@ class _DashboardNutritionWidgetState extends State { return const Text(''); } - return _showDetail - ? const Icon(Icons.expand_less) - : const Icon(Icons.expand_more); + return _showDetail ? const Icon(Icons.expand_less) : const Icon(Icons.expand_more); } @override @@ -167,9 +161,7 @@ class _DashboardNutritionWidgetState extends State { children: [ ListTile( title: Text( - _hasContent - ? _plan!.description - : AppLocalizations.of(context).nutritionalPlan, + _hasContent ? _plan!.description : AppLocalizations.of(context).nutritionalPlan, style: Theme.of(context).textTheme.headline4, ), subtitle: Text( @@ -196,8 +188,7 @@ class _DashboardNutritionWidgetState extends State { Container( padding: const EdgeInsets.all(15), height: 180, - child: - FlNutritionalPlanPieChartWidget(_plan!.nutritionalValues), + child: FlNutritionalPlanPieChartWidget(_plan!.nutritionalValues), ) ], ) @@ -228,9 +219,8 @@ class _DashboardNutritionWidgetState extends State { TextButton( child: Text(AppLocalizations.of(context).goToDetailPage), onPressed: () { - Navigator.of(context).pushNamed( - NutritionalPlanScreen.routeName, - arguments: _plan); + Navigator.of(context) + .pushNamed(NutritionalPlanScreen.routeName, arguments: _plan); }, ), ], @@ -283,11 +273,9 @@ class _DashboardWeightWidgetState extends State { mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ TextButton( - child: Text( - AppLocalizations.of(context).goToDetailPage), + child: Text(AppLocalizations.of(context).goToDetailPage), onPressed: () { - Navigator.of(context) - .pushNamed(WeightScreen.routeName); + Navigator.of(context).pushNamed(WeightScreen.routeName); }), IconButton( icon: const Icon(Icons.add), @@ -323,12 +311,10 @@ class _DashboardWeightWidgetState extends State { class DashboardMeasurementWidget extends StatefulWidget { @override - _DashboardMeasurementWidgetState createState() => - _DashboardMeasurementWidgetState(); + _DashboardMeasurementWidgetState createState() => _DashboardMeasurementWidgetState(); } -class _DashboardMeasurementWidgetState - extends State { +class _DashboardMeasurementWidgetState extends State { int _current = 0; final CarouselController _controller = CarouselController(); @@ -401,23 +387,17 @@ class _DashboardMeasurementWidgetState children: items.asMap().entries.map( (entry) { return GestureDetector( - onTap: () => - _controller.animateToPage(entry.key), + onTap: () => _controller.animateToPage(entry.key), child: Container( width: 12.0, height: 12.0, - margin: EdgeInsets.symmetric( - vertical: 8.0, horizontal: 4.0), + margin: EdgeInsets.symmetric(vertical: 8.0, horizontal: 4.0), decoration: BoxDecoration( shape: BoxShape.circle, - color: (Theme.of(context) - .brightness == - Brightness.dark + color: (Theme.of(context).brightness == Brightness.dark ? Colors.white : wgerPrimaryColor) - .withOpacity(_current == entry.key - ? 0.9 - : 0.4)), + .withOpacity(_current == entry.key ? 0.9 : 0.4)), ), ); }, @@ -462,9 +442,7 @@ class _DashboardWorkoutWidgetState extends State { return const Text(''); } - return _showDetail - ? const Icon(Icons.expand_less) - : const Icon(Icons.expand_more); + return _showDetail ? const Icon(Icons.expand_less) : const Icon(Icons.expand_more); } List getContent() { @@ -496,8 +474,7 @@ class _DashboardWorkoutWidgetState extends State { icon: const Icon(Icons.play_arrow), color: wgerPrimaryButtonColor, onPressed: () { - Navigator.of(context) - .pushNamed(GymModeScreen.routeName, arguments: day); + Navigator.of(context).pushNamed(GymModeScreen.routeName, arguments: day); }, ), ], @@ -518,13 +495,10 @@ class _DashboardWorkoutWidgetState extends State { crossAxisAlignment: CrossAxisAlignment.start, children: [ Text(s.exerciseBaseObj - .getExercise(Localizations.localeOf(context) - .languageCode) + .getExercise(Localizations.localeOf(context).languageCode) .name), const SizedBox(width: 10), - MutedText(set - .getSmartRepr(s.exerciseBaseObj) - .join('\n')), + MutedText(set.getSmartRepr(s.exerciseBaseObj).join('\n')), ], ), const SizedBox(height: 10), @@ -549,9 +523,7 @@ class _DashboardWorkoutWidgetState extends State { children: [ ListTile( title: Text( - _hasContent - ? _workoutPlan!.name - : AppLocalizations.of(context).labelWorkoutPlan, + _hasContent ? _workoutPlan!.name : AppLocalizations.of(context).labelWorkoutPlan, style: Theme.of(context).textTheme.headline4, ), subtitle: Text( @@ -593,8 +565,8 @@ class _DashboardWorkoutWidgetState extends State { TextButton( child: Text(AppLocalizations.of(context).goToDetailPage), onPressed: () { - Navigator.of(context).pushNamed(WorkoutPlanScreen.routeName, - arguments: _workoutPlan); + Navigator.of(context) + .pushNamed(WorkoutPlanScreen.routeName, arguments: _workoutPlan); }, ), ], diff --git a/lib/widgets/exercises/exercises.dart b/lib/widgets/exercises/exercises.dart index f0acc355..4e36d98a 100644 --- a/lib/widgets/exercises/exercises.dart +++ b/lib/widgets/exercises/exercises.dart @@ -42,8 +42,7 @@ class ExerciseDetail extends StatelessWidget { @override Widget build(BuildContext context) { - _exercise = - _exerciseBase.getExercise(Localizations.localeOf(context).languageCode); + _exercise = _exerciseBase.getExercise(Localizations.localeOf(context).languageCode); return SingleChildScrollView( child: Column( @@ -157,9 +156,7 @@ class ExerciseDetail extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, children: [ const MuscleColorHelper(main: true), - ..._exerciseBase.muscles - .map((e) => Text(e.nameTranslated(context))) - .toList(), + ..._exerciseBase.muscles.map((e) => Text(e.nameTranslated(context))).toList(), ], ), ); @@ -222,9 +219,7 @@ class ExerciseDetail extends StatelessWidget { // TODO: add carousel for the other videos final List out = []; if (_exerciseBase.videos.isNotEmpty && !isDesktop) { - _exerciseBase.videos - .map((v) => ExerciseVideoWidget(video: v)) - .forEach((element) { + _exerciseBase.videos.map((v) => ExerciseVideoWidget(video: v)).forEach((element) { out.add(element); }); @@ -237,8 +232,8 @@ class ExerciseDetail extends StatelessWidget { final List out = []; if (_exercise.alias.isNotEmpty) { out.add(MutedText( - AppLocalizations.of(context).alsoKnownAs( - _exercise.alias.map((e) => e.alias).toList().join(', ')), + AppLocalizations.of(context) + .alsoKnownAs(_exercise.alias.map((e) => e.alias).toList().join(', ')), )); out.add(const SizedBox(height: PADDING)); } @@ -280,8 +275,7 @@ class MuscleRowWidget extends StatelessWidget { final List muscles; final List musclesSecondary; - const MuscleRowWidget( - {required this.muscles, required this.musclesSecondary}); + const MuscleRowWidget({required this.muscles, required this.musclesSecondary}); @override Widget build(BuildContext context) { @@ -325,8 +319,7 @@ class MuscleWidget extends StatelessWidget { this.isFront = true, }) { this.muscles = muscles.where((m) => m.isFront == isFront).toList(); - this.musclesSecondary = - musclesSecondary.where((m) => m.isFront == isFront).toList(); + this.musclesSecondary = musclesSecondary.where((m) => m.isFront == isFront).toList(); } @override @@ -337,12 +330,10 @@ class MuscleWidget extends StatelessWidget { children: [ SvgPicture.asset('assets/images/muscles/$background.svg'), ...muscles - .map((m) => SvgPicture.asset( - 'assets/images/muscles/main/muscle-${m.id}.svg')) + .map((m) => SvgPicture.asset('assets/images/muscles/main/muscle-${m.id}.svg')) .toList(), ...musclesSecondary - .map((m) => SvgPicture.asset( - 'assets/images/muscles/secondary/muscle-${m.id}.svg')) + .map((m) => SvgPicture.asset('assets/images/muscles/secondary/muscle-${m.id}.svg')) .toList(), ], ); diff --git a/lib/widgets/exercises/filter_modal.dart b/lib/widgets/exercises/filter_modal.dart index cb1eecfb..27ce3997 100644 --- a/lib/widgets/exercises/filter_modal.dart +++ b/lib/widgets/exercises/filter_modal.dart @@ -27,8 +27,7 @@ class ExerciseFilterModalBody extends StatefulWidget { }) : super(key: key); @override - _ExerciseFilterModalBodyState createState() => - _ExerciseFilterModalBodyState(); + _ExerciseFilterModalBodyState createState() => _ExerciseFilterModalBodyState(); } class _ExerciseFilterModalBodyState extends State { @@ -71,13 +70,11 @@ class _ExerciseFilterModalBodyState extends State { children: filterCategory.items.entries.map( (currentEntry) { return SwitchListTile( - title: - Text(getTranslation(currentEntry.key.name, context)), + title: Text(getTranslation(currentEntry.key.name, context)), value: currentEntry.value, onChanged: (_) { setState(() { - filterCategory.items - .update(currentEntry.key, (value) => !value); + filterCategory.items.update(currentEntry.key, (value) => !value); Provider.of(context, listen: false) .setFilters(filters); }); diff --git a/lib/widgets/exercises/filter_row.dart b/lib/widgets/exercises/filter_row.dart index f18b4b88..d7510dd1 100644 --- a/lib/widgets/exercises/filter_row.dart +++ b/lib/widgets/exercises/filter_row.dart @@ -41,11 +41,10 @@ class _FilterRowState extends State { _exerciseNameController = TextEditingController() ..addListener( () { - final provider = - Provider.of(context, listen: false); + final provider = Provider.of(context, listen: false); if (provider.filters!.searchTerm != _exerciseNameController.text) { - provider.setFilters(provider.filters! - .copyWith(searchTerm: _exerciseNameController.text)); + provider + .setFilters(provider.filters!.copyWith(searchTerm: _exerciseNameController.text)); } }, ); @@ -91,8 +90,7 @@ class _FilterRowState extends State { return [ PopupMenuItem( value: ExerciseMoreOption.ADD_EXERCISE, - child: - Text(AppLocalizations.of(context).contributeExercise), + child: Text(AppLocalizations.of(context).contributeExercise), ) ]; }, @@ -102,8 +100,7 @@ class _FilterRowState extends State { onSelected: (ExerciseMoreOption selectedOption) { switch (selectedOption) { case ExerciseMoreOption.ADD_EXERCISE: - Navigator.of(context) - .pushNamed(AddExerciseScreen.routeName); + Navigator.of(context).pushNamed(AddExerciseScreen.routeName); break; } }, diff --git a/lib/widgets/exercises/forms.dart b/lib/widgets/exercises/forms.dart index 5a3a3af2..4983d88f 100644 --- a/lib/widgets/exercises/forms.dart +++ b/lib/widgets/exercises/forms.dart @@ -46,12 +46,10 @@ class ExerciseCategoryInputWidget extends StatefulWidget { } @override - _ExerciseCategoryInputWidgetState createState() => - _ExerciseCategoryInputWidgetState(); + _ExerciseCategoryInputWidgetState createState() => _ExerciseCategoryInputWidgetState(); } -class _ExerciseCategoryInputWidgetState - extends State { +class _ExerciseCategoryInputWidgetState extends State { @override Widget build(BuildContext context) { T? selectedEntry; diff --git a/lib/widgets/exercises/list_tile.dart b/lib/widgets/exercises/list_tile.dart index ee8f3237..d3f53ccd 100644 --- a/lib/widgets/exercises/list_tile.dart +++ b/lib/widgets/exercises/list_tile.dart @@ -23,8 +23,7 @@ import 'package:wger/screens/exercise_screen.dart'; import 'package:wger/widgets/exercises/images.dart'; class ExerciseListTile extends StatelessWidget { - const ExerciseListTile({Key? key, required this.exerciseBase}) - : super(key: key); + const ExerciseListTile({Key? key, required this.exerciseBase}) : super(key: key); final ExerciseBase exerciseBase; @@ -52,9 +51,7 @@ class ExerciseListTile extends StatelessWidget { ), ), title: Text( - exerciseBase - .getExercise(Localizations.localeOf(context).languageCode) - .name, + exerciseBase.getExercise(Localizations.localeOf(context).languageCode).name, //style: theme.textTheme.headline6, overflow: TextOverflow.ellipsis, maxLines: 2, @@ -63,8 +60,7 @@ class ExerciseListTile extends StatelessWidget { '${getTranslation(exerciseBase.category!.name, context)} / ${exerciseBase.equipment.map((e) => getTranslation(e.name, context)).toList().join(', ')}', ), onTap: () { - Navigator.pushNamed(context, ExerciseDetailScreen.routeName, - arguments: exerciseBase); + Navigator.pushNamed(context, ExerciseDetailScreen.routeName, arguments: exerciseBase); }, ); } diff --git a/lib/widgets/exercises/videos.dart b/lib/widgets/exercises/videos.dart index 332468ac..4675fc2d 100644 --- a/lib/widgets/exercises/videos.dart +++ b/lib/widgets/exercises/videos.dart @@ -68,8 +68,7 @@ class _ExerciseVideoWidgetState extends State { /// /// Taken from this example: https://pub.dev/packages/video_player/example class _ControlsOverlay extends StatelessWidget { - const _ControlsOverlay({Key? key, required this.controller}) - : super(key: key); + const _ControlsOverlay({Key? key, required this.controller}) : super(key: key); static const _playbackRates = [ 0.25, diff --git a/lib/widgets/gallery/forms.dart b/lib/widgets/gallery/forms.dart index d1b00f1e..c9cdf864 100644 --- a/lib/widgets/gallery/forms.dart +++ b/lib/widgets/gallery/forms.dart @@ -113,8 +113,7 @@ class _ImageFormState extends State { _showPicker(ImageSource.camera); }, leading: const Icon(Icons.photo_camera), - title: - Text(AppLocalizations.of(context).takePicture), + title: Text(AppLocalizations.of(context).takePicture), ), ListTile( onTap: () { @@ -122,8 +121,7 @@ class _ImageFormState extends State { _showPicker(ImageSource.gallery); }, leading: const Icon(Icons.photo_library), - title: Text(AppLocalizations.of(context) - .chooseFromLibrary)) + title: Text(AppLocalizations.of(context).chooseFromLibrary)) ], ), ); @@ -168,8 +166,7 @@ class _ImageFormState extends State { ), TextFormField( key: const Key('field-description'), - decoration: InputDecoration( - labelText: AppLocalizations.of(context).description), + decoration: InputDecoration(labelText: AppLocalizations.of(context).description), minLines: 3, maxLines: 10, controller: descriptionController, diff --git a/lib/widgets/gallery/overview.dart b/lib/widgets/gallery/overview.dart index c28c2681..a0011c2e 100644 --- a/lib/widgets/gallery/overview.dart +++ b/lib/widgets/gallery/overview.dart @@ -59,8 +59,7 @@ class Gallery extends StatelessWidget { child: Column( children: [ Text( - DateFormat.yMd(Localizations.localeOf(context) - .languageCode) + DateFormat.yMd(Localizations.localeOf(context).languageCode) .format(currentImage.date), style: Theme.of(context).textTheme.headline5, ), @@ -68,8 +67,7 @@ class Gallery extends StatelessWidget { child: Image.network(currentImage.url!), ), Padding( - padding: - const EdgeInsets.symmetric(vertical: 8), + padding: const EdgeInsets.symmetric(vertical: 8), child: Text(currentImage.description), ), Row( @@ -78,8 +76,7 @@ class Gallery extends StatelessWidget { IconButton( icon: const Icon(Icons.delete), onPressed: () { - Provider.of(context, - listen: false) + Provider.of(context, listen: false) .deleteImage(currentImage); Navigator.of(context).pop(); }), @@ -108,8 +105,7 @@ class Gallery extends StatelessWidget { }, child: FadeInImage( key: Key('image-${currentImage.id}'), - placeholder: - const AssetImage('assets/images/placeholder.png'), + placeholder: const AssetImage('assets/images/placeholder.png'), image: NetworkImage(currentImage.url!), fit: BoxFit.cover, ), diff --git a/lib/widgets/measurements/categories_card.dart b/lib/widgets/measurements/categories_card.dart index dacfa07c..bbe89cfc 100644 --- a/lib/widgets/measurements/categories_card.dart +++ b/lib/widgets/measurements/categories_card.dart @@ -30,9 +30,7 @@ class CategoriesCard extends StatelessWidget { padding: const EdgeInsets.all(10), height: 220, child: MeasurementChartWidgetFl( - currentCategory.entries - .map((e) => MeasurementChartEntry(e.value, e.date)) - .toList(), + currentCategory.entries.map((e) => MeasurementChartEntry(e.value, e.date)).toList(), unit: currentCategory.unit, ), ), diff --git a/lib/widgets/measurements/charts.dart b/lib/widgets/measurements/charts.dart index f9d793ac..fdbae75f 100644 --- a/lib/widgets/measurements/charts.dart +++ b/lib/widgets/measurements/charts.dart @@ -29,8 +29,7 @@ class MeasurementChartWidgetFl extends StatefulWidget { const MeasurementChartWidgetFl(this._entries, {this.unit = 'kg'}); @override - State createState() => - _MeasurementChartWidgetFlState(); + State createState() => _MeasurementChartWidgetFlState(); } class _MeasurementChartWidgetFlState extends State { @@ -53,8 +52,7 @@ class _MeasurementChartWidgetFlState extends State { } LineTouchData tooltipData() { - return LineTouchData( - touchTooltipData: LineTouchTooltipData(getTooltipItems: (touchedSpots) { + return LineTouchData(touchTooltipData: LineTouchTooltipData(getTooltipItems: (touchedSpots) { return touchedSpots.map((touchedSpot) { return LineTooltipItem( '${touchedSpot.y} kg', @@ -102,16 +100,13 @@ class _MeasurementChartWidgetFlState extends State { if (value == meta.min || value == meta.max) { return const Text(''); } - final DateTime date = - DateTime.fromMillisecondsSinceEpoch(value.toInt()); + final DateTime date = DateTime.fromMillisecondsSinceEpoch(value.toInt()); return Text( - DateFormat.yMd(Localizations.localeOf(context).languageCode) - .format(date), + DateFormat.yMd(Localizations.localeOf(context).languageCode).format(date), ); }, interval: widget._entries.isNotEmpty - ? chartGetInterval( - widget._entries.last.date, widget._entries.first.date) + ? chartGetInterval(widget._entries.last.date, widget._entries.first.date) : 1000, ), ), @@ -134,8 +129,8 @@ class _MeasurementChartWidgetFlState extends State { lineBarsData: [ LineChartBarData( spots: [ - ...widget._entries.map((e) => FlSpot( - e.date.millisecondsSinceEpoch.toDouble(), e.value.toDouble())) + ...widget._entries + .map((e) => FlSpot(e.date.millisecondsSinceEpoch.toDouble(), e.value.toDouble())) ], isCurved: false, color: wgerSecondaryColor, diff --git a/lib/widgets/measurements/entries.dart b/lib/widgets/measurements/entries.dart index 21afede4..55b2023f 100644 --- a/lib/widgets/measurements/entries.dart +++ b/lib/widgets/measurements/entries.dart @@ -41,9 +41,7 @@ class EntriesList extends StatelessWidget { padding: const EdgeInsets.all(10), height: 220, child: MeasurementChartWidgetFl( - _category.entries - .map((e) => MeasurementChartEntry(e.value, e.date)) - .toList(), + _category.entries.map((e) => MeasurementChartEntry(e.value, e.date)).toList(), unit: _category.unit, ), ), @@ -53,8 +51,7 @@ class EntriesList extends StatelessWidget { itemCount: _category.entries.length, itemBuilder: (context, index) { final currentEntry = _category.entries[index]; - final provider = - Provider.of(context, listen: false); + final provider = Provider.of(context, listen: false); return Dismissible( key: Key(currentEntry.id.toString()), @@ -117,8 +114,7 @@ class EntriesList extends StatelessWidget { ), child: Card( child: ListTile( - title: Text( - '${currentEntry.value.toString()} ${_category.unit}'), + title: Text('${currentEntry.value.toString()} ${_category.unit}'), subtitle: Text( DateFormat.yMd(Localizations.localeOf(context).languageCode) .format(currentEntry.date), diff --git a/lib/widgets/measurements/forms.dart b/lib/widgets/measurements/forms.dart index f502c087..4e6e09e9 100644 --- a/lib/widgets/measurements/forms.dart +++ b/lib/widgets/measurements/forms.dart @@ -31,11 +31,7 @@ class MeasurementCategoryForm extends StatelessWidget { final nameController = TextEditingController(); final unitController = TextEditingController(); - final Map categoryData = { - 'id': null, - 'name': '', - 'unit': '' - }; + final Map categoryData = {'id': null, 'name': '', 'unit': ''}; MeasurementCategoryForm([MeasurementCategory? category]) { //this._category = category ?? MeasurementCategory(); @@ -59,8 +55,7 @@ class MeasurementCategoryForm extends StatelessWidget { TextFormField( decoration: InputDecoration( labelText: AppLocalizations.of(context).name, - helperText: - AppLocalizations.of(context).measurementCategoriesHelpText, + helperText: AppLocalizations.of(context).measurementCategoriesHelpText, ), controller: nameController, onSaved: (newValue) { @@ -78,8 +73,7 @@ class MeasurementCategoryForm extends StatelessWidget { TextFormField( decoration: InputDecoration( labelText: AppLocalizations.of(context).unit, - helperText: - AppLocalizations.of(context).measurementEntriesHelpText, + helperText: AppLocalizations.of(context).measurementEntriesHelpText, ), controller: unitController, onSaved: (newValue) { @@ -105,19 +99,15 @@ class MeasurementCategoryForm extends StatelessWidget { // Save the entry on the server try { categoryData['id'] == null - ? await Provider.of(context, - listen: false) - .addCategory( + ? await Provider.of(context, listen: false).addCategory( MeasurementCategory( id: categoryData['id'], name: categoryData['name'], unit: categoryData['unit'], ), ) - : await Provider.of(context, - listen: false) - .editCategory(categoryData['id'], categoryData['name'], - categoryData['unit']); + : await Provider.of(context, listen: false).editCategory( + categoryData['id'], categoryData['name'], categoryData['unit']); } on WgerHttpException catch (error) { if (context.mounted) { showHttpExceptionErrorDialog(error, context); @@ -171,8 +161,7 @@ class MeasurementEntryForm extends StatelessWidget { @override Widget build(BuildContext context) { - final measurementProvider = - Provider.of(context, listen: false); + final measurementProvider = Provider.of(context, listen: false); final measurementCategory = measurementProvider.categories.firstWhere( (category) => category.id == _categoryId, ); @@ -182,8 +171,7 @@ class MeasurementEntryForm extends StatelessWidget { child: Column( children: [ TextFormField( - decoration: - InputDecoration(labelText: AppLocalizations.of(context).date), + decoration: InputDecoration(labelText: AppLocalizations.of(context).date), readOnly: true, // Hide text cursor controller: _dateController, onTap: () async { @@ -224,8 +212,7 @@ class MeasurementEntryForm extends StatelessWidget { decoration: InputDecoration( labelText: AppLocalizations.of(context).value, suffixIcon: Text(measurementCategory.unit), - suffixIconConstraints: - const BoxConstraints(minWidth: 0, minHeight: 0), + suffixIconConstraints: const BoxConstraints(minWidth: 0, minHeight: 0), ), controller: _valueController, keyboardType: TextInputType.number, @@ -246,8 +233,7 @@ class MeasurementEntryForm extends StatelessWidget { ), // Value TextFormField( - decoration: - InputDecoration(labelText: AppLocalizations.of(context).notes), + decoration: InputDecoration(labelText: AppLocalizations.of(context).notes), controller: _notesController, onSaved: (newValue) { _entryData['notes'] = newValue; @@ -255,10 +241,8 @@ class MeasurementEntryForm extends StatelessWidget { validator: (value) { const minLength = 0; const maxLength = 100; - if (value!.isNotEmpty && - (value.length < minLength || value.length > maxLength)) { - return AppLocalizations.of(context) - .enterCharacters(minLength, maxLength); + if (value!.isNotEmpty && (value.length < minLength || value.length > maxLength)) { + return AppLocalizations.of(context).enterCharacters(minLength, maxLength); } return null; }, @@ -277,8 +261,7 @@ class MeasurementEntryForm extends StatelessWidget { // Save the entry on the server try { _entryData['id'] == null - ? await Provider.of(context, - listen: false) + ? await Provider.of(context, listen: false) .addEntry(MeasurementEntry( id: _entryData['id'], category: _entryData['category'], @@ -286,9 +269,7 @@ class MeasurementEntryForm extends StatelessWidget { value: _entryData['value'], notes: _entryData['notes'], )) - : await Provider.of(context, - listen: false) - .editEntry( + : await Provider.of(context, listen: false).editEntry( _entryData['id'], _entryData['category'], _entryData['value'], diff --git a/lib/widgets/nutrition/charts.dart b/lib/widgets/nutrition/charts.dart index bc0c7182..24e605ad 100644 --- a/lib/widgets/nutrition/charts.dart +++ b/lib/widgets/nutrition/charts.dart @@ -41,8 +41,7 @@ class FlNutritionalPlanPieChartWidget extends StatefulWidget { State createState() => FlNutritionalPlanPieChartState(); } -class FlNutritionalPlanPieChartState - extends State { +class FlNutritionalPlanPieChartState extends State { int touchedIndex = -1; @override @@ -66,8 +65,7 @@ class FlNutritionalPlanPieChartState touchedIndex = -1; return; } - touchedIndex = - pieTouchResponse.touchedSection!.touchedSectionIndex; + touchedIndex = pieTouchResponse.touchedSection!.touchedSectionIndex; }); }, ), @@ -144,8 +142,7 @@ class FlNutritionalPlanPieChartState return PieChartSectionData( color: colors.current, value: widget.nutritionalValues.carbohydrates, - title: - '${widget.nutritionalValues.carbohydrates.toStringAsFixed(0)}g', + title: '${widget.nutritionalValues.carbohydrates.toStringAsFixed(0)}g', titlePositionPercentageOffset: 0.5, radius: radius, ); @@ -170,8 +167,7 @@ class NutritionalDiaryChartWidgetFl extends StatefulWidget { State createState() => NutritionalDiaryChartWidgetFlState(); } -class NutritionalDiaryChartWidgetFlState - extends State { +class NutritionalDiaryChartWidgetFlState extends State { Widget bottomTitles(double value, TitleMeta meta) { const style = TextStyle(fontSize: 10); String text; @@ -413,8 +409,7 @@ class FlNutritionalDiaryChartWidget extends StatefulWidget { State createState() => FlNutritionalDiaryChartWidgetState(); } -class FlNutritionalDiaryChartWidgetState - extends State { +class FlNutritionalDiaryChartWidgetState extends State { final Duration animDuration = const Duration(milliseconds: 250); int touchedIndex = -1; @@ -434,8 +429,7 @@ class FlNutritionalDiaryChartWidgetState final List dateList = []; DateTime currentDate = startDate; - while (currentDate.isBefore(endDate) || - currentDate.isAtSameMomentAs(endDate)) { + while (currentDate.isBefore(endDate) || currentDate.isAtSameMomentAs(endDate)) { dateList.add(currentDate); currentDate = currentDate.add(const Duration(days: 1)); } @@ -476,8 +470,7 @@ class FlNutritionalDiaryChartWidgetState List showingGroups() { final logEntries = widget._nutritionalPlan.logEntriesValues; final List out = []; - final dateList = - getDatesBetween(logEntries.keys.first, logEntries.keys.last); + final dateList = getDatesBetween(logEntries.keys.first, logEntries.keys.last); for (final date in dateList.reversed) { out.add( diff --git a/lib/widgets/nutrition/forms.dart b/lib/widgets/nutrition/forms.dart index 170be621..b0b00225 100644 --- a/lib/widgets/nutrition/forms.dart +++ b/lib/widgets/nutrition/forms.dart @@ -54,8 +54,7 @@ class MealForm extends StatelessWidget { children: [ TextFormField( key: const Key('field-time'), - decoration: - InputDecoration(labelText: AppLocalizations.of(context).time), + decoration: InputDecoration(labelText: AppLocalizations.of(context).time), controller: _timeController, onTap: () async { // Stop keyboard from appearing @@ -77,8 +76,7 @@ class MealForm extends StatelessWidget { TextFormField( maxLength: 25, key: const Key('field-name'), - decoration: - InputDecoration(labelText: AppLocalizations.of(context).name), + decoration: InputDecoration(labelText: AppLocalizations.of(context).name), controller: _nameController, onSaved: (newValue) { _meal.name = newValue as String; @@ -96,12 +94,9 @@ class MealForm extends StatelessWidget { try { _meal.id == null - ? Provider.of(context, - listen: false) + ? Provider.of(context, listen: false) .addMeal(_meal, _planId) - : Provider.of(context, - listen: false) - .editMeal(_meal); + : Provider.of(context, listen: false).editMeal(_meal); } on WgerHttpException catch (error) { showHttpExceptionErrorDialog(error, context); } catch (error) { @@ -158,8 +153,7 @@ class MealItemForm extends StatelessWidget { ), TextFormField( key: const Key('field-weight'), - decoration: InputDecoration( - labelText: AppLocalizations.of(context).weight), + decoration: InputDecoration(labelText: AppLocalizations.of(context).weight), controller: _amountController, keyboardType: TextInputType.number, onFieldSubmitted: (_) {}, @@ -183,8 +177,7 @@ class MealItemForm extends StatelessWidget { return; } _form.currentState!.save(); - _mealItem.ingredientId = - int.parse(_ingredientIdController.text); + _mealItem.ingredientId = int.parse(_ingredientIdController.text); try { Provider.of(context, listen: false) @@ -210,19 +203,15 @@ class MealItemForm extends StatelessWidget { return Card( child: ListTile( onTap: () { - _ingredientController.text = - _listMealItems[index].ingredientObj.name; + _ingredientController.text = _listMealItems[index].ingredientObj.name; _ingredientIdController.text = _listMealItems[index].ingredientObj.id.toString(); - _amountController.text = - _listMealItems[index].amount.toStringAsFixed(0); - _mealItem.ingredientId = - _listMealItems[index].ingredientId; + _amountController.text = _listMealItems[index].amount.toStringAsFixed(0); + _mealItem.ingredientId = _listMealItems[index].ingredientId; _mealItem.amount = _listMealItems[index].amount; }, title: Text(_listMealItems[index].ingredientObj.name), - subtitle: Text( - '${_listMealItems[index].amount.toStringAsFixed(0)}$unit'), + subtitle: Text('${_listMealItems[index].amount.toStringAsFixed(0)}$unit'), trailing: const Icon(Icons.copy), ), ); @@ -267,8 +256,7 @@ class IngredientLogForm extends StatelessWidget { _ingredientController, ), TextFormField( - decoration: InputDecoration( - labelText: AppLocalizations.of(context).weight), + decoration: InputDecoration(labelText: AppLocalizations.of(context).weight), controller: _amountController, keyboardType: TextInputType.number, onFieldSubmitted: (_) {}, @@ -317,13 +305,11 @@ class IngredientLogForm extends StatelessWidget { return; } _form.currentState!.save(); - _mealItem.ingredientId = - int.parse(_ingredientIdController.text); + _mealItem.ingredientId = int.parse(_ingredientIdController.text); try { - Provider.of(context, listen: false) - .logIngredientToDiary(_mealItem, _plan.id!, - DateTime.parse(_dateController.text)); + Provider.of(context, listen: false).logIngredientToDiary( + _mealItem, _plan.id!, DateTime.parse(_dateController.text)); } on WgerHttpException catch (error) { showHttpExceptionErrorDialog(error, context); } catch (error) { @@ -345,19 +331,15 @@ class IngredientLogForm extends StatelessWidget { return Card( child: ListTile( onTap: () { - _ingredientController.text = - diaryEntries[index].ingredientObj.name; + _ingredientController.text = diaryEntries[index].ingredientObj.name; _ingredientIdController.text = diaryEntries[index].ingredientObj.id.toString(); - _amountController.text = - diaryEntries[index].amount.toStringAsFixed(0); - _mealItem.ingredientId = - diaryEntries[index].ingredientId; + _amountController.text = diaryEntries[index].amount.toStringAsFixed(0); + _mealItem.ingredientId = diaryEntries[index].ingredientId; _mealItem.amount = diaryEntries[index].amount; }, title: Text(_plan.logs[index].ingredientObj.name), - subtitle: Text( - '${diaryEntries[index].amount.toStringAsFixed(0)}$unit'), + subtitle: Text('${diaryEntries[index].amount.toStringAsFixed(0)}$unit'), trailing: const Icon(Icons.copy), ), ); @@ -390,8 +372,7 @@ class PlanForm extends StatelessWidget { // Description TextFormField( key: const Key('field-description'), - decoration: InputDecoration( - labelText: AppLocalizations.of(context).description), + decoration: InputDecoration(labelText: AppLocalizations.of(context).description), controller: _descriptionController, onFieldSubmitted: (_) {}, onSaved: (newValue) { @@ -412,15 +393,12 @@ class PlanForm extends StatelessWidget { // Save to DB try { if (_plan.id != null) { - await Provider.of(context, - listen: false) - .editPlan(_plan); + await Provider.of(context, listen: false).editPlan(_plan); if (context.mounted) { Navigator.of(context).pop(); } } else { - _plan = await Provider.of(context, - listen: false) + _plan = await Provider.of(context, listen: false) .addPlan(_plan); if (context.mounted) { Navigator.of(context).pushReplacementNamed( diff --git a/lib/widgets/nutrition/helpers.dart b/lib/widgets/nutrition/helpers.dart index ed43f72d..9aede4fa 100644 --- a/lib/widgets/nutrition/helpers.dart +++ b/lib/widgets/nutrition/helpers.dart @@ -21,8 +21,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:wger/models/nutrition/nutritional_values.dart'; -List getMutedNutritionalValues( - NutritionalValues values, BuildContext context) { +List getMutedNutritionalValues(NutritionalValues values, BuildContext context) { final List out = [ Text( '${AppLocalizations.of(context).energy}: ' diff --git a/lib/widgets/nutrition/meal.dart b/lib/widgets/nutrition/meal.dart index e41c8eb9..9e7b4905 100644 --- a/lib/widgets/nutrition/meal.dart +++ b/lib/widgets/nutrition/meal.dart @@ -59,8 +59,7 @@ class _MealWidgetState extends State { child: Card( child: Column( children: [ - DismissibleMealHeader(_expanded, _toggleExpanded, - meal: widget._meal), + DismissibleMealHeader(_expanded, _toggleExpanded, meal: widget._meal), if (_expanded) Row( mainAxisSize: MainAxisSize.max, @@ -69,8 +68,7 @@ class _MealWidgetState extends State { IconButton( onPressed: () { // Delete the meal - Provider.of(context, - listen: false) + Provider.of(context, listen: false) .deleteMeal(widget._meal); // and inform the user @@ -95,8 +93,7 @@ class _MealWidgetState extends State { icon: const Icon(Icons.history_edu), color: Colors.white, onPressed: () { - Provider.of(context, - listen: false) + Provider.of(context, listen: false) .logMealToDiary(widget._meal); ScaffoldMessenger.of(context).showSnackBar( SnackBar( @@ -125,9 +122,7 @@ class _MealWidgetState extends State { ], ), const Divider(), - ...widget._meal.mealItems - .map((item) => MealItemWidget(item, _expanded)) - .toList(), + ...widget._meal.mealItems.map((item) => MealItemWidget(item, _expanded)).toList(), OutlinedButton( child: Text(AppLocalizations.of(context).addIngredient), onPressed: () { @@ -170,13 +165,10 @@ class MealItemWidget extends StatelessWidget { return ListTile( leading: _item.ingredientObj.image != null ? GestureDetector( - child: CircleAvatar( - backgroundImage: - NetworkImage(_item.ingredientObj.image!.image)), + child: CircleAvatar(backgroundImage: NetworkImage(_item.ingredientObj.image!.image)), onTap: () async { if (_item.ingredientObj.image!.objectUrl != '') { - return launchURL( - _item.ingredientObj.image!.objectUrl, context); + return launchURL(_item.ingredientObj.image!.objectUrl, context); } else { return; } @@ -189,9 +181,7 @@ class MealItemWidget extends StatelessWidget { ), subtitle: Column( crossAxisAlignment: CrossAxisAlignment.start, - children: [ - if (_expanded) ...getMutedNutritionalValues(values, context) - ], + children: [if (_expanded) ...getMutedNutritionalValues(values, context)], ), trailing: _expanded ? IconButton( @@ -199,8 +189,7 @@ class MealItemWidget extends StatelessWidget { iconSize: ICON_SIZE_SMALL, onPressed: () { // Delete the meal item - Provider.of(context, listen: false) - .deleteMealItem(_item); + Provider.of(context, listen: false).deleteMealItem(_item); // and inform the user ScaffoldMessenger.of(context).showSnackBar( @@ -255,8 +244,7 @@ class DismissibleMealHeader extends StatelessWidget { confirmDismiss: (direction) async { // Delete if (direction == DismissDirection.startToEnd) { - Provider.of(context, listen: false) - .logMealToDiary(_meal); + Provider.of(context, listen: false).logMealToDiary(_meal); ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text( @@ -289,9 +277,7 @@ class DismissibleMealHeader extends StatelessWidget { ), IconButton( visualDensity: VisualDensity.compact, - icon: _expanded - ? const Icon(Icons.unfold_less) - : const Icon(Icons.unfold_more), + icon: _expanded ? const Icon(Icons.unfold_less) : const Icon(Icons.unfold_more), onPressed: () { _toggle(); }, diff --git a/lib/widgets/nutrition/nutritional_diary_detail.dart b/lib/widgets/nutrition/nutritional_diary_detail.dart index 2f96cfbc..6368fbe7 100644 --- a/lib/widgets/nutrition/nutritional_diary_detail.dart +++ b/lib/widgets/nutrition/nutritional_diary_detail.dart @@ -77,12 +77,10 @@ class NutritionalDiaryDetailWidget extends StatelessWidget { child: Text(AppLocalizations.of(context).energy), ), Text( - valuesTotal.energy.toStringAsFixed(0) + - AppLocalizations.of(context).kcal, + valuesTotal.energy.toStringAsFixed(0) + AppLocalizations.of(context).kcal, ), Text( - valuesDate.energy.toStringAsFixed(0) + - AppLocalizations.of(context).kcal, + valuesDate.energy.toStringAsFixed(0) + AppLocalizations.of(context).kcal, ), Text((valuesDate.energy - valuesTotal.energy).toStringAsFixed(0)), ], @@ -93,10 +91,8 @@ class NutritionalDiaryDetailWidget extends StatelessWidget { padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).protein), ), - Text(valuesTotal.protein.toStringAsFixed(0) + - AppLocalizations.of(context).g), - Text(valuesDate.protein.toStringAsFixed(0) + - AppLocalizations.of(context).g), + Text(valuesTotal.protein.toStringAsFixed(0) + AppLocalizations.of(context).g), + Text(valuesDate.protein.toStringAsFixed(0) + AppLocalizations.of(context).g), Text((valuesDate.protein - valuesTotal.protein).toStringAsFixed(0)), ], ), @@ -106,28 +102,22 @@ class NutritionalDiaryDetailWidget extends StatelessWidget { padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).carbohydrates), ), - Text(valuesTotal.carbohydrates.toStringAsFixed(0) + - AppLocalizations.of(context).g), - Text(valuesDate.carbohydrates.toStringAsFixed(0) + - AppLocalizations.of(context).g), - Text((valuesDate.carbohydrates - valuesTotal.carbohydrates) - .toStringAsFixed(0)), + Text(valuesTotal.carbohydrates.toStringAsFixed(0) + AppLocalizations.of(context).g), + Text(valuesDate.carbohydrates.toStringAsFixed(0) + AppLocalizations.of(context).g), + Text((valuesDate.carbohydrates - valuesTotal.carbohydrates).toStringAsFixed(0)), ], ), TableRow( children: [ Padding( - padding: const EdgeInsets.symmetric( - vertical: tablePadding, horizontal: 12), + padding: const EdgeInsets.symmetric(vertical: tablePadding, horizontal: 12), child: Text(AppLocalizations.of(context).sugars), ), - Text(valuesTotal.carbohydratesSugar.toStringAsFixed(0) + - AppLocalizations.of(context).g), - Text(valuesDate.carbohydratesSugar.toStringAsFixed(0) + - AppLocalizations.of(context).g), Text( - (valuesDate.carbohydratesSugar - valuesTotal.carbohydratesSugar) - .toStringAsFixed(0)), + valuesTotal.carbohydratesSugar.toStringAsFixed(0) + AppLocalizations.of(context).g), + Text(valuesDate.carbohydratesSugar.toStringAsFixed(0) + AppLocalizations.of(context).g), + Text((valuesDate.carbohydratesSugar - valuesTotal.carbohydratesSugar) + .toStringAsFixed(0)), ], ), TableRow( @@ -136,26 +126,20 @@ class NutritionalDiaryDetailWidget extends StatelessWidget { padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).fat), ), - Text(valuesTotal.fat.toStringAsFixed(0) + - AppLocalizations.of(context).g), - Text(valuesDate.fat.toStringAsFixed(0) + - AppLocalizations.of(context).g), + Text(valuesTotal.fat.toStringAsFixed(0) + AppLocalizations.of(context).g), + Text(valuesDate.fat.toStringAsFixed(0) + AppLocalizations.of(context).g), Text((valuesDate.fat - valuesTotal.fat).toStringAsFixed(0)), ], ), TableRow( children: [ Padding( - padding: const EdgeInsets.symmetric( - vertical: tablePadding, horizontal: 12), + padding: const EdgeInsets.symmetric(vertical: tablePadding, horizontal: 12), child: Text(AppLocalizations.of(context).saturatedFat), ), - Text(valuesTotal.fatSaturated.toStringAsFixed(0) + - AppLocalizations.of(context).g), - Text(valuesDate.fatSaturated.toStringAsFixed(0) + - AppLocalizations.of(context).g), - Text((valuesDate.fatSaturated - valuesTotal.fatSaturated) - .toStringAsFixed(0)), + Text(valuesTotal.fatSaturated.toStringAsFixed(0) + AppLocalizations.of(context).g), + Text(valuesDate.fatSaturated.toStringAsFixed(0) + AppLocalizations.of(context).g), + Text((valuesDate.fatSaturated - valuesTotal.fatSaturated).toStringAsFixed(0)), ], ), TableRow( @@ -164,10 +148,8 @@ class NutritionalDiaryDetailWidget extends StatelessWidget { padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).fibres), ), - Text(valuesTotal.fibres.toStringAsFixed(0) + - AppLocalizations.of(context).g), - Text(valuesDate.fibres.toStringAsFixed(0) + - AppLocalizations.of(context).g), + Text(valuesTotal.fibres.toStringAsFixed(0) + AppLocalizations.of(context).g), + Text(valuesDate.fibres.toStringAsFixed(0) + AppLocalizations.of(context).g), Text((valuesDate.fibres - valuesTotal.fibres).toStringAsFixed(0)), ], ), @@ -177,10 +159,8 @@ class NutritionalDiaryDetailWidget extends StatelessWidget { padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).sodium), ), - Text(valuesTotal.sodium.toStringAsFixed(0) + - AppLocalizations.of(context).g), - Text(valuesDate.sodium.toStringAsFixed(0) + - AppLocalizations.of(context).g), + Text(valuesTotal.sodium.toStringAsFixed(0) + AppLocalizations.of(context).g), + Text(valuesDate.sodium.toStringAsFixed(0) + AppLocalizations.of(context).g), Text((valuesDate.sodium - valuesTotal.sodium).toStringAsFixed(0)), ], ), @@ -197,8 +177,7 @@ class NutritionalDiaryDetailWidget extends StatelessWidget { mainAxisAlignment: MainAxisAlignment.start, children: [ Text( - DateFormat.Hm(Localizations.localeOf(context).languageCode) - .format(log.datetime), + DateFormat.Hm(Localizations.localeOf(context).languageCode).format(log.datetime), style: const TextStyle(fontWeight: FontWeight.bold), ), const SizedBox(width: 8), diff --git a/lib/widgets/nutrition/nutritional_plan_detail.dart b/lib/widgets/nutrition/nutritional_plan_detail.dart index 6b024e42..993a2863 100644 --- a/lib/widgets/nutrition/nutritional_plan_detail.dart +++ b/lib/widgets/nutrition/nutritional_plan_detail.dart @@ -42,10 +42,8 @@ class NutritionalPlanDetailWidget extends StatelessWidget { @override Widget build(BuildContext context) { final nutritionalValues = _nutritionalPlan.nutritionalValues; - final valuesPercentage = - _nutritionalPlan.energyPercentage(nutritionalValues); - final lastWeightEntry = - Provider.of(context, listen: false).getLastEntry(); + final valuesPercentage = _nutritionalPlan.energyPercentage(nutritionalValues); + final lastWeightEntry = Provider.of(context, listen: false).getLastEntry(); final valuesGperKg = lastWeightEntry != null ? _nutritionalPlan.gPerBodyKg(lastWeightEntry.weight, nutritionalValues) : null; @@ -90,8 +88,7 @@ class NutritionalPlanDetailWidget extends StatelessWidget { TableRow( children: [ Padding( - padding: - const EdgeInsets.symmetric(vertical: tablePadding), + padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text( AppLocalizations.of(context).macronutrients, style: const TextStyle(fontWeight: FontWeight.bold), @@ -114,8 +111,7 @@ class NutritionalPlanDetailWidget extends StatelessWidget { TableRow( children: [ Padding( - padding: - const EdgeInsets.symmetric(vertical: tablePadding), + padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).energy), ), Text( @@ -129,42 +125,34 @@ class NutritionalPlanDetailWidget extends StatelessWidget { TableRow( children: [ Padding( - padding: - const EdgeInsets.symmetric(vertical: tablePadding), + padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).protein), ), Text(nutritionalValues.protein.toStringAsFixed(0) + AppLocalizations.of(context).g), Text(valuesPercentage.protein.toStringAsFixed(1)), - Text(valuesGperKg != null - ? valuesGperKg.protein.toStringAsFixed(1) - : ''), + Text(valuesGperKg != null ? valuesGperKg.protein.toStringAsFixed(1) : ''), ], ), TableRow( children: [ Padding( - padding: - const EdgeInsets.symmetric(vertical: tablePadding), + padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).carbohydrates), ), Text(nutritionalValues.carbohydrates.toStringAsFixed(0) + AppLocalizations.of(context).g), Text(valuesPercentage.carbohydrates.toStringAsFixed(1)), - Text(valuesGperKg != null - ? valuesGperKg.carbohydrates.toStringAsFixed(1) - : ''), + Text(valuesGperKg != null ? valuesGperKg.carbohydrates.toStringAsFixed(1) : ''), ], ), TableRow( children: [ Padding( - padding: const EdgeInsets.symmetric( - vertical: tablePadding, horizontal: 12), + padding: const EdgeInsets.symmetric(vertical: tablePadding, horizontal: 12), child: Text(AppLocalizations.of(context).sugars), ), - Text(nutritionalValues.carbohydratesSugar - .toStringAsFixed(0) + + Text(nutritionalValues.carbohydratesSugar.toStringAsFixed(0) + AppLocalizations.of(context).g), const Text(''), const Text(''), @@ -173,23 +161,18 @@ class NutritionalPlanDetailWidget extends StatelessWidget { TableRow( children: [ Padding( - padding: - const EdgeInsets.symmetric(vertical: tablePadding), + padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).fat), ), - Text(nutritionalValues.fat.toStringAsFixed(0) + - AppLocalizations.of(context).g), + Text(nutritionalValues.fat.toStringAsFixed(0) + AppLocalizations.of(context).g), Text(valuesPercentage.fat.toStringAsFixed(1)), - Text(valuesGperKg != null - ? valuesGperKg.fat.toStringAsFixed(1) - : ''), + Text(valuesGperKg != null ? valuesGperKg.fat.toStringAsFixed(1) : ''), ], ), TableRow( children: [ Padding( - padding: const EdgeInsets.symmetric( - vertical: tablePadding, horizontal: 12), + padding: const EdgeInsets.symmetric(vertical: tablePadding, horizontal: 12), child: Text(AppLocalizations.of(context).saturatedFat), ), Text(nutritionalValues.fatSaturated.toStringAsFixed(0) + @@ -201,8 +184,7 @@ class NutritionalPlanDetailWidget extends StatelessWidget { TableRow( children: [ Padding( - padding: - const EdgeInsets.symmetric(vertical: tablePadding), + padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).fibres), ), Text(nutritionalValues.fibres.toStringAsFixed(0) + @@ -214,8 +196,7 @@ class NutritionalPlanDetailWidget extends StatelessWidget { TableRow( children: [ Padding( - padding: - const EdgeInsets.symmetric(vertical: tablePadding), + padding: const EdgeInsets.symmetric(vertical: tablePadding), child: Text(AppLocalizations.of(context).sodium), ), Text(nutritionalValues.sodium.toStringAsFixed(0) + @@ -236,8 +217,7 @@ class NutritionalPlanDetailWidget extends StatelessWidget { Container( padding: const EdgeInsets.only(top: 15, left: 15, right: 15), height: 300, - child: NutritionalDiaryChartWidgetFl( - nutritionalPlan: _nutritionalPlan), // chart + child: NutritionalDiaryChartWidgetFl(nutritionalPlan: _nutritionalPlan), // chart ), Padding( padding: const EdgeInsets.only(bottom: 40, left: 25, right: 25), @@ -276,8 +256,7 @@ class NutritionalPlanDetailWidget extends StatelessWidget { Container( padding: const EdgeInsets.all(15), height: 220, - child: FlNutritionalDiaryChartWidget( - nutritionalPlan: _nutritionalPlan), // chart + child: FlNutritionalDiaryChartWidget(nutritionalPlan: _nutritionalPlan), // chart ), SizedBox( height: 200, @@ -302,8 +281,8 @@ class NutritionalPlanDetailWidget extends StatelessWidget { ), ), ..._nutritionalPlan.logEntriesValues.entries - .map((entry) => NutritionDiaryEntry( - entry.key, entry.value, _nutritionalPlan)) + .map((entry) => + NutritionDiaryEntry(entry.key, entry.value, _nutritionalPlan)) .toList() .reversed, ], @@ -341,8 +320,7 @@ class NutritionDiaryEntry extends StatelessWidget { arguments: NutritionalDiaryArguments(plan, date), ), child: Text( - DateFormat.yMd(Localizations.localeOf(context).languageCode) - .format(date), + DateFormat.yMd(Localizations.localeOf(context).languageCode).format(date), )), Text(values.energy.toStringAsFixed(0)), Text(values.protein.toStringAsFixed(0)), diff --git a/lib/widgets/nutrition/nutritional_plans_list.dart b/lib/widgets/nutrition/nutritional_plans_list.dart index ddd96a3f..6d1eae27 100644 --- a/lib/widgets/nutrition/nutritional_plans_list.dart +++ b/lib/widgets/nutrition/nutritional_plans_list.dart @@ -48,26 +48,21 @@ class NutritionalPlansList extends StatelessWidget { builder: (BuildContext contextDialog) { return AlertDialog( content: Text( - AppLocalizations.of(context) - .confirmDelete(currentPlan.description), + AppLocalizations.of(context).confirmDelete(currentPlan.description), ), actions: [ TextButton( - child: Text(MaterialLocalizations.of(context) - .cancelButtonLabel), - onPressed: () => - Navigator.of(contextDialog).pop(), + child: Text(MaterialLocalizations.of(context).cancelButtonLabel), + onPressed: () => Navigator.of(contextDialog).pop(), ), TextButton( child: Text( AppLocalizations.of(context).delete, - style: TextStyle( - color: Theme.of(context).errorColor), + style: TextStyle(color: Theme.of(context).errorColor), ), onPressed: () { // Confirmed, delete the workout - _nutritionProvider - .deletePlan(currentPlan.id!); + _nutritionProvider.deletePlan(currentPlan.id!); // Close the popup Navigator.of(contextDialog).pop(); @@ -76,8 +71,7 @@ class NutritionalPlansList extends StatelessWidget { ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text( - AppLocalizations.of(context) - .successfullyDeleted, + AppLocalizations.of(context).successfullyDeleted, textAlign: TextAlign.center, ), ), @@ -113,8 +107,7 @@ class NutritionalPlansList extends StatelessWidget { }, title: Text(currentPlan.getLabel(context)), subtitle: Text( - DateFormat.yMd( - Localizations.localeOf(context).languageCode) + DateFormat.yMd(Localizations.localeOf(context).languageCode) .format(currentPlan.creationDate), ), ), diff --git a/lib/widgets/nutrition/widgets.dart b/lib/widgets/nutrition/widgets.dart index 055e6e7c..977eae0a 100644 --- a/lib/widgets/nutrition/widgets.dart +++ b/lib/widgets/nutrition/widgets.dart @@ -71,8 +71,8 @@ class _IngredientTypeaheadState extends State { Future readerscan(BuildContext context) async { String scannedcode; try { - scannedcode = await Navigator.of(context) - .push(MaterialPageRoute(builder: (context) => ScanReader())); + scannedcode = + await Navigator.of(context).push(MaterialPageRoute(builder: (context) => ScanReader())); if (scannedcode.compareTo('-1') == 0) { return ''; @@ -94,31 +94,22 @@ class _IngredientTypeaheadState extends State { decoration: InputDecoration( prefixIcon: const Icon(Icons.search), labelText: AppLocalizations.of(context).searchIngredient, - suffixIcon: - (widget.showScanner && !isDesktop) ? scanButton() : null, + suffixIcon: (widget.showScanner && !isDesktop) ? scanButton() : null, ), ), suggestionsCallback: (pattern) async { - return Provider.of(context, listen: false) - .searchIngredient( + return Provider.of(context, listen: false).searchIngredient( pattern, languageCode: Localizations.localeOf(context).languageCode, searchEnglish: _searchEnglish, ); }, itemBuilder: (context, dynamic suggestion) { - final url = context - .read() - .baseProvider - .auth - .serverUrl; + final url = context.read().baseProvider.auth.serverUrl; return ListTile( leading: suggestion['data']['image'] != null - ? CircleAvatar( - backgroundImage: - NetworkImage(url! + suggestion['data']['image'])) - : const CircleIconAvatar( - Icon(Icons.image, color: Colors.grey)), + ? CircleAvatar(backgroundImage: NetworkImage(url! + suggestion['data']['image'])) + : const CircleIconAvatar(Icon(Icons.image, color: Colors.grey)), title: Text(suggestion['value']), subtitle: Text(suggestion['data']['id'].toString()), ); @@ -127,8 +118,7 @@ class _IngredientTypeaheadState extends State { return suggestionsBox; }, onSuggestionSelected: (dynamic suggestion) { - widget._ingredientIdController.text = - suggestion['data']['id'].toString(); + widget._ingredientIdController.text = suggestion['data']['id'].toString(); widget._ingredientController.text = suggestion['value']; }, validator: (value) { @@ -138,8 +128,7 @@ class _IngredientTypeaheadState extends State { return null; }, ), - if (Localizations.localeOf(context).languageCode != - LANGUAGE_SHORT_ENGLISH) + if (Localizations.localeOf(context).languageCode != LANGUAGE_SHORT_ENGLISH) SwitchListTile( title: Text(AppLocalizations.of(context).searchNamesInEnglish), value: _searchEnglish, @@ -164,8 +153,7 @@ class _IngredientTypeaheadState extends State { } if (widget.barcode!.isNotEmpty) { - final result = await Provider.of(context, - listen: false) + final result = await Provider.of(context, listen: false) .searchIngredientWithCode(widget.barcode!); if (result != null) { @@ -174,24 +162,20 @@ class _IngredientTypeaheadState extends State { builder: (ctx) => AlertDialog( key: const Key('found-dialog'), title: Text(AppLocalizations.of(context).productFound), - content: Text(AppLocalizations.of(context) - .productFoundDescription(result.name)), + content: Text(AppLocalizations.of(context).productFoundDescription(result.name)), actions: [ TextButton( key: const Key('found-dialog-confirm-button'), - child: Text(MaterialLocalizations.of(context) - .continueButtonLabel), + child: Text(MaterialLocalizations.of(context).continueButtonLabel), onPressed: () { widget._ingredientController.text = result.name; - widget._ingredientIdController.text = - result.id.toString(); + widget._ingredientIdController.text = result.id.toString(); Navigator.of(ctx).pop(); }, ), TextButton( key: const Key('found-dialog-close-button'), - child: Text( - MaterialLocalizations.of(context).closeButtonLabel), + child: Text(MaterialLocalizations.of(context).closeButtonLabel), onPressed: () { Navigator.of(ctx).pop(); }, @@ -207,14 +191,12 @@ class _IngredientTypeaheadState extends State { key: const Key('notFound-dialog'), title: Text(AppLocalizations.of(context).productNotFound), content: Text( - AppLocalizations.of(context) - .productNotFoundDescription(widget.barcode!), + AppLocalizations.of(context).productNotFoundDescription(widget.barcode!), ), actions: [ TextButton( key: const Key('notFound-dialog-close-button'), - child: Text( - MaterialLocalizations.of(context).closeButtonLabel), + child: Text(MaterialLocalizations.of(context).closeButtonLabel), onPressed: () { Navigator.of(ctx).pop(); }, diff --git a/lib/widgets/user/forms.dart b/lib/widgets/user/forms.dart index 077b554c..87907f8e 100644 --- a/lib/widgets/user/forms.dart +++ b/lib/widgets/user/forms.dart @@ -83,8 +83,7 @@ class UserProfileForm extends StatelessWidget { ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text( - AppLocalizations.of(context) - .verifiedEmailInfo(_profile.email), + AppLocalizations.of(context).verifiedEmailInfo(_profile.email), ), ), ); @@ -94,8 +93,7 @@ class UserProfileForm extends StatelessWidget { ElevatedButton( style: ElevatedButton.styleFrom( backgroundColor: wgerPrimaryButtonColor, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(50))), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(50))), onPressed: () async { // Validate and save the current values to the weightEntry final isValid = _form.currentState!.validate(); @@ -108,9 +106,7 @@ class UserProfileForm extends StatelessWidget { context.read().saveProfile(); Navigator.of(context).pop(); ScaffoldMessenger.of(context).showSnackBar( - SnackBar( - content: - Text(AppLocalizations.of(context).successfullySaved)), + SnackBar(content: Text(AppLocalizations.of(context).successfullySaved)), ); }, child: Text(AppLocalizations.of(context).save), diff --git a/lib/widgets/weight/entries_list.dart b/lib/widgets/weight/entries_list.dart index 95ce526d..10e51dcc 100644 --- a/lib/widgets/weight/entries_list.dart +++ b/lib/widgets/weight/entries_list.dart @@ -30,8 +30,7 @@ import 'package:wger/widgets/weight/forms.dart'; class WeightEntriesList extends StatelessWidget { @override Widget build(BuildContext context) { - final _weightProvider = - Provider.of(context, listen: false); + final _weightProvider = Provider.of(context, listen: false); return Column( children: [ @@ -39,9 +38,8 @@ class WeightEntriesList extends StatelessWidget { color: Theme.of(context).cardColor, padding: const EdgeInsets.all(15), height: 220, - child: MeasurementChartWidgetFl(_weightProvider.items - .map((e) => MeasurementChartEntry(e.weight, e.date)) - .toList()), + child: MeasurementChartWidgetFl( + _weightProvider.items.map((e) => MeasurementChartEntry(e.weight, e.date)).toList()), ), TextButton( onPressed: () => Navigator.pushNamed( @@ -127,8 +125,7 @@ class WeightEntriesList extends StatelessWidget { child: ListTile( title: Text('${currentEntry.weight} kg'), subtitle: Text( - DateFormat.yMd( - Localizations.localeOf(context).languageCode) + DateFormat.yMd(Localizations.localeOf(context).languageCode) .format(currentEntry.date), ), ), diff --git a/lib/widgets/weight/forms.dart b/lib/widgets/weight/forms.dart index f09adbed..c4b6f676 100644 --- a/lib/widgets/weight/forms.dart +++ b/lib/widgets/weight/forms.dart @@ -34,8 +34,7 @@ class WeightForm extends StatelessWidget { WeightForm([WeightEntry? weightEntry]) { _weightEntry = weightEntry ?? WeightEntry(date: DateTime.now()); - weightController.text = - _weightEntry.id == null ? '' : _weightEntry.weight.toString(); + weightController.text = _weightEntry.id == null ? '' : _weightEntry.weight.toString(); dateController.text = toDate(_weightEntry.date)!; } @@ -68,8 +67,7 @@ class WeightForm extends StatelessWidget { } // if the date is known, don't allow it - return Provider.of(context, listen: false) - .findByDate(day) == + return Provider.of(context, listen: false).findByDate(day) == null; }, ); @@ -85,8 +83,7 @@ class WeightForm extends StatelessWidget { // Weight TextFormField( - decoration: - InputDecoration(labelText: AppLocalizations.of(context).weight), + decoration: InputDecoration(labelText: AppLocalizations.of(context).weight), controller: weightController, keyboardType: TextInputType.number, onSaved: (newValue) { @@ -117,11 +114,9 @@ class WeightForm extends StatelessWidget { // Save the entry on the server try { _weightEntry.id == null - ? await Provider.of(context, - listen: false) + ? await Provider.of(context, listen: false) .addEntry(_weightEntry) - : await Provider.of(context, - listen: false) + : await Provider.of(context, listen: false) .editEntry(_weightEntry); } on WgerHttpException catch (error) { if (context.mounted) { diff --git a/lib/widgets/workouts/app_bar.dart b/lib/widgets/workouts/app_bar.dart index d0ca21f2..73ce790d 100644 --- a/lib/widgets/workouts/app_bar.dart +++ b/lib/widgets/workouts/app_bar.dart @@ -26,8 +26,7 @@ enum _WorkoutAppBarOptions { contribute, } -class WorkoutOverviewAppBar extends StatelessWidget - implements PreferredSizeWidget { +class WorkoutOverviewAppBar extends StatelessWidget implements PreferredSizeWidget { @override Widget build(BuildContext context) { return AppBar( diff --git a/lib/widgets/workouts/charts.dart b/lib/widgets/workouts/charts.dart index 4c71a625..cbf5bbd5 100644 --- a/lib/widgets/workouts/charts.dart +++ b/lib/widgets/workouts/charts.dart @@ -55,8 +55,7 @@ class _LogChartWidgetFlState extends State { touchTooltipData: LineTouchTooltipData( getTooltipItems: (touchedSpots) { return touchedSpots.map((touchedSpot) { - final reps = - widget._data['chart_data'][touchedSpot.barIndex].first['reps']; + final reps = widget._data['chart_data'][touchedSpot.barIndex].first['reps']; return LineTooltipItem( '$reps × ${touchedSpot.y} kg', @@ -69,8 +68,7 @@ class _LogChartWidgetFlState extends State { } LineChartData mainData() { - final colors = - generateChartColors(widget._data['chart_data'].length).iterator; + final colors = generateChartColors(widget._data['chart_data'].length).iterator; return LineChartData( lineTouchData: tooltipData(), @@ -108,11 +106,9 @@ class _LogChartWidgetFlState extends State { return const Text(''); } - final DateTime date = - DateTime.fromMillisecondsSinceEpoch(value.toInt()); + final DateTime date = DateTime.fromMillisecondsSinceEpoch(value.toInt()); return Text( - DateFormat.yMd(Localizations.localeOf(context).languageCode) - .format(date), + DateFormat.yMd(Localizations.localeOf(context).languageCode).format(date), ); }, interval: chartGetInterval( @@ -142,9 +138,7 @@ class _LogChartWidgetFlState extends State { spots: [ ...e.map( (entry) => FlSpot( - DateTime.parse(entry['date']) - .millisecondsSinceEpoch - .toDouble(), + DateTime.parse(entry['date']).millisecondsSinceEpoch.toDouble(), double.parse(entry['weight']), ), ) diff --git a/lib/widgets/workouts/day.dart b/lib/widgets/workouts/day.dart index dc0de045..1ea0c3a5 100644 --- a/lib/widgets/workouts/day.dart +++ b/lib/widgets/workouts/day.dart @@ -51,8 +51,7 @@ class SettingWidget extends StatelessWidget { leading: InkWell( child: SizedBox( width: 45, - child: - ExerciseImageWidget(image: setting.exerciseBaseObj.getMainImage), + child: ExerciseImageWidget(image: setting.exerciseBaseObj.getMainImage), ), onTap: () { showDialog( @@ -65,8 +64,7 @@ class SettingWidget extends StatelessWidget { content: ExerciseDetail(setting.exerciseBaseObj), actions: [ TextButton( - child: Text( - MaterialLocalizations.of(context).closeButtonLabel), + child: Text(MaterialLocalizations.of(context).closeButtonLabel), onPressed: () { Navigator.of(context).pop(); }, @@ -77,16 +75,12 @@ class SettingWidget extends StatelessWidget { ); }, ), - title: Text(setting.exerciseBaseObj - .getExercise(Localizations.localeOf(context).languageCode) - .name), + title: Text( + setting.exerciseBaseObj.getExercise(Localizations.localeOf(context).languageCode).name), subtitle: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - ...set - .getSmartRepr(setting.exerciseBaseObj) - .map((e) => Text(e)) - .toList(), + ...set.getSmartRepr(setting.exerciseBaseObj).map((e) => Text(e)).toList(), ], ), ); @@ -130,8 +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( @@ -184,8 +177,7 @@ class _WorkoutDayWidgetState extends State { children: [ IconButton( onPressed: () { - Provider.of(context, listen: false) - .deleteDay( + Provider.of(context, listen: false).deleteDay( widget._day, ); }, @@ -216,8 +208,7 @@ class _WorkoutDayWidgetState extends State { arguments: FormScreenArguments( AppLocalizations.of(context).edit, DayFormWidget( - Provider.of(context, - listen: false) + Provider.of(context, listen: false) .findById(widget._day.workoutId), widget._day), hasListView: true, @@ -244,13 +235,11 @@ 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: [ - for (var i = 0; i < widget._day.sets.length; i++) - getSetRow(widget._day.sets[i], i), + for (var i = 0; i < widget._day.sets.length; i++) getSetRow(widget._day.sets[i], i), ], ), OutlinedButton( @@ -315,8 +304,7 @@ class DayHeaderDismissible extends StatelessWidget { confirmDismiss: (direction) async { // Delete day if (direction == DismissDirection.startToEnd) { - Navigator.of(context) - .pushNamed(GymModeScreen.routeName, arguments: _day); + Navigator.of(context).pushNamed(GymModeScreen.routeName, arguments: _day); } return false; }, @@ -335,15 +323,12 @@ class DayHeaderDismissible extends StatelessWidget { style: Theme.of(context).textTheme.headline5, overflow: TextOverflow.ellipsis, ), - Text(_day.getDaysTextTranslated( - Localizations.localeOf(context).languageCode)), + Text(_day.getDaysTextTranslated(Localizations.localeOf(context).languageCode)), ], ), ), IconButton( - icon: _expanded - ? const Icon(Icons.unfold_less) - : const Icon(Icons.unfold_more), + icon: _expanded ? const Icon(Icons.unfold_less) : const Icon(Icons.unfold_more), onPressed: () { _toggle(); }, diff --git a/lib/widgets/workouts/forms.dart b/lib/widgets/workouts/forms.dart index caabb2cc..f6d6dc3a 100644 --- a/lib/widgets/workouts/forms.dart +++ b/lib/widgets/workouts/forms.dart @@ -41,8 +41,7 @@ class WorkoutForm extends StatelessWidget { WorkoutForm(this._plan); final TextEditingController workoutNameController = TextEditingController(); - final TextEditingController workoutDescriptionController = - TextEditingController(); + final TextEditingController workoutDescriptionController = TextEditingController(); @override Widget build(BuildContext context) { @@ -57,17 +56,13 @@ class WorkoutForm extends StatelessWidget { children: [ TextFormField( key: const Key('field-name'), - decoration: - InputDecoration(labelText: AppLocalizations.of(context).name), + decoration: InputDecoration(labelText: AppLocalizations.of(context).name), controller: workoutNameController, validator: (value) { const minLength = 1; const maxLength = 100; - if (value!.isEmpty || - value.length < minLength || - value.length > maxLength) { - return AppLocalizations.of(context) - .enterCharacters(minLength, maxLength); + if (value!.isEmpty || value.length < minLength || value.length > maxLength) { + return AppLocalizations.of(context).enterCharacters(minLength, maxLength); } return null; }, @@ -78,8 +73,7 @@ class WorkoutForm extends StatelessWidget { ), TextFormField( key: const Key('field-description'), - decoration: InputDecoration( - labelText: AppLocalizations.of(context).description), + decoration: InputDecoration(labelText: AppLocalizations.of(context).description), minLines: 3, maxLines: 10, controller: workoutDescriptionController, @@ -87,8 +81,7 @@ class WorkoutForm extends StatelessWidget { const minLength = 0; const maxLength = 1000; if (value!.length > maxLength) { - return AppLocalizations.of(context) - .enterCharacters(minLength, maxLength); + return AppLocalizations.of(context).enterCharacters(minLength, maxLength); } return null; }, @@ -110,15 +103,13 @@ class WorkoutForm extends StatelessWidget { // Save to DB if (_plan.id != null) { - await Provider.of(context, listen: false) - .editWorkout(_plan); + await Provider.of(context, listen: false).editWorkout(_plan); if (context.mounted) { Navigator.of(context).pop(); } } else { final WorkoutPlan newPlan = - await Provider.of(context, - listen: false) + await Provider.of(context, listen: false) .addWorkout(_plan); if (context.mounted) { Navigator.of(context).pushReplacementNamed( @@ -208,11 +199,8 @@ class _DayFormWidgetState extends State { validator: (value) { const minLength = 1; const maxLength = 100; - if (value!.isEmpty || - value.length < minLength || - value.length > maxLength) { - return AppLocalizations.of(context) - .enterCharacters(minLength, maxLength); + if (value!.isEmpty || value.length < minLength || value.length > maxLength) { + return AppLocalizations.of(context).enterCharacters(minLength, maxLength); } if (widget._day.daysOfWeek.isEmpty) { @@ -222,9 +210,7 @@ class _DayFormWidgetState extends State { }, ), const SizedBox(height: 10), - ...Day.weekdays.keys - .map((dayNr) => DayCheckbox(dayNr, widget._day)) - .toList(), + ...Day.weekdays.keys.map((dayNr) => DayCheckbox(dayNr, widget._day)).toList(), ElevatedButton( key: const Key(SUBMIT_BUTTON_KEY_NAME), child: Text(AppLocalizations.of(context).save), @@ -236,14 +222,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, ); } else { - Provider.of(context, listen: false) - .editDay( + Provider.of(context, listen: false).editDay( widget._day, ); } @@ -343,8 +327,7 @@ class _SetFormWidgetState extends State { child: Column( //crossAxisAlignment: CrossAxisAlignment.start, children: [ - Text(AppLocalizations.of(context) - .nrOfSets(_currentSetSliderValue.round())), + Text(AppLocalizations.of(context).nrOfSets(_currentSetSliderValue.round())), Slider( value: _currentSetSliderValue, min: 1, @@ -384,8 +367,7 @@ class _SetFormWidgetState extends State { textFieldConfiguration: TextFieldConfiguration( controller: _exercisesController, decoration: InputDecoration( - labelText: - AppLocalizations.of(context).searchExercise, + labelText: AppLocalizations.of(context).searchExercise, prefixIcon: const Icon(Icons.search), suffixIcon: IconButton( icon: const Icon(Icons.help), @@ -396,18 +378,15 @@ class _SetFormWidgetState extends State { content: Column( mainAxisSize: MainAxisSize.min, children: [ - Text(AppLocalizations.of(context) - .selectExercises), + Text(AppLocalizations.of(context).selectExercises), const SizedBox(height: 10), - Text(AppLocalizations.of(context) - .sameRepetitions) + Text(AppLocalizations.of(context).sameRepetitions) ], ), actions: [ TextButton( child: Text( - MaterialLocalizations.of(context) - .closeButtonLabel), + MaterialLocalizations.of(context).closeButtonLabel), onPressed: () { Navigator.of(context).pop(); }, @@ -422,27 +401,21 @@ class _SetFormWidgetState extends State { ), ), suggestionsCallback: (pattern) { - return context - .read() - .searchExercise( + return context.read().searchExercise( pattern, - languageCode: Localizations.localeOf(context) - .languageCode, + languageCode: Localizations.localeOf(context).languageCode, searchEnglish: _searchEnglish, ); }, - itemBuilder: (BuildContext context, - ExerciseBase exerciseSuggestion) { + itemBuilder: (BuildContext context, ExerciseBase exerciseSuggestion) { return ListTile( leading: SizedBox( width: 45, - child: ExerciseImageWidget( - image: exerciseSuggestion.getMainImage), + child: ExerciseImageWidget(image: exerciseSuggestion.getMainImage), ), title: Text( exerciseSuggestion - .getExercise(Localizations.localeOf(context) - .languageCode) + .getExercise(Localizations.localeOf(context).languageCode) .name, ), subtitle: Text( @@ -450,12 +423,10 @@ class _SetFormWidgetState extends State { ), ); }, - transitionBuilder: - (context, suggestionsBox, controller) { + transitionBuilder: (context, suggestionsBox, controller) { return suggestionsBox; }, - onSuggestionSelected: - (ExerciseBase exerciseSuggestion) { + onSuggestionSelected: (ExerciseBase exerciseSuggestion) { addExercise(exerciseSuggestion); this._exercisesController.text = ''; }, @@ -467,21 +438,17 @@ class _SetFormWidgetState extends State { // At least one setting has to be filled in if (widget._set.settings - .where( - (s) => s.weight == null && s.reps == null) + .where((s) => s.weight == null && s.reps == null) .length == widget._set.settings.length) { - return AppLocalizations.of(context) - .enterRepetitionsOrWeight; + return AppLocalizations.of(context).enterRepetitionsOrWeight; } return null; }, ), - if (Localizations.localeOf(context).languageCode != - LANGUAGE_SHORT_ENGLISH) + if (Localizations.localeOf(context).languageCode != LANGUAGE_SHORT_ENGLISH) SwitchListTile( - title: Text(AppLocalizations.of(context) - .searchNamesInEnglish), + title: Text(AppLocalizations.of(context).searchNamesInEnglish), value: _searchEnglish, onChanged: (_) { setState(() { @@ -504,8 +471,7 @@ class _SetFormWidgetState extends State { const minLength = 0; const maxLength = 200; if (value!.length > maxLength) { - return AppLocalizations.of(context) - .enterCharacters(minLength, maxLength); + return AppLocalizations.of(context).enterCharacters(minLength, maxLength); } return null; }, @@ -517,8 +483,7 @@ class _SetFormWidgetState extends State { ...widget._set.exerciseBasesObj.asMap().entries.map((entry) { final index = entry.key; final exercise = entry.value; - final showSupersetInfo = - (index + 1) < widget._set.exerciseBasesObj.length; + final showSupersetInfo = (index + 1) < widget._set.exerciseBasesObj.length; final settings = widget._set.settings .where((e) => e.exerciseBaseObj.id == exercise.id) .toList(); @@ -537,8 +502,7 @@ class _SetFormWidgetState extends State { padding: EdgeInsets.all(3.0), child: Text('+'), ), - if (showSupersetInfo) - Text(AppLocalizations.of(context).supersetWith), + if (showSupersetInfo) Text(AppLocalizations.of(context).supersetWith), if (showSupersetInfo) const Padding( padding: EdgeInsets.all(3.0), @@ -557,25 +521,22 @@ 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); widget._set.id = setDb.id; // Remove unused settings - widget._set.settings - .removeWhere((s) => s.weight == null && s.reps == null); + widget._set.settings.removeWhere((s) => s.weight == null && s.reps == null); // Save remaining settings for (final setting in widget._set.settings) { setting.setId = setDb.id!; setting.comment = ''; - final Setting settingDb = - await workoutProvider.addSetting(setting); + final Setting settingDb = await workoutProvider.addSetting(setting); setting.id = settingDb.id; } @@ -653,8 +614,7 @@ class ExerciseSetting extends StatelessWidget { const SizedBox(width: 4), Flexible( flex: 3, - child: - WeightUnitInputWidget(setting, key: Key(i.toString())), + child: WeightUnitInputWidget(setting, key: Key(i.toString())), ), ], ), @@ -700,9 +660,7 @@ class ExerciseSetting extends StatelessWidget { children: [ ListTile( title: Text( - _exerciseBase - .getExercise(Localizations.localeOf(context).languageCode) - .name, + _exerciseBase.getExercise(Localizations.localeOf(context).languageCode).name, style: Theme.of(context).textTheme.headline6, ), subtitle: Text(_exerciseBase.category!.name), @@ -903,8 +861,7 @@ class _WeightUnitInputWidgetState extends State { return DropdownButtonFormField( value: selectedWeightUnit, - decoration: - InputDecoration(labelText: AppLocalizations.of(context).weightUnit), + decoration: InputDecoration(labelText: AppLocalizations.of(context).weightUnit), onChanged: (WeightUnit? newValue) { setState(() { selectedWeightUnit = newValue!; @@ -933,8 +890,7 @@ class RepetitionUnitInputWidget extends StatefulWidget { const RepetitionUnitInputWidget(this._setting); @override - _RepetitionUnitInputWidgetState createState() => - _RepetitionUnitInputWidgetState(); + _RepetitionUnitInputWidgetState createState() => _RepetitionUnitInputWidgetState(); } class _RepetitionUnitInputWidgetState extends State { @@ -944,8 +900,7 @@ class _RepetitionUnitInputWidgetState extends State { return DropdownButtonFormField( value: selectedWeightUnit, - decoration: InputDecoration( - labelText: AppLocalizations.of(context).repetitionUnit), + decoration: InputDecoration(labelText: AppLocalizations.of(context).repetitionUnit), isDense: true, onChanged: (RepetitionUnit? newValue) { setState(() { diff --git a/lib/widgets/workouts/gym_mode.dart b/lib/widgets/workouts/gym_mode.dart index 65c95b7b..0100732b 100644 --- a/lib/widgets/workouts/gym_mode.dart +++ b/lib/widgets/workouts/gym_mode.dart @@ -85,9 +85,8 @@ class _GymModeState extends State { for (final set in widget._workoutDay.sets) { var firstPage = true; for (final setting in set.settingsComputed) { - final exerciseBase = - Provider.of(context, listen: false) - .findExerciseBaseById(setting.exerciseBaseId); + final exerciseBase = Provider.of(context, listen: false) + .findExerciseBaseById(setting.exerciseBaseId); if (firstPage) { _exercisePages[exerciseBase.uuid!] = currentPage; @@ -106,10 +105,8 @@ 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 exerciseProvider = Provider.of(context, listen: false); + final workoutProvider = Provider.of(context, listen: false); var currentElement = 1; final List out = []; @@ -117,8 +114,7 @@ class _GymModeState extends State { var firstPage = true; for (final setting in set.settingsComputed) { final ratioCompleted = currentElement / _totalElements; - final exerciseBase = - exerciseProvider.findExerciseBaseById(setting.exerciseBaseId); + final exerciseBase = exerciseProvider.findExerciseBaseById(setting.exerciseBaseId); currentElement++; if (firstPage) { @@ -199,15 +195,11 @@ class StartPage extends StatelessWidget { children: [ Text( s.exerciseBaseObj - .getExercise(Localizations.localeOf(context) - .languageCode) + .getExercise(Localizations.localeOf(context).languageCode) .name, style: Theme.of(context).textTheme.headline6, ), - ...set - .getSmartRepr(s.exerciseBaseObj) - .map((e) => Text(e)) - .toList(), + ...set.getSmartRepr(s.exerciseBaseObj).map((e) => Text(e)).toList(), const SizedBox(height: 15), ], ); @@ -223,8 +215,7 @@ class StartPage extends StatelessWidget { child: Text(AppLocalizations.of(context).start), onPressed: () { _controller.nextPage( - duration: const Duration(milliseconds: 200), - curve: Curves.bounceIn); + duration: const Duration(milliseconds: 200), curve: Curves.bounceIn); }, ), NavigationFooter( @@ -367,8 +358,7 @@ class _LogPageState extends State { ), onPressed: () { try { - final double newValue = - double.parse(_weightController.text) - (2 * minPlateWeight); + final double newValue = double.parse(_weightController.text) - (2 * minPlateWeight); if (newValue > 0) { setState(() { widget._log.weight = newValue; @@ -416,8 +406,7 @@ class _LogPageState extends State { ), onPressed: () { try { - final double newValue = - double.parse(_weightController.text) + (2 * minPlateWeight); + final double newValue = double.parse(_weightController.text) + (2 * minPlateWeight); setState(() { widget._log.weight = newValue; _weightController.text = newValue.toString(); @@ -490,8 +479,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( @@ -547,9 +535,8 @@ class _LogPageState extends State { .map((log) { return ListTile( title: Text(log.singleLogRepTextNoNl), - subtitle: Text( - DateFormat.yMd(Localizations.localeOf(context).languageCode) - .format(log.date)), + subtitle: + Text(DateFormat.yMd(Localizations.localeOf(context).languageCode).format(log.date)), trailing: const Icon(Icons.copy), onTap: () { setState(() { @@ -563,8 +550,8 @@ class _LogPageState extends State { widget._log.weightUnit = log.weightUnitObj; ScaffoldMessenger.of(context).hideCurrentSnackBar(); - ScaffoldMessenger.of(context).showSnackBar(SnackBar( - content: Text(AppLocalizations.of(context).dataCopied))); + ScaffoldMessenger.of(context) + .showSnackBar(SnackBar(content: Text(AppLocalizations.of(context).dataCopied))); }); }, contentPadding: const EdgeInsets.symmetric(horizontal: 40), @@ -606,8 +593,7 @@ class _LogPageState extends State { shape: BoxShape.circle, ), child: Padding( - padding: - const EdgeInsets.symmetric(horizontal: 3), + padding: const EdgeInsets.symmetric(horizontal: 3), child: SizedBox( height: 35, width: 35, @@ -615,8 +601,7 @@ class _LogPageState extends State { alignment: Alignment.center, child: Text( key.toString(), - style: const TextStyle( - fontWeight: FontWeight.bold), + style: const TextStyle(fontWeight: FontWeight.bold), ), ), ), @@ -629,8 +614,7 @@ class _LogPageState extends State { .toList() ], ) - : MutedText( - AppLocalizations.of(context).plateCalculatorNotDivisible), + : MutedText(AppLocalizations.of(context).plateCalculatorNotDivisible), ), const SizedBox(height: 3), ], @@ -642,9 +626,7 @@ class _LogPageState extends State { return Column( children: [ NavigationHeader( - widget._exerciseBase - .getExercise(Localizations.localeOf(context).languageCode) - .name, + widget._exerciseBase.getExercise(Localizations.localeOf(context).languageCode).name, widget._controller, exercisePages: widget._exercisePages, ), @@ -662,15 +644,11 @@ class _LogPageState extends State { ), const SizedBox(height: 10), Expanded( - child: (widget._workoutPlan - .filterLogsByExerciseBase(widget._exerciseBase) - .isNotEmpty) + child: (widget._workoutPlan.filterLogsByExerciseBase(widget._exerciseBase).isNotEmpty) ? getPastLogs() : Container()), // Only show calculator for barbell - if (widget._log.exerciseBaseObj.equipment - .map((e) => e.id) - .contains(ID_EQUIPMENT_BARBELL)) + if (widget._log.exerciseBaseObj.equipment.map((e) => e.id).contains(ID_EQUIPMENT_BARBELL)) getPlates(), Padding( padding: const EdgeInsets.symmetric(horizontal: 15), @@ -703,9 +681,7 @@ class ExerciseOverview extends StatelessWidget { return Column( children: [ NavigationHeader( - _exerciseBase - .getExercise(Localizations.localeOf(context).languageCode) - .name, + _exerciseBase.getExercise(Localizations.localeOf(context).languageCode).name, _controller, exercisePages: _exercisePages, ), @@ -733,9 +709,7 @@ class ExerciseOverview extends StatelessWidget { child: ListView( scrollDirection: Axis.horizontal, children: [ - ..._exerciseBase.images - .map((e) => ExerciseImageWidget(image: e)) - .toList(), + ..._exerciseBase.images.map((e) => ExerciseImageWidget(image: e)).toList(), ], ), ), @@ -873,8 +847,7 @@ class _SessionPageState extends State { ); if (pickedTime != null) { - timeStartController.text = - timeToString(pickedTime)!; + timeStartController.text = timeToString(pickedTime)!; _session.timeStart = pickedTime; } }, @@ -882,13 +855,10 @@ class _SessionPageState extends State { _session.timeStart = stringToTime(newValue); }, validator: (_) { - final TimeOfDay startTime = - stringToTime(timeStartController.text); - final TimeOfDay endTime = - stringToTime(timeEndController.text); + final TimeOfDay startTime = stringToTime(timeStartController.text); + final TimeOfDay endTime = stringToTime(timeEndController.text); if (startTime.isAfter(endTime)) { - return AppLocalizations.of(context) - .timeStartAhead; + return AppLocalizations.of(context).timeStartAhead; } return null; }), @@ -896,8 +866,8 @@ class _SessionPageState extends State { const SizedBox(width: 10), Flexible( child: TextFormField( - decoration: InputDecoration( - labelText: AppLocalizations.of(context).timeEnd), + decoration: + InputDecoration(labelText: AppLocalizations.of(context).timeEnd), controller: timeEndController, onFieldSubmitted: (_) {}, onTap: () async { @@ -934,8 +904,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); if (mounted) { Navigator.of(context).pop(); @@ -970,8 +939,7 @@ class TimerWidget extends StatefulWidget { final double _ratioCompleted; final Map _exercisePages; - const TimerWidget( - this._controller, this._ratioCompleted, this._exercisePages); + const TimerWidget(this._controller, this._ratioCompleted, this._exercisePages); @override _TimerWidgetState createState() => _TimerWidgetState(); @@ -1034,10 +1002,7 @@ class _TimerWidgetState extends State { child: Center( child: Text( DateFormat('m:ss').format(today.add(Duration(seconds: _seconds))), - style: Theme.of(context) - .textTheme - .headline1! - .copyWith(color: wgerPrimaryColor), + style: Theme.of(context).textTheme.headline1!.copyWith(color: wgerPrimaryColor), ), ), ), diff --git a/lib/widgets/workouts/log.dart b/lib/widgets/workouts/log.dart index d51c7790..c9feff23 100644 --- a/lib/widgets/workouts/log.dart +++ b/lib/widgets/workouts/log.dart @@ -36,8 +36,7 @@ class ExerciseLogChart extends StatelessWidget { @override Widget build(BuildContext context) { - final workoutPlansData = - Provider.of(context, listen: false); + final workoutPlansData = Provider.of(context, listen: false); final workout = workoutPlansData.currentPlan; var colors = generateChartColors(1).iterator; @@ -49,8 +48,7 @@ class ExerciseLogChart extends StatelessWidget { future: getChartEntries(context), builder: (context, AsyncSnapshot> snapshot) { if (snapshot.connectionState == ConnectionState.done) { - colors = generateChartColors(snapshot.data!['chart_data'].length) - .iterator; + colors = generateChartColors(snapshot.data!['chart_data'].length).iterator; } return SizedBox( @@ -111,14 +109,12 @@ class _DayLogWidgetState extends State { child: Column( children: [ Text( - DateFormat.yMd(Localizations.localeOf(context).languageCode) - .format(widget._date), + DateFormat.yMd(Localizations.localeOf(context).languageCode).format(widget._date), style: Theme.of(context).textTheme.headline5, ), if (widget._session != null) const Text('Session data here'), ...widget._exerciseData.keys.map((base) { - final exercise = - base.getExercise(Localizations.localeOf(context).languageCode); + final exercise = base.getExercise(Localizations.localeOf(context).languageCode); return Column( children: [ if (widget._exerciseData[base]!.isNotEmpty) @@ -137,8 +133,8 @@ class _DayLogWidgetState extends State { IconButton( icon: const Icon(Icons.delete), onPressed: () async { - showDeleteDialog(context, exercise.name, log, - exercise, widget._exerciseData); + showDeleteDialog( + context, exercise.name, log, exercise, widget._exerciseData); }, ), ], diff --git a/lib/widgets/workouts/workout_plan_detail.dart b/lib/widgets/workouts/workout_plan_detail.dart index 47d789e9..cf0fbd6e 100644 --- a/lib/widgets/workouts/workout_plan_detail.dart +++ b/lib/widgets/workouts/workout_plan_detail.dart @@ -57,9 +57,7 @@ class _WorkoutPlanDetailState extends State { padding: const EdgeInsets.all(15), child: Text(widget._workoutPlan.description), ), - ...widget._workoutPlan.days - .map((workoutDay) => WorkoutDayWidget(workoutDay)) - .toList(), + ...widget._workoutPlan.days.map((workoutDay) => WorkoutDayWidget(workoutDay)).toList(), Column( children: [ ElevatedButton( diff --git a/lib/widgets/workouts/workout_plans_list.dart b/lib/widgets/workouts/workout_plans_list.dart index 5064e9e5..92723dd4 100644 --- a/lib/widgets/workouts/workout_plans_list.dart +++ b/lib/widgets/workouts/workout_plans_list.dart @@ -49,26 +49,21 @@ class WorkoutPlansList extends StatelessWidget { builder: (BuildContext contextDialog) { return AlertDialog( content: Text( - AppLocalizations.of(context) - .confirmDelete(currentWorkout.name), + AppLocalizations.of(context).confirmDelete(currentWorkout.name), ), actions: [ TextButton( - child: Text(MaterialLocalizations.of(context) - .cancelButtonLabel), - onPressed: () => - Navigator.of(contextDialog).pop(), + child: Text(MaterialLocalizations.of(context).cancelButtonLabel), + onPressed: () => Navigator.of(contextDialog).pop(), ), TextButton( child: Text( AppLocalizations.of(context).delete, - style: TextStyle( - color: Theme.of(context).errorColor), + style: TextStyle(color: Theme.of(context).errorColor), ), onPressed: () { // Confirmed, delete the workout - Provider.of(context, - listen: false) + Provider.of(context, listen: false) .deleteWorkout(currentWorkout.id!); // Close the popup @@ -78,8 +73,7 @@ class WorkoutPlansList extends StatelessWidget { ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text( - AppLocalizations.of(context) - .successfullyDeleted, + AppLocalizations.of(context).successfullyDeleted, textAlign: TextAlign.center, ), ), @@ -110,14 +104,12 @@ class WorkoutPlansList extends StatelessWidget { onTap: () { _workoutProvider.setCurrentPlan(currentWorkout.id!); - Navigator.of(context).pushNamed( - WorkoutPlanScreen.routeName, - arguments: currentWorkout); + Navigator.of(context) + .pushNamed(WorkoutPlanScreen.routeName, arguments: currentWorkout); }, title: Text(currentWorkout.name), subtitle: Text( - DateFormat.yMd( - Localizations.localeOf(context).languageCode) + DateFormat.yMd(Localizations.localeOf(context).languageCode) .format(currentWorkout.creationDate), ), ), diff --git a/test/auth/auth_provider_test.dart b/test/auth/auth_provider_test.dart index 2df0775f..93c280f6 100644 --- a/test/auth/auth_provider_test.dart +++ b/test/auth/auth_provider_test.dart @@ -27,10 +27,8 @@ void main() { test('app version higher than min version', () async { // arrange - when(mockClient.get(tVersionUri)) - .thenAnswer((_) => Future(() => Response('"1.2.0"', 200))); - final updateNeeded = - await authProvider.applicationUpdateRequired('1.3.0', testMetadata); + when(mockClient.get(tVersionUri)).thenAnswer((_) => Future(() => Response('"1.2.0"', 200))); + final updateNeeded = await authProvider.applicationUpdateRequired('1.3.0', testMetadata); // assert expect(updateNeeded, false); @@ -38,10 +36,8 @@ void main() { test('app version higher than min version', () async { // arrange - when(mockClient.get(tVersionUri)) - .thenAnswer((_) => Future(() => Response('"1.3"', 200))); - final updateNeeded = - await authProvider.applicationUpdateRequired('1.1', testMetadata); + when(mockClient.get(tVersionUri)).thenAnswer((_) => Future(() => Response('"1.3"', 200))); + final updateNeeded = await authProvider.applicationUpdateRequired('1.1', testMetadata); // assert expect(updateNeeded, true); @@ -49,10 +45,8 @@ void main() { test('app version higher than min version', () async { // arrange - when(mockClient.get(tVersionUri)) - .thenAnswer((_) => Future(() => Response('"1.3.0"', 200))); - final updateNeeded = - await authProvider.applicationUpdateRequired('1.1', testMetadata); + when(mockClient.get(tVersionUri)).thenAnswer((_) => Future(() => Response('"1.3.0"', 200))); + final updateNeeded = await authProvider.applicationUpdateRequired('1.1', testMetadata); // assert expect(updateNeeded, true); @@ -60,10 +54,8 @@ void main() { test('app version equal as min version', () async { // arrange - when(mockClient.get(tVersionUri)) - .thenAnswer((_) => Future(() => Response('"1.3.0"', 200))); - final updateNeeded = - await authProvider.applicationUpdateRequired('1.3.0', testMetadata); + when(mockClient.get(tVersionUri)).thenAnswer((_) => Future(() => Response('"1.3.0"', 200))); + final updateNeeded = await authProvider.applicationUpdateRequired('1.3.0', testMetadata); // assert expect(updateNeeded, false); diff --git a/test/auth/auth_screen_test.dart b/test/auth/auth_screen_test.dart index 2e3bc3bd..b5b80433 100644 --- a/test/auth/auth_screen_test.dart +++ b/test/auth/auth_screen_test.dart @@ -24,8 +24,7 @@ import 'package:wger/providers/auth.dart'; import 'package:wger/screens/auth_screen.dart'; void main() { - testWidgets('Test the widgets on the auth screen, login mode', - (WidgetTester tester) async { + testWidgets('Test the widgets on the auth screen, login mode', (WidgetTester tester) async { // Wrap screen in material app so that the media query gets a context await tester.pumpWidget( MultiProvider( @@ -81,8 +80,7 @@ void main() { // either the provider wasn't found or, if the call was removed, the // localization data could not be loaded... - testWidgets('Test the widgets on the auth screen, registration', - (WidgetTester tester) async { + testWidgets('Test the widgets on the auth screen, registration', (WidgetTester tester) async { // Wrap screen in material app so that the media query gets a context await tester.pumpWidget(MaterialApp(home: AuthScreen())); await tester.tap(find.byKey(const Key('toggleActionButton'))); diff --git a/test/exercises/contribute_exercise_test.dart b/test/exercises/contribute_exercise_test.dart index 5311a75d..0b887902 100644 --- a/test/exercises/contribute_exercise_test.dart +++ b/test/exercises/contribute_exercise_test.dart @@ -41,12 +41,9 @@ void main() { Widget createExerciseScreen({locale = 'en'}) { return MultiProvider( providers: [ - ChangeNotifierProvider( - create: (context) => mockExerciseProvider), - ChangeNotifierProvider( - create: (context) => mockAddExerciseProvider), - ChangeNotifierProvider( - create: (context) => mockUserProvider), + ChangeNotifierProvider(create: (context) => mockExerciseProvider), + ChangeNotifierProvider(create: (context) => mockAddExerciseProvider), + ChangeNotifierProvider(create: (context) => mockUserProvider), ], child: MaterialApp( locale: Locale(locale), @@ -57,8 +54,7 @@ void main() { ); } - testWidgets('Unverified users see an info widget', - (WidgetTester tester) async { + testWidgets('Unverified users see an info widget', (WidgetTester tester) async { // Arrange tProfile1.isTrustworthy = false; when(mockUserProvider.profile).thenReturn(tProfile1); @@ -71,8 +67,7 @@ void main() { expect(find.byType(AddExerciseStepper), findsNothing); }); - testWidgets('Verified users see the stepper to add exercises', - (WidgetTester tester) async { + testWidgets('Verified users see the stepper to add exercises', (WidgetTester tester) async { // Arrange tProfile1.isTrustworthy = true; when(mockUserProvider.profile).thenReturn(tProfile1); diff --git a/test/exercises/contribute_exercise_test.mocks.dart b/test/exercises/contribute_exercise_test.mocks.dart index d57a4f90..415e960c 100644 --- a/test/exercises/contribute_exercise_test.mocks.dart +++ b/test/exercises/contribute_exercise_test.mocks.dart @@ -32,8 +32,7 @@ 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, @@ -86,8 +85,7 @@ 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); } @@ -376,8 +374,7 @@ class MockAddExerciseProvider extends _i1.Mock ) 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/exercise_provider_load_test.dart b/test/exercises/exercise_provider_load_test.dart index a7ac526e..0cde07f8 100644 --- a/test/exercises/exercise_provider_load_test.dart +++ b/test/exercises/exercise_provider_load_test.dart @@ -83,16 +83,13 @@ void main() { 'd8aa5990-bb47-4111-9823-e2fbd98fe07f', '49a159e1-1e00-409a-81c9-b4d4489fbd67' ]); - expect(base.videos.map((v) => v.uuid), - ['63e996e9-a772-4ca5-9d09-8b4be03f6be4']); + expect(base.videos.map((v) => v.uuid), ['63e996e9-a772-4ca5-9d09-8b4be03f6be4']); final exercise1 = base.translations[0]; expect(exercise1.name, '2 Handed Kettlebell Swing'); expect(exercise1.languageObj.shortName, 'en'); - expect(exercise1.notes[0].comment, - "it's important to do the exercise correctly"); - expect( - exercise1.notes[1].comment, 'put a lot of effort into this exercise'); + expect(exercise1.notes[0].comment, "it's important to do the exercise correctly"); + expect(exercise1.notes[1].comment, 'put a lot of effort into this exercise'); expect(exercise1.notes[2].comment, 'have fun'); expect(exercise1.alias[0].alias, 'double handed kettlebell'); expect(exercise1.alias[1].alias, 'Kettlebell russian style'); diff --git a/test/exercises/exercise_provider_test.dart b/test/exercises/exercise_provider_test.dart index b6735e34..b580f61b 100644 --- a/test/exercises/exercise_provider_test.dart +++ b/test/exercises/exercise_provider_test.dart @@ -62,8 +62,7 @@ void main() { ); const category1 = ExerciseCategory(id: 1, name: 'Arms'); - const muscle1 = - Muscle(id: 1, name: 'Biceps brachii', nameEn: 'Biceps', isFront: true); + const muscle1 = Muscle(id: 1, name: 'Biceps brachii', nameEn: 'Biceps', isFront: true); const equipment1 = Equipment(id: 1, name: 'Barbell'); const language1 = Language(id: 1, shortName: 'de', fullName: 'Deutsch'); @@ -98,8 +97,7 @@ void main() { .thenAnswer((_) => Future.value(tMuscleMap['results'])); // Mock equipment - when(mockBaseProvider.makeUrl(equipmentUrl)) - .thenReturn(tEquipmentEntriesUri); + when(mockBaseProvider.makeUrl(equipmentUrl)).thenReturn(tEquipmentEntriesUri); when(mockBaseProvider.fetchPaginated(tEquipmentEntriesUri)) .thenAnswer((_) => Future.value(tEquipmentMap['results'])); @@ -110,8 +108,7 @@ void main() { .thenAnswer((_) => Future.value(tLanguageMap['results'])); // Mock base info response - when(mockBaseProvider.makeUrl(exerciseBaseInfoUrl)) - .thenReturn(texerciseBaseInfoUri); + when(mockBaseProvider.makeUrl(exerciseBaseInfoUrl)).thenReturn(texerciseBaseInfoUri); when(mockBaseProvider.fetch(texerciseBaseInfoUri)) .thenAnswer((_) => Future.value(tExerciseBaseInfoMap)); }); @@ -130,8 +127,7 @@ void main() { test('should throw a NoResultException if no category is found', () { // act & assert - expect(() => provider.findCategoryById(3), - throwsA(isA())); + expect(() => provider.findCategoryById(3), throwsA(isA())); }); }); @@ -149,8 +145,7 @@ void main() { test('should throw a NoResultException if no muscle is found', () { // act & assert - expect(() => provider.findMuscleById(3), - throwsA(isA())); + expect(() => provider.findMuscleById(3), throwsA(isA())); }); }); @@ -168,8 +163,7 @@ void main() { test('should throw a NoResultException if no equipment is found', () { // act & assert - expect(() => provider.findEquipmentById(10), - throwsA(isA())); + expect(() => provider.findEquipmentById(10), throwsA(isA())); }); }); @@ -187,8 +181,7 @@ void main() { test('should throw a NoResultException if no equipment is found', () { // act & assert - expect(() => provider.findLanguageById(10), - throwsA(isA())); + expect(() => provider.findLanguageById(10), throwsA(isA())); }); }); @@ -211,8 +204,7 @@ void main() { SharedPreferences.setMockInitialValues({}); filters = Filters( - exerciseCategories: FilterCategory( - title: 'Muscle Groups', items: {}), + exerciseCategories: FilterCategory(title: 'Muscle Groups', items: {}), equipment: FilterCategory(title: 'Equipment', items: {}), ); @@ -235,12 +227,10 @@ void main() { ); }); - test('A muscle is selected with no search term. Should find results', - () async { + test('A muscle is selected with no search term. Should find results', () async { // arrange final Filters tFilters = filters.copyWith( - exerciseCategories: filters.exerciseCategories - .copyWith(items: {data.tCategory1: true}), + exerciseCategories: filters.exerciseCategories.copyWith(items: {data.tCategory1: true}), ); // act @@ -248,16 +238,13 @@ void main() { // assert verifyNever(provider.baseProvider.fetch(tSearchByNameUri)); - expect( - provider.filteredExerciseBases, [data.getTestExerciseBases()[0]]); + expect(provider.filteredExerciseBases, [data.getTestExerciseBases()[0]]); }); - test('A muscle is selected with no search term. Should not find results', - () async { + test('A muscle is selected with no search term. Should not find results', () async { // arrange final Filters tFilters = filters.copyWith( - exerciseCategories: filters.exerciseCategories - .copyWith(items: {data.tCategory5: true}), + exerciseCategories: filters.exerciseCategories.copyWith(items: {data.tCategory5: true}), ); // act @@ -268,12 +255,10 @@ void main() { expect(provider.filteredExerciseBases, isEmpty); }); - test('An equipment is selected with no search term. Should find results', - () async { + test('An equipment is selected with no search term. Should find results', () async { // arrange final Filters tFilters = filters.copyWith( - equipment: - filters.equipment.copyWith(items: {data.tEquipment1: true}), + equipment: filters.equipment.copyWith(items: {data.tEquipment1: true}), ); // act @@ -281,17 +266,13 @@ void main() { // assert verifyNever(provider.baseProvider.fetch(tSearchByNameUri)); - expect( - provider.filteredExerciseBases, [data.getTestExerciseBases()[0]]); + expect(provider.filteredExerciseBases, [data.getTestExerciseBases()[0]]); }); - test( - 'An equipment is selected with no search term. Should not find results', - () async { + test('An equipment is selected with no search term. Should not find results', () async { // arrange final Filters tFilters = filters.copyWith( - equipment: - filters.equipment.copyWith(items: {data.tEquipment3: true}), + equipment: filters.equipment.copyWith(items: {data.tEquipment3: true}), ); // act @@ -305,10 +286,8 @@ void main() { test('A muscle and equipment is selected and there is a match', () async { // arrange final Filters tFilters = filters.copyWith( - exerciseCategories: filters.exerciseCategories - .copyWith(items: {data.tCategory2: true}), - equipment: - filters.equipment.copyWith(items: {data.tEquipment2: true}), + exerciseCategories: filters.exerciseCategories.copyWith(items: {data.tCategory2: true}), + equipment: filters.equipment.copyWith(items: {data.tEquipment2: true}), ); // act @@ -316,15 +295,13 @@ void main() { // assert verifyNever(provider.baseProvider.fetch(tSearchByNameUri)); - expect( - provider.filteredExerciseBases, [data.getTestExerciseBases()[1]]); + expect(provider.filteredExerciseBases, [data.getTestExerciseBases()[1]]); }); test('A muscle and equipment is selected but no match', () async { // arrange final Filters tFilters = filters.copyWith( - exerciseCategories: filters.exerciseCategories - .copyWith(items: {data.tCategory2: true}), + exerciseCategories: filters.exerciseCategories.copyWith(items: {data.tCategory2: true}), equipment: filters.equipment.copyWith(items: {equipment1: true}), ); @@ -341,10 +318,7 @@ void main() { setUp(() { const String tSearchTerm = 'press'; const String tSearchLanguage = 'en'; - final Map query = { - 'term': tSearchTerm, - 'language': tSearchLanguage - }; + final Map query = {'term': tSearchTerm, 'language': tSearchLanguage}; tSearchByNameUri = Uri( scheme: 'http', host: 'localhost', @@ -362,8 +336,7 @@ void main() { query: {'term': tSearchTerm, 'language': tSearchLanguage}, ), ).thenReturn(tSearchByNameUri); - when(mockBaseProvider.fetch(tSearchByNameUri)) - .thenAnswer((_) async => tSearchResponse); + when(mockBaseProvider.fetch(tSearchByNameUri)).thenAnswer((_) async => tSearchResponse); }); test('Should find results from search term', () async { @@ -380,14 +353,11 @@ void main() { [data.getTestExerciseBases()[0], data.getTestExerciseBases()[1]], ); }); - test( - 'Should find items from selection but should filter them by search term', - () async { + test('Should find items from selection but should filter them by search term', () async { // arrange final Filters tFilters = filters.copyWith( searchTerm: 'press', - exerciseCategories: filters.exerciseCategories - .copyWith(items: {data.tCategory3: true}), + exerciseCategories: filters.exerciseCategories.copyWith(items: {data.tCategory3: true}), ); // act diff --git a/test/exercises/exercises_detail_widget_test.dart b/test/exercises/exercises_detail_widget_test.dart index 88fa70c9..b7725633 100644 --- a/test/exercises/exercises_detail_widget_test.dart +++ b/test/exercises/exercises_detail_widget_test.dart @@ -44,8 +44,7 @@ void main() { ); } - testWidgets('Test the widgets on the exercise detail widget', - (WidgetTester tester) async { + testWidgets('Test the widgets on the exercise detail widget', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); await tester.pumpAndSettle(); @@ -54,12 +53,9 @@ void main() { expect(find.text('Bench'), findsOneWidget, reason: 'Equipment'); expect(find.text('Dumbbell'), findsOneWidget, reason: 'Equipment'); - expect(find.text('Muscles'), findsNWidgets(2), - reason: 'One header, one sub header'); - expect(find.text('Flutterus maximus (Glutes)'), findsOneWidget, - reason: 'Muscles'); - expect(find.text('Biceps brachii (Biceps)'), findsOneWidget, - reason: 'Muscles'); + expect(find.text('Muscles'), findsNWidgets(2), reason: 'One header, one sub header'); + expect(find.text('Flutterus maximus (Glutes)'), findsOneWidget, reason: 'Muscles'); + expect(find.text('Biceps brachii (Biceps)'), findsOneWidget, reason: 'Muscles'); expect(find.text('Secondary muscles'), findsOneWidget); expect( @@ -67,10 +63,8 @@ void main() { findsNWidgets(2), reason: 'Two diagrams, one for front, one for the back', ); - expect(find.text('Gluteus maximus'), findsOneWidget, - reason: 'Secondary muscles'); - expect(find.text('Description'), findsOneWidget, - reason: 'Description header'); + expect(find.text('Gluteus maximus'), findsOneWidget, reason: 'Secondary muscles'); + expect(find.text('Description'), findsOneWidget, reason: 'Description header'); expect(find.text('add clever text'), findsOneWidget, reason: 'Description'); expect(find.text('Variations'), findsNothing); }); diff --git a/test/gallery/gallery_form_test.dart b/test/gallery/gallery_form_test.dart index 0c5a3af8..fcf26cf7 100644 --- a/test/gallery/gallery_form_test.dart +++ b/test/gallery/gallery_form_test.dart @@ -53,10 +53,8 @@ void main() { ); } - testWidgets('Test opening the form for an existing image', - (WidgetTester tester) async { - await mockNetworkImagesFor( - () => tester.pumpWidget(createScreen(useImage: true))); + testWidgets('Test opening the form for an existing image', (WidgetTester tester) async { + await mockNetworkImagesFor(() => tester.pumpWidget(createScreen(useImage: true))); await tester.pump(); expect(find.byType(TextFormField), findsNWidgets(2)); @@ -76,10 +74,8 @@ void main() { verify(mockGalleryProvider.editImage(any, any)); }); - testWidgets('Test opening the form for a new image', - (WidgetTester tester) async { - await mockNetworkImagesFor( - () => tester.pumpWidget(createScreen(useImage: false))); + testWidgets('Test opening the form for a new image', (WidgetTester tester) async { + await mockNetworkImagesFor(() => tester.pumpWidget(createScreen(useImage: false))); await tester.pumpAndSettle(); expect(find.text('Please select an image'), findsOneWidget); diff --git a/test/gallery/gallery_form_test.mocks.dart b/test/gallery/gallery_form_test.mocks.dart index 68ca4e78..c207984d 100644 --- a/test/gallery/gallery_form_test.mocks.dart +++ b/test/gallery/gallery_form_test.mocks.dart @@ -193,8 +193,7 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { ) as _i6.Future); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -240,8 +239,7 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { #fetch, [uri], ), - returnValue: - _i6.Future>.value({}), + returnValue: _i6.Future>.value({}), ) as _i6.Future>); @override @@ -266,8 +264,7 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { uri, ], ), - returnValue: - _i6.Future>.value({}), + returnValue: _i6.Future>.value({}), ) as _i6.Future>); @override @@ -283,8 +280,7 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { uri, ], ), - returnValue: - _i6.Future>.value({}), + returnValue: _i6.Future>.value({}), ) as _i6.Future>); @override diff --git a/test/gallery/gallery_provider_test.dart b/test/gallery/gallery_provider_test.dart index e8e09850..1c6021a8 100644 --- a/test/gallery/gallery_provider_test.dart +++ b/test/gallery/gallery_provider_test.dart @@ -69,8 +69,7 @@ void main() { final image = gallery.Image( id: 58, date: DateTime(2022, 01, 09), - url: - 'https://wger.de/media/gallery/170335/d2b9c9e0-d541-41ae-8786-a2ab459e3538.jpg', + url: 'https://wger.de/media/gallery/170335/d2b9c9e0-d541-41ae-8786-a2ab459e3538.jpg', description: "eggsaddjujuit\'ddayhadIforcanview"); galleryProvider.images.add(image); diff --git a/test/gallery/gallery_screen_test.dart b/test/gallery/gallery_screen_test.dart index e0ab883f..dfb08a16 100644 --- a/test/gallery/gallery_screen_test.dart +++ b/test/gallery/gallery_screen_test.dart @@ -55,16 +55,14 @@ void main() { ); } - testWidgets('Test the widgets on the gallery screen', - (WidgetTester tester) async { + testWidgets('Test the widgets on the gallery screen', (WidgetTester tester) async { await mockNetworkImagesFor(() => tester.pumpWidget(createScreen())); expect(find.byType(SliverMasonryGrid), findsOneWidget); expect(find.byType(GestureDetector, skipOffstage: false), findsNWidgets(4)); }); - testWidgets('Test opening the form for an existing image', - (WidgetTester tester) async { + testWidgets('Test opening the form for an existing image', (WidgetTester tester) async { await mockNetworkImagesFor(() => tester.pumpWidget(createScreen())); await tester.tap(find.byKey(const Key('image-1'))); @@ -72,8 +70,7 @@ void main() { // Detail dialog opens expect(find.byKey(const Key('image-1-detail')), findsOneWidget); - expect(find.byType(Image), - findsNWidgets(5)); // four in the overview, one in the popup + expect(find.byType(Image), findsNWidgets(5)); // four in the overview, one in the popup expect(find.text('A very cool image from the gym'), findsOneWidget); expect(find.byIcon(Icons.edit), findsOneWidget); expect(find.byIcon(Icons.delete), findsOneWidget); @@ -87,8 +84,7 @@ void main() { expect(find.byType(ElevatedButton), findsOneWidget); }); - testWidgets('Tests the localization of dates - EN', - (WidgetTester tester) async { + testWidgets('Tests the localization of dates - EN', (WidgetTester tester) async { await mockNetworkImagesFor(() => tester.pumpWidget(createScreen())); await tester.tap(find.byKey(const Key('image-1'))); await tester.pumpAndSettle(); @@ -96,10 +92,8 @@ void main() { expect(find.text('5/30/2021'), findsOneWidget); }); - testWidgets('Tests the localization of dates - DE', - (WidgetTester tester) async { - await mockNetworkImagesFor( - () => tester.pumpWidget(createScreen(locale: 'de'))); + testWidgets('Tests the localization of dates - DE', (WidgetTester tester) async { + await mockNetworkImagesFor(() => tester.pumpWidget(createScreen(locale: 'de'))); await tester.tap(find.byKey(const Key('image-1'))); await tester.pumpAndSettle(); diff --git a/test/gallery/gallery_screen_test.mocks.dart b/test/gallery/gallery_screen_test.mocks.dart index 5bf657f7..0642ae7d 100644 --- a/test/gallery/gallery_screen_test.mocks.dart +++ b/test/gallery/gallery_screen_test.mocks.dart @@ -193,8 +193,7 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { ) as _i6.Future); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -240,8 +239,7 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { #fetch, [uri], ), - returnValue: - _i6.Future>.value({}), + returnValue: _i6.Future>.value({}), ) as _i6.Future>); @override @@ -266,8 +264,7 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { uri, ], ), - returnValue: - _i6.Future>.value({}), + returnValue: _i6.Future>.value({}), ) as _i6.Future>); @override @@ -283,8 +280,7 @@ class MockGalleryProvider extends _i1.Mock implements _i4.GalleryProvider { uri, ], ), - returnValue: - _i6.Future>.value({}), + returnValue: _i6.Future>.value({}), ) as _i6.Future>); @override diff --git a/test/measurements/measurement_categories_screen_test.dart b/test/measurements/measurement_categories_screen_test.dart index f0f0b3f6..1fa899e4 100644 --- a/test/measurements/measurement_categories_screen_test.dart +++ b/test/measurements/measurement_categories_screen_test.dart @@ -38,32 +38,12 @@ void main() { mockMeasurementProvider = MockMeasurementProvider(); when(mockMeasurementProvider.categories).thenReturn([ MeasurementCategory(id: 1, name: 'body fat', unit: '%', entries: [ - MeasurementEntry( - id: 1, - category: 1, - date: DateTime(2021, 9, 1), - value: 10, - notes: ''), - MeasurementEntry( - id: 2, - category: 1, - date: DateTime(2021, 9, 5), - value: 11, - notes: ''), + MeasurementEntry(id: 1, category: 1, date: DateTime(2021, 9, 1), value: 10, notes: ''), + MeasurementEntry(id: 2, category: 1, date: DateTime(2021, 9, 5), value: 11, notes: ''), ]), MeasurementCategory(id: 2, name: 'biceps', unit: 'cm', entries: [ - MeasurementEntry( - id: 3, - category: 2, - date: DateTime(2021, 9, 1), - value: 30, - notes: ''), - MeasurementEntry( - id: 4, - category: 2, - date: DateTime(2021, 9, 5), - value: 40, - notes: ''), + MeasurementEntry(id: 3, category: 2, date: DateTime(2021, 9, 1), value: 30, notes: ''), + MeasurementEntry(id: 4, category: 2, date: DateTime(2021, 9, 5), value: 40, notes: ''), ]), ]); }); @@ -80,8 +60,7 @@ void main() { ); } - testWidgets('Test the widgets on the measurement category screen', - (WidgetTester tester) async { + testWidgets('Test the widgets on the measurement category screen', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); await tester.pumpAndSettle(); diff --git a/test/measurements/measurement_categories_screen_test.mocks.dart b/test/measurements/measurement_categories_screen_test.mocks.dart index 4459e9d6..1ef3dc24 100644 --- a/test/measurements/measurement_categories_screen_test.mocks.dart +++ b/test/measurements/measurement_categories_screen_test.mocks.dart @@ -23,8 +23,7 @@ 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, @@ -34,8 +33,7 @@ class _FakeWgerBaseProvider_0 extends _i1.SmartFake ); } -class _FakeMeasurementCategory_1 extends _i1.SmartFake - implements _i3.MeasurementCategory { +class _FakeMeasurementCategory_1 extends _i1.SmartFake implements _i3.MeasurementCategory { _FakeMeasurementCategory_1( Object parent, Invocation parentInvocation, @@ -48,8 +46,7 @@ class _FakeMeasurementCategory_1 extends _i1.SmartFake /// 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); } @@ -130,8 +127,7 @@ class MockMeasurementProvider extends _i1.Mock ) 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_category_test.dart b/test/measurements/measurement_category_test.dart index 04b2e8e2..0f66a73e 100644 --- a/test/measurements/measurement_category_test.dart +++ b/test/measurements/measurement_category_test.dart @@ -76,8 +76,7 @@ void main() { test('should copyWith objects of this class', () { // arrange - final MeasurementCategory tMeasurementCategoryCopied = - MeasurementCategory( + final MeasurementCategory tMeasurementCategoryCopied = MeasurementCategory( id: 1234, name: 'Coolness', unit: 'lp', @@ -108,11 +107,9 @@ void main() { expect(result, tMeasurementEntry); }); - test('should throw a NoSuchEntryException if no MeasurementEntry was found', - () { + test('should throw a NoSuchEntryException if no MeasurementEntry was found', () { // act & assert - expect(() => tMeasurementCategory.findEntryById(83), - throwsA(isA())); + expect(() => tMeasurementCategory.findEntryById(83), throwsA(isA())); }); }); } diff --git a/test/measurements/measurement_entries_screen_test.dart b/test/measurements/measurement_entries_screen_test.dart index 2c31780f..20b9b5dc 100644 --- a/test/measurements/measurement_entries_screen_test.dart +++ b/test/measurements/measurement_entries_screen_test.dart @@ -35,18 +35,8 @@ void main() { mockMeasurementProvider = MockMeasurementProvider(); when(mockMeasurementProvider.findCategoryById(any)).thenReturn( MeasurementCategory(id: 1, name: 'body fat', unit: '%', entries: [ - MeasurementEntry( - id: 1, - category: 1, - date: DateTime(2021, 8, 1), - value: 10.2, - notes: ''), - MeasurementEntry( - id: 1, - category: 1, - date: DateTime(2021, 8, 10), - value: 18.1, - notes: 'a'), + MeasurementEntry(id: 1, category: 1, date: DateTime(2021, 8, 1), value: 10.2, notes: ''), + MeasurementEntry(id: 1, category: 1, date: DateTime(2021, 8, 10), value: 18.1, notes: 'a'), ]), ); }); @@ -74,8 +64,7 @@ void main() { ); } - testWidgets('Test the widgets on the measurement entries screen', - (WidgetTester tester) async { + testWidgets('Test the widgets on the measurement entries screen', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); @@ -88,8 +77,7 @@ void main() { expect(find.text('18.1 %'), findsNWidgets(2)); }); - testWidgets('Tests the localization of dates - EN', - (WidgetTester tester) async { + testWidgets('Tests the localization of dates - EN', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); @@ -99,8 +87,7 @@ void main() { expect(find.text('8/10/2021'), findsWidgets); }); - testWidgets('Tests the localization of dates - DE', - (WidgetTester tester) async { + testWidgets('Tests the localization of dates - DE', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen(locale: 'de')); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); diff --git a/test/measurements/measurement_entry_test.dart b/test/measurements/measurement_entry_test.dart index bf61ffa4..8c535b06 100644 --- a/test/measurements/measurement_entry_test.dart +++ b/test/measurements/measurement_entry_test.dart @@ -47,11 +47,7 @@ void main() { // act final result = tMeasurementEntry.copyWith( - id: 83, - category: 17, - date: DateTime(1960), - value: 93, - notes: 'Interesting'); + id: 83, category: 17, date: DateTime(1960), value: 93, notes: 'Interesting'); // assert expect(result, tMeasurementEntryCopied); diff --git a/test/measurements/measurement_provider_test.dart b/test/measurements/measurement_provider_test.dart index 523a87a1..68157513 100644 --- a/test/measurements/measurement_provider_test.dart +++ b/test/measurements/measurement_provider_test.dart @@ -48,15 +48,13 @@ void main() { measurementProvider = MeasurementProvider(mockWgerBaseProvider); when(mockWgerBaseProvider.makeUrl(any)).thenReturn(tCategoryUri); - when(mockWgerBaseProvider.makeUrl(any, id: anyNamed('id'))) - .thenReturn(tCategoryUri); - when(mockWgerBaseProvider.fetch(any)).thenAnswer( - (realInvocation) => Future.value(tMeasurementCategoriesMap)); + when(mockWgerBaseProvider.makeUrl(any, id: anyNamed('id'))).thenReturn(tCategoryUri); + when(mockWgerBaseProvider.fetch(any)) + .thenAnswer((realInvocation) => Future.value(tMeasurementCategoriesMap)); when(mockWgerBaseProvider.makeUrl(entryUrl, query: anyNamed('query'))) .thenReturn(tCategoryEntriesUri); - when(mockWgerBaseProvider.makeUrl(entryUrl, - id: anyNamed('id'), query: anyNamed('query'))) + when(mockWgerBaseProvider.makeUrl(entryUrl, id: anyNamed('id'), query: anyNamed('query'))) .thenReturn(tCategoryEntriesUri); when(mockWgerBaseProvider.fetch(tCategoryEntriesUri)) .thenAnswer((realInvocation) => Future.value(tMeasurementCategoryMap)); @@ -92,8 +90,7 @@ void main() { test('should throw a NoResultException if no category is found', () { // act & assert - expect(() => measurementProvider.findCategoryById(3), - throwsA(isA())); + expect(() => measurementProvider.findCategoryById(3), throwsA(isA())); }); }); @@ -133,8 +130,7 @@ void main() { await measurementProvider.fetchAndSetCategoryEntries(tCategoryId); // assert - verify(mockWgerBaseProvider - .makeUrl(entryUrl, query: {'category': tCategoryId.toString()})); + verify(mockWgerBaseProvider.makeUrl(entryUrl, query: {'category': tCategoryId.toString()})); }); test('should fetch categories entries for id', () async { @@ -180,16 +176,16 @@ void main() { MeasurementCategory(id: null, name: 'Strength', unit: 'kN'); final Map tMeasurementCategoryMap = jsonDecode(fixture('measurement/measurement_category.json')); - final Map tMeasurementCategoryMapWithoutId = jsonDecode( - fixture('measurement/measurement_category_without_id_to_json.json')); + final Map tMeasurementCategoryMapWithoutId = + jsonDecode(fixture('measurement/measurement_category_without_id_to_json.json')); final List tMeasurementCategoriesAdded = [ const MeasurementCategory(id: 2, name: 'Biceps', unit: 'cm'), const MeasurementCategory(id: 1, name: 'Strength', unit: 'kN'), const MeasurementCategory(id: 1, name: 'Strength', unit: 'kN'), ]; setUp(() { - when(mockWgerBaseProvider.post(any, any)).thenAnswer( - (realInvocation) => Future.value(tMeasurementCategoryMap)); + when(mockWgerBaseProvider.post(any, any)) + .thenAnswer((realInvocation) => Future.value(tMeasurementCategoryMap)); }); test("should post the MeasurementCategorie's Map", () async { @@ -197,8 +193,7 @@ void main() { await measurementProvider.addCategory(tMeasurementCategoryWithoutId); // assert - verify(mockWgerBaseProvider.post( - tMeasurementCategoryMapWithoutId, tCategoryUri)); + verify(mockWgerBaseProvider.post(tMeasurementCategoryMapWithoutId, tCategoryUri)); }); test( @@ -234,23 +229,20 @@ void main() { await measurementProvider.deleteCategory(tCategoryId); // assert - verify(mockWgerBaseProvider.deleteRequest( - 'measurement-category', tCategoryId)); + verify(mockWgerBaseProvider.deleteRequest('measurement-category', tCategoryId)); expect(measurementProvider.categories, tMeasurementCategoriesOneDeleted); }); test('should throw a NoSuchEntryException if no category is found', () { // act & assert - expect(() => measurementProvider.deleteCategory(83), - throwsA(isA())); + expect(() => measurementProvider.deleteCategory(83), throwsA(isA())); }); test( 'should re-add the "removed" MeasurementCategory and relay the exception on WgerHttpException', () async { // arrange - when(mockWgerBaseProvider.deleteRequest(any, any)) - .thenThrow(WgerHttpException('{}')); + when(mockWgerBaseProvider.deleteRequest(any, any)).thenThrow(WgerHttpException('{}')); // act & assert expect(() async => measurementProvider.deleteCategory(tCategoryId), @@ -262,8 +254,8 @@ void main() { group('editCategory()', () { const String tCategoryEditedName = 'Triceps'; const String tCategoryEditedUnit = 'm'; - final Map tCategoryMapEditedToJson = jsonDecode( - fixture('measurement/measurement_category_edited_to_json.json')); + final Map tCategoryMapEditedToJson = + jsonDecode(fixture('measurement/measurement_category_edited_to_json.json')); final Map tCategoryMapEdited = jsonDecode(fixture('measurement/measurement_category_edited.json')); setUp(() async { @@ -271,8 +263,7 @@ void main() { .thenAnswer((realInvocation) => Future.value(tCategoryMapEdited)); await measurementProvider.fetchAndSetCategories(); }); - test('should add the new MeasurementCategory and remove the old one', - () async { + test('should add the new MeasurementCategory and remove the old one', () async { // arrange final List tMeasurementCategoriesEdited = [ const MeasurementCategory(id: 1, name: 'Triceps', unit: 'm'), @@ -280,8 +271,7 @@ void main() { ]; // act - await measurementProvider.editCategory( - tCategoryId, tCategoryEditedName, tCategoryEditedUnit); + await measurementProvider.editCategory(tCategoryId, tCategoryEditedName, tCategoryEditedUnit); // assert expect(measurementProvider.categories, tMeasurementCategoriesEdited); @@ -290,25 +280,22 @@ void main() { test("should throw a NoSuchEntryException if category doesn't exist", () { // act & assert expect( - () async => measurementProvider.editCategory( - 83, tCategoryEditedName, tCategoryEditedUnit), + () async => + measurementProvider.editCategory(83, tCategoryEditedName, tCategoryEditedUnit), throwsA(isA())); }); test('should call api to patch the category', () async { // act - await measurementProvider.editCategory( - tCategoryId, tCategoryEditedName, tCategoryEditedUnit); + await measurementProvider.editCategory(tCategoryId, tCategoryEditedName, tCategoryEditedUnit); // assert - verify( - mockWgerBaseProvider.patch(tCategoryMapEditedToJson, tCategoryUri)); + verify(mockWgerBaseProvider.patch(tCategoryMapEditedToJson, tCategoryUri)); }); test('should keep categories list as is on WgerHttpException', () { // arrange - when(mockWgerBaseProvider.patch(any, any)) - .thenThrow(WgerHttpException('{}')); + when(mockWgerBaseProvider.patch(any, any)).thenThrow(WgerHttpException('{}')); // act & assert expect( @@ -383,8 +370,7 @@ void main() { await measurementProvider.addEntry(tMeasurementEntryWithoutId); // assert - verify(mockWgerBaseProvider.post( - measurementEntryMapWithoutId, tCategoryEntriesUri)); + verify(mockWgerBaseProvider.post(measurementEntryMapWithoutId, tCategoryEntriesUri)); }); test( @@ -409,10 +395,10 @@ void main() { value: 15.00, notes: '', ); - final Map measurementEntryMapWrongCategory = jsonDecode( - fixture('measurement/measurement_entry_wrong_category.json')); - when(mockWgerBaseProvider.post(any, any)).thenAnswer( - (realInvocation) => Future.value(measurementEntryMapWrongCategory)); + final Map measurementEntryMapWrongCategory = + jsonDecode(fixture('measurement/measurement_entry_wrong_category.json')); + when(mockWgerBaseProvider.post(any, any)) + .thenAnswer((realInvocation) => Future.value(measurementEntryMapWrongCategory)); // act & assert expect(() => measurementProvider.addEntry(tMeasurementEntryWrongCategory), @@ -443,9 +429,7 @@ void main() { .thenAnswer((realInvocation) => Future.value(Response('', 200))); }); - test( - "should remove a MeasurementEntry from the category's entries List for an id", - () async { + test("should remove a MeasurementEntry from the category's entries List for an id", () async { // act await measurementProvider.deleteEntry(tEntryId, tCategoryId); @@ -498,8 +482,7 @@ void main() { ]), const MeasurementCategory(id: 2, name: 'Biceps', unit: 'cm') ]; - when(mockWgerBaseProvider.deleteRequest(any, any)) - .thenThrow(WgerHttpException('{}')); + when(mockWgerBaseProvider.deleteRequest(any, any)).thenThrow(WgerHttpException('{}')); // act & assert expect(() async => measurementProvider.deleteEntry(tEntryId, tCategoryId), @@ -518,8 +501,7 @@ void main() { const int tEntryId = 1; const num tEntryEditedValue = 23; final DateTime tEntryEditedDate = DateTime(2021, 07, 21); - const String tEntryEditedNote = - 'I just wanted to edit this to see what happens'; + const String tEntryEditedNote = 'I just wanted to edit this to see what happens'; final Map tEntryMapEdited = jsonDecode(fixture('measurement/measurement_entry_edited.json')); setUp(() async { @@ -528,8 +510,7 @@ void main() { await measurementProvider.fetchAndSetCategories(); await measurementProvider.fetchAndSetCategoryEntries(1); }); - test('should add the new MeasurementEntry and remove the old one', - () async { + test('should add the new MeasurementEntry and remove the old one', () async { // arrange final List tMeasurementCategoriesEdited = [ MeasurementCategory(id: 1, name: 'Strength', unit: 'kN', entries: [ diff --git a/test/measurements/measurement_provider_test.mocks.dart b/test/measurements/measurement_provider_test.mocks.dart index b18f41ef..746c0bcc 100644 --- a/test/measurements/measurement_provider_test.mocks.dart +++ b/test/measurements/measurement_provider_test.mocks.dart @@ -106,8 +106,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -153,8 +152,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -179,8 +177,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -196,8 +193,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override diff --git a/test/nutrition/nutrition_provider_test.dart b/test/nutrition/nutrition_provider_test.dart index 8c344afa..8f3f4f95 100644 --- a/test/nutrition/nutrition_provider_test.dart +++ b/test/nutrition/nutrition_provider_test.dart @@ -63,12 +63,9 @@ void main() { host: 'localhost', path: 'api/v2/$diaryUrl', ); - when(mockWgerBaseProvider.makeUrl(planInfoUrl, id: anyNamed('id'))) - .thenReturn(planInfoUri); - when(mockWgerBaseProvider.makeUrl(planUrl, id: anyNamed('id'))) - .thenReturn(planUri); - when(mockWgerBaseProvider.makeUrl(diaryUrl, query: anyNamed('query'))) - .thenReturn(diaryUri); + when(mockWgerBaseProvider.makeUrl(planInfoUrl, id: anyNamed('id'))).thenReturn(planInfoUri); + when(mockWgerBaseProvider.makeUrl(planUrl, id: anyNamed('id'))).thenReturn(planUri); + when(mockWgerBaseProvider.makeUrl(diaryUrl, query: anyNamed('query'))).thenReturn(diaryUri); when(mockWgerBaseProvider.fetch(planInfoUri)).thenAnswer( (realInvocation) => Future.value(nutritionalPlanInfoResponse), ); diff --git a/test/nutrition/nutritional_diary_test.dart b/test/nutrition/nutritional_diary_test.dart index 8b128372..a1372b7d 100644 --- a/test/nutrition/nutritional_diary_test.dart +++ b/test/nutrition/nutritional_diary_test.dart @@ -32,15 +32,13 @@ void main() { supportedLocales: AppLocalizations.supportedLocales, home: SingleChildScrollView( child: Card( - child: NutritionalDiaryDetailWidget( - getNutritionalPlan(), DateTime(2021, 6, 1)), + child: NutritionalDiaryDetailWidget(getNutritionalPlan(), DateTime(2021, 6, 1)), ), ), ); } - testWidgets('Test the detail view for the nutritional plan', - (WidgetTester tester) async { + testWidgets('Test the detail view for the nutritional plan', (WidgetTester tester) async { await tester.pumpWidget(getWidget()); expect(find.byType(FlNutritionalPlanPieChartWidget), findsOneWidget); @@ -51,14 +49,11 @@ void main() { expect(find.text('18g'), findsOneWidget, reason: 'find grams of carbs'); expect(find.text('4g'), findsOneWidget, reason: 'find grams of sugar'); expect(find.text('29g'), findsOneWidget, reason: 'find grams of fat'); - expect(find.text('14g'), findsOneWidget, - reason: 'find grams of saturated fat'); + expect(find.text('14g'), findsOneWidget, reason: 'find grams of saturated fat'); expect(find.text('50g'), findsOneWidget, reason: 'find grams of fibre'); - expect(find.text('100g Water'), findsOneWidget, - reason: 'Name of ingredient'); - expect(find.text('75g Burger soup'), findsOneWidget, - reason: 'Name of ingredient'); + expect(find.text('100g Water'), findsOneWidget, reason: 'Name of ingredient'); + expect(find.text('75g Burger soup'), findsOneWidget, reason: 'Name of ingredient'); expect(find.byIcon(Icons.delete_outline), findsNWidgets(2)); }); } diff --git a/test/nutrition/nutritional_meal_form_test.dart b/test/nutrition/nutritional_meal_form_test.dart index 9d43d81c..303e291b 100644 --- a/test/nutrition/nutritional_meal_form_test.dart +++ b/test/nutrition/nutritional_meal_form_test.dart @@ -104,8 +104,7 @@ void main() { verifyNever(mockNutrition.addMeal(any, any)); }); - testWidgets('Test creating a new nutritional plan', - (WidgetTester tester) async { + testWidgets('Test creating a new nutritional plan', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen(meal2)); await tester.pumpAndSettle(); diff --git a/test/nutrition/nutritional_meal_form_test.mocks.dart b/test/nutrition/nutritional_meal_form_test.mocks.dart index 8ed74c57..a4d10af4 100644 --- a/test/nutrition/nutritional_meal_form_test.mocks.dart +++ b/test/nutrition/nutritional_meal_form_test.mocks.dart @@ -25,8 +25,7 @@ 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, @@ -36,8 +35,7 @@ class _FakeWgerBaseProvider_0 extends _i1.SmartFake ); } -class _FakeNutritionalPlan_1 extends _i1.SmartFake - implements _i3.NutritionalPlan { +class _FakeNutritionalPlan_1 extends _i1.SmartFake implements _i3.NutritionalPlan { _FakeNutritionalPlan_1( Object parent, Invocation parentInvocation, @@ -80,8 +78,7 @@ 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); } @@ -167,14 +164,12 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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, @@ -184,14 +179,12 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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, @@ -201,14 +194,12 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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, @@ -313,8 +304,7 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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], @@ -324,8 +314,7 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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], @@ -368,8 +357,7 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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], @@ -424,8 +412,7 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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_meal_item_form_test.dart b/test/nutrition/nutritional_meal_item_form_test.dart index e03bbc00..f593619c 100644 --- a/test/nutrition/nutritional_meal_item_form_test.dart +++ b/test/nutrition/nutritional_meal_item_form_test.dart @@ -51,26 +51,20 @@ void main() { var plan1 = NutritionalPlan.empty(); var meal1 = Meal(); - final Uri tUriRightCode = - Uri.parse('https://localhost/api/v2/ingredient/?code=123'); - final Uri tUriEmptyCode = - Uri.parse('https://localhost/api/v2/ingredient/?code=\"%20\"'); - final Uri tUriBadCode = - Uri.parse('https://localhost/api/v2/ingredient/?code=222'); + final Uri tUriRightCode = Uri.parse('https://localhost/api/v2/ingredient/?code=123'); + final Uri tUriEmptyCode = Uri.parse('https://localhost/api/v2/ingredient/?code=\"%20\"'); + final Uri tUriBadCode = Uri.parse('https://localhost/api/v2/ingredient/?code=222'); when(client.get(tUriRightCode, headers: anyNamed('headers'))).thenAnswer( - (_) => Future.value(http.Response( - fixture('nutrition/search_ingredient_right_code.json'), 200)), + (_) => Future.value(http.Response(fixture('nutrition/search_ingredient_right_code.json'), 200)), ); when(client.get(tUriEmptyCode, headers: anyNamed('headers'))).thenAnswer( - (_) => Future.value(http.Response( - fixture('nutrition/search_ingredient_wrong_code.json'), 200)), + (_) => Future.value(http.Response(fixture('nutrition/search_ingredient_wrong_code.json'), 200)), ); when(client.get(tUriBadCode, headers: anyNamed('headers'))).thenAnswer( - (_) => Future.value(http.Response( - fixture('nutrition/search_ingredient_wrong_code.json'), 200)), + (_) => Future.value(http.Response(fixture('nutrition/search_ingredient_wrong_code.json'), 200)), ); setUp(() { @@ -79,22 +73,16 @@ void main() { final MealItem mealItem = MealItem(ingredientId: ingredient.id, amount: 2); mockNutrition = MockNutritionPlansProvider(); - when(mockNutrition.searchIngredientWithCode('123')) - .thenAnswer((_) => Future.value(ingredient)); - when(mockNutrition.searchIngredientWithCode('')) - .thenAnswer((_) => Future.value(null)); - when(mockNutrition.searchIngredientWithCode('222')) - .thenAnswer((_) => Future.value(null)); - when(mockNutrition.searchIngredient(any)).thenAnswer((_) => Future.value( - json.decode(fixture('nutrition/ingredient_suggestions')) - as List)); + when(mockNutrition.searchIngredientWithCode('123')).thenAnswer((_) => Future.value(ingredient)); + when(mockNutrition.searchIngredientWithCode('')).thenAnswer((_) => Future.value(null)); + when(mockNutrition.searchIngredientWithCode('222')).thenAnswer((_) => Future.value(null)); + when(mockNutrition.searchIngredient(any)).thenAnswer((_) => + Future.value(json.decode(fixture('nutrition/ingredient_suggestions')) as List)); - when(mockNutrition.addMealItem(any, meal1)) - .thenAnswer((_) => Future.value(mealItem)); + when(mockNutrition.addMealItem(any, meal1)).thenAnswer((_) => Future.value(mealItem)); }); - Widget createMealItemFormScreen(Meal meal, String code, bool test, - {locale = 'en'}) { + Widget createMealItemFormScreen(Meal meal, String code, bool test, {locale = 'en'}) { final key = GlobalKey(); return ChangeNotifierProvider( @@ -117,8 +105,7 @@ void main() { ); } - testWidgets('Test the widgets on the meal item form', - (WidgetTester tester) async { + testWidgets('Test the widgets on the meal item form', (WidgetTester tester) async { await tester.pumpWidget(createMealItemFormScreen(meal1, '', true)); await tester.pumpAndSettle(); @@ -277,8 +264,7 @@ void main() { expect(find.text('Please enter a valid number'), findsOneWidget); }); - testWidgets('save ingredient with incorrect weight input type', - (WidgetTester tester) async { + testWidgets('save ingredient with incorrect weight input type', (WidgetTester tester) async { await tester.pumpWidget(createMealItemFormScreen(meal1, '123', true)); await tester.tap(find.byKey(const Key('scan-button'))); diff --git a/test/nutrition/nutritional_plan_form_test.dart b/test/nutrition/nutritional_plan_form_test.dart index 111945e5..059f1637 100644 --- a/test/nutrition/nutritional_plan_form_test.dart +++ b/test/nutrition/nutritional_plan_form_test.dart @@ -68,8 +68,7 @@ void main() { ); } - testWidgets('Test the widgets on the nutritional plan form', - (WidgetTester tester) async { + testWidgets('Test the widgets on the nutritional plan form', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen(plan1)); await tester.pumpAndSettle(); @@ -78,8 +77,7 @@ void main() { expect(find.byKey(const Key(SUBMIT_BUTTON_KEY_NAME)), findsOneWidget); }); - testWidgets('Test editing an existing nutritional plan', - (WidgetTester tester) async { + testWidgets('Test editing an existing nutritional plan', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen(plan1)); await tester.pumpAndSettle(); @@ -88,8 +86,7 @@ void main() { findsOneWidget, reason: 'Description of existing nutritional plan is filled in', ); - await tester.enterText( - find.byKey(const Key('field-description')), 'New description'); + await tester.enterText(find.byKey(const Key('field-description')), 'New description'); await tester.tap(find.byKey(const Key(SUBMIT_BUTTON_KEY_NAME))); // Correct method was called @@ -110,15 +107,12 @@ void main() { //); }); - testWidgets('Test creating a new nutritional plan', - (WidgetTester tester) async { + testWidgets('Test creating a new nutritional plan', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen(plan2)); await tester.pumpAndSettle(); - expect(find.text(''), findsOneWidget, - reason: 'New nutritional plan has no description'); - await tester.enterText( - find.byKey(const Key('field-description')), 'New cool plan'); + expect(find.text(''), findsOneWidget, reason: 'New nutritional plan has no description'); + await tester.enterText(find.byKey(const Key('field-description')), 'New cool plan'); await tester.tap(find.byKey(const Key(SUBMIT_BUTTON_KEY_NAME))); // Correct method was called @@ -127,7 +121,6 @@ void main() { // Detail page await tester.pumpAndSettle(); - expect(find.text('New cool plan'), findsOneWidget, - reason: 'Nutritional plan detail page'); + expect(find.text('New cool plan'), findsOneWidget, reason: 'Nutritional plan detail page'); }); } diff --git a/test/nutrition/nutritional_plan_form_test.mocks.dart b/test/nutrition/nutritional_plan_form_test.mocks.dart index a2b1b970..ad0fb5e1 100644 --- a/test/nutrition/nutritional_plan_form_test.mocks.dart +++ b/test/nutrition/nutritional_plan_form_test.mocks.dart @@ -25,8 +25,7 @@ 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, @@ -36,8 +35,7 @@ class _FakeWgerBaseProvider_0 extends _i1.SmartFake ); } -class _FakeNutritionalPlan_1 extends _i1.SmartFake - implements _i3.NutritionalPlan { +class _FakeNutritionalPlan_1 extends _i1.SmartFake implements _i3.NutritionalPlan { _FakeNutritionalPlan_1( Object parent, Invocation parentInvocation, @@ -80,8 +78,7 @@ 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); } @@ -167,14 +164,12 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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, @@ -184,14 +179,12 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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, @@ -201,14 +194,12 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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, @@ -313,8 +304,7 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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], @@ -324,8 +314,7 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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], @@ -368,8 +357,7 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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], @@ -424,8 +412,7 @@ class MockNutritionPlansProvider extends _i1.Mock ) 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_model_test.dart b/test/nutrition/nutritional_plan_model_test.dart index eb70e52e..8eb86cc5 100644 --- a/test/nutrition/nutritional_plan_model_test.dart +++ b/test/nutrition/nutritional_plan_model_test.dart @@ -31,21 +31,18 @@ void main() { group('model tests', () { test('Test the nutritionalValues method for nutritional plans', () { - final values = NutritionalValues.values( - 4118.75, 32.75, 347.5, 9.5, 59.0, 37.75, 52.5, 30.5); + final values = NutritionalValues.values(4118.75, 32.75, 347.5, 9.5, 59.0, 37.75, 52.5, 30.5); expect(plan.nutritionalValues, values); }); test('Test the nutritionalValues method for meals', () { final meal = plan.meals.first; - final values = NutritionalValues.values( - 518.75, 5.75, 17.5, 3.5, 29.0, 13.75, 49.5, 0.5); + final values = NutritionalValues.values(518.75, 5.75, 17.5, 3.5, 29.0, 13.75, 49.5, 0.5); expect(meal.nutritionalValues, values); }); test('Test that the getter returns all meal items for a plan', () { - expect( - plan.allMealItems, plan.meals[0].mealItems + plan.meals[1].mealItems); + expect(plan.allMealItems, plan.meals[0].mealItems + plan.meals[1].mealItems); }); }); } diff --git a/test/nutrition/nutritional_plan_screen_test.dart b/test/nutrition/nutritional_plan_screen_test.dart index 6dcf8c23..af66d005 100644 --- a/test/nutrition/nutritional_plan_screen_test.dart +++ b/test/nutrition/nutritional_plan_screen_test.dart @@ -67,8 +67,7 @@ void main() { ); } - testWidgets('Test the widgets on the nutritional plan screen', - (WidgetTester tester) async { + testWidgets('Test the widgets on the nutritional plan screen', (WidgetTester tester) async { await tester.pumpWidget(createNutritionalPlan()); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); @@ -85,8 +84,7 @@ void main() { expect(find.byType(FlNutritionalDiaryChartWidget), findsNothing); }); - testWidgets('Tests the localization of times - EN', - (WidgetTester tester) async { + testWidgets('Tests the localization of times - EN', (WidgetTester tester) async { await tester.pumpWidget(createNutritionalPlan()); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); @@ -94,8 +92,7 @@ void main() { expect(find.text('5:00 PM'), findsOneWidget); }); - testWidgets('Tests the localization of times - DE', - (WidgetTester tester) async { + testWidgets('Tests the localization of times - DE', (WidgetTester tester) async { await tester.pumpWidget(createNutritionalPlan(locale: 'de')); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); diff --git a/test/nutrition/nutritional_plan_screen_test.mocks.dart b/test/nutrition/nutritional_plan_screen_test.mocks.dart index da991af9..eee84b13 100644 --- a/test/nutrition/nutritional_plan_screen_test.mocks.dart +++ b/test/nutrition/nutritional_plan_screen_test.mocks.dart @@ -65,8 +65,7 @@ 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, @@ -121,8 +120,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -168,8 +166,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -194,8 +191,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -211,8 +207,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -277,8 +272,7 @@ class MockAuthProvider extends _i1.Mock implements _i2.AuthProvider { ); @override - set applicationVersion(_i6.PackageInfo? _applicationVersion) => - super.noSuchMethod( + set applicationVersion(_i6.PackageInfo? _applicationVersion) => super.noSuchMethod( Invocation.setter( #applicationVersion, _applicationVersion, @@ -410,8 +404,7 @@ class MockAuthProvider extends _i1.Mock implements _i2.AuthProvider { #serverUrl: serverUrl, }, ), - returnValue: _i5.Future>.value( - {}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -429,8 +422,7 @@ class MockAuthProvider extends _i1.Mock implements _i2.AuthProvider { serverUrl, ], ), - returnValue: _i5.Future>.value( - {}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -711,14 +703,12 @@ class MockClient extends _i1.Mock implements _i3.Client { ) 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.dart b/test/nutrition/nutritional_plans_screen_test.dart index 668c390c..b7fd34dc 100644 --- a/test/nutrition/nutritional_plans_screen_test.dart +++ b/test/nutrition/nutritional_plans_screen_test.dart @@ -81,8 +81,7 @@ void main() { ); } - testWidgets('Test the widgets on the nutritional plans screen', - (WidgetTester tester) async { + testWidgets('Test the widgets on the nutritional plans screen', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); //debugDumpApp(); @@ -91,8 +90,7 @@ void main() { expect(find.byType(ListTile), findsNWidgets(2)); }); - testWidgets('Test deleting an item by dragging the dismissible', - (WidgetTester tester) async { + testWidgets('Test deleting an item by dragging the dismissible', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); await tester.drag(find.byKey(const Key('1')), const Offset(-500.0, 0.0)); @@ -107,8 +105,7 @@ void main() { expect(find.byType(ListTile), findsOneWidget); }); - testWidgets('Test the form on the nutritional plan screen', - (WidgetTester tester) async { + testWidgets('Test the form on the nutritional plan screen', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); expect(find.byType(PlanForm), findsNothing); @@ -117,16 +114,14 @@ void main() { expect(find.byType(PlanForm), findsOneWidget); }); - testWidgets('Tests the localization of dates - EN', - (WidgetTester tester) async { + testWidgets('Tests the localization of dates - EN', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); expect(find.text('1/1/2021'), findsOneWidget); expect(find.text('1/10/2021'), findsOneWidget); }); - testWidgets('Tests the localization of dates - DE', - (WidgetTester tester) async { + testWidgets('Tests the localization of dates - DE', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen(locale: 'de')); expect(find.text('1.1.2021'), findsOneWidget); diff --git a/test/nutrition/nutritional_plans_screen_test.mocks.dart b/test/nutrition/nutritional_plans_screen_test.mocks.dart index 2cee1227..4cda1a3d 100644 --- a/test/nutrition/nutritional_plans_screen_test.mocks.dart +++ b/test/nutrition/nutritional_plans_screen_test.mocks.dart @@ -65,8 +65,7 @@ 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, @@ -112,8 +111,7 @@ class MockAuthProvider extends _i1.Mock implements _i3.AuthProvider { ); @override - set applicationVersion(_i4.PackageInfo? _applicationVersion) => - super.noSuchMethod( + set applicationVersion(_i4.PackageInfo? _applicationVersion) => super.noSuchMethod( Invocation.setter( #applicationVersion, _applicationVersion, @@ -245,8 +243,7 @@ class MockAuthProvider extends _i1.Mock implements _i3.AuthProvider { #serverUrl: serverUrl, }, ), - returnValue: _i5.Future>.value( - {}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -264,8 +261,7 @@ class MockAuthProvider extends _i1.Mock implements _i3.AuthProvider { serverUrl, ], ), - returnValue: _i5.Future>.value( - {}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -388,8 +384,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i7.WgerBaseProvider { ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -435,8 +430,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i7.WgerBaseProvider { #fetch, [uri], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -461,8 +455,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i7.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -478,8 +471,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i7.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -711,14 +703,12 @@ class MockClient extends _i1.Mock implements _i2.Client { ) 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/nutrition/nutritional_values_class_test.dart b/test/nutrition/nutritional_values_class_test.dart index f6ea1a68..495f95fe 100644 --- a/test/nutrition/nutritional_values_class_test.dart +++ b/test/nutrition/nutritional_values_class_test.dart @@ -27,12 +27,9 @@ void main() { group('Test the NutritionalValues class', () { setUp(() { - values1 = NutritionalValues.values( - 4000, 30.5, 340.5, 11.7, 41.0, 31.75, 21.3, 33.3); - values2 = NutritionalValues.values( - 4000, 30.5, 340.5, 11.7, 41.0, 31.75, 21.3, 33.3); - values3 = NutritionalValues.values( - 5000, 30.5, 340.5, 11.7, 41.0, 31.75, 21.3, 33.3); + values1 = NutritionalValues.values(4000, 30.5, 340.5, 11.7, 41.0, 31.75, 21.3, 33.3); + values2 = NutritionalValues.values(4000, 30.5, 340.5, 11.7, 41.0, 31.75, 21.3, 33.3); + values3 = NutritionalValues.values(5000, 30.5, 340.5, 11.7, 41.0, 31.75, 21.3, 33.3); values4 = NutritionalValues.values(1000, 10, 100, 1, 10.0, 10, 10, 10); }); @@ -43,15 +40,13 @@ void main() { test('Test the plus operator', () { final values5 = values1 + values4; - final result = NutritionalValues.values( - 5000, 40.5, 440.5, 12.7, 51.0, 41.75, 31.3, 43.3); + final result = NutritionalValues.values(5000, 40.5, 440.5, 12.7, 51.0, 41.75, 31.3, 43.3); expect(values5, result); }); test('Test the add method', () { values1.add(values4); - final result = NutritionalValues.values( - 5000, 40.5, 440.5, 12.7, 51.0, 41.75, 31.3, 43.3); + final result = NutritionalValues.values(5000, 40.5, 440.5, 12.7, 51.0, 41.75, 31.3, 43.3); expect(values1, result); }); }); diff --git a/test/other/base_provider_test.dart b/test/other/base_provider_test.dart index b5129318..e416e1b8 100644 --- a/test/other/base_provider_test.dart +++ b/test/other/base_provider_test.dart @@ -50,20 +50,16 @@ void main() { provider.makeUrl('endpoint', query: {'a': '2', 'b': 'c'}), ); expect( - Uri.https( - 'localhost', '/api/v2/endpoint/log_data/', {'a': '2', 'b': 'c'}), - provider.makeUrl('endpoint', - objectMethod: 'log_data', query: {'a': '2', 'b': 'c'}), + Uri.https('localhost', '/api/v2/endpoint/log_data/', {'a': '2', 'b': 'c'}), + provider.makeUrl('endpoint', objectMethod: 'log_data', query: {'a': '2', 'b': 'c'}), ); expect( Uri.https('localhost', '/api/v2/endpoint/42/', {'a': '2', 'b': 'c'}), provider.makeUrl('endpoint', id: 42, query: {'a': '2', 'b': 'c'}), ); expect( - Uri.https( - 'localhost', '/api/v2/endpoint/42/log_data/', {'a': '2', 'b': 'c'}), - provider.makeUrl('endpoint', - id: 42, objectMethod: 'log_data', query: {'a': '2', 'b': 'c'}), + Uri.https('localhost', '/api/v2/endpoint/42/log_data/', {'a': '2', 'b': 'c'}), + provider.makeUrl('endpoint', id: 42, objectMethod: 'log_data', query: {'a': '2', 'b': 'c'}), ); }); @@ -85,26 +81,20 @@ void main() { provider.makeUrl('endpoint', id: 5, objectMethod: 'log_data'), ); expect( - Uri.https( - 'example.com', '/wger-url/api/v2/endpoint/', {'a': '2', 'b': 'c'}), + Uri.https('example.com', '/wger-url/api/v2/endpoint/', {'a': '2', 'b': 'c'}), provider.makeUrl('endpoint', query: {'a': '2', 'b': 'c'}), ); expect( - Uri.https('example.com', '/wger-url/api/v2/endpoint/log_data/', - {'a': '2', 'b': 'c'}), - provider.makeUrl('endpoint', - objectMethod: 'log_data', query: {'a': '2', 'b': 'c'}), + Uri.https('example.com', '/wger-url/api/v2/endpoint/log_data/', {'a': '2', 'b': 'c'}), + provider.makeUrl('endpoint', objectMethod: 'log_data', query: {'a': '2', 'b': 'c'}), ); expect( - Uri.https('example.com', '/wger-url/api/v2/endpoint/42/', - {'a': '2', 'b': 'c'}), + Uri.https('example.com', '/wger-url/api/v2/endpoint/42/', {'a': '2', 'b': 'c'}), provider.makeUrl('endpoint', id: 42, query: {'a': '2', 'b': 'c'}), ); expect( - Uri.https('example.com', '/wger-url/api/v2/endpoint/42/log_data/', - {'a': '2', 'b': 'c'}), - provider.makeUrl('endpoint', - id: 42, objectMethod: 'log_data', query: {'a': '2', 'b': 'c'}), + Uri.https('example.com', '/wger-url/api/v2/endpoint/42/log_data/', {'a': '2', 'b': 'c'}), + provider.makeUrl('endpoint', id: 42, objectMethod: 'log_data', query: {'a': '2', 'b': 'c'}), ); }); }); @@ -142,8 +132,7 @@ void main() { .thenAnswer((_) => Future.value(response3)); // Act - final WgerBaseProvider provider = - WgerBaseProvider(testAuthProvider, mockHttpClient); + final WgerBaseProvider provider = WgerBaseProvider(testAuthProvider, mockHttpClient); final data = await provider.fetchPaginated(paginationUri1); // Assert diff --git a/test/other/base_provider_test.mocks.dart b/test/other/base_provider_test.mocks.dart index aeb648c7..b9f7770e 100644 --- a/test/other/base_provider_test.mocks.dart +++ b/test/other/base_provider_test.mocks.dart @@ -31,8 +31,7 @@ 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, @@ -245,14 +244,12 @@ class MockClient extends _i1.Mock implements _i2.Client { ) 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/user/provider_test.mocks.dart b/test/user/provider_test.mocks.dart index d6dc8d6e..3f8bd77a 100644 --- a/test/user/provider_test.mocks.dart +++ b/test/user/provider_test.mocks.dart @@ -106,8 +106,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -153,8 +152,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -179,8 +177,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -196,8 +193,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override diff --git a/test/utils.dart b/test/utils.dart index 798e8031..9244b4da 100644 --- a/test/utils.dart +++ b/test/utils.dart @@ -29,5 +29,4 @@ final AuthProvider testAuthProvider = AuthProvider(MockClient(), false) // Test Exercises provider final mockBaseProvider = MockWgerBaseProvider(); -final ExercisesProvider testExercisesProvider = - ExercisesProvider(mockBaseProvider); +final ExercisesProvider testExercisesProvider = ExercisesProvider(mockBaseProvider); diff --git a/test/weight/weight_model_test.dart b/test/weight/weight_model_test.dart index 05313b99..1a3698f8 100644 --- a/test/weight/weight_model_test.dart +++ b/test/weight/weight_model_test.dart @@ -21,21 +21,15 @@ import 'package:wger/models/body_weight/weight_entry.dart'; void main() { group('fetchPost', () { - test('Test that the weight entries are correctly converted to json', - () async { - WeightEntry weightEntry = - WeightEntry(id: 1, weight: 80, date: DateTime(2020, 12, 31)); - expect(weightEntry.toJson(), - {'id': 1, 'weight': '80', 'date': '2020-12-31'}); + test('Test that the weight entries are correctly converted to json', () async { + WeightEntry weightEntry = WeightEntry(id: 1, weight: 80, date: DateTime(2020, 12, 31)); + expect(weightEntry.toJson(), {'id': 1, 'weight': '80', 'date': '2020-12-31'}); - weightEntry = - WeightEntry(id: 2, weight: 70.2, date: DateTime(2020, 12, 01)); - expect(weightEntry.toJson(), - {'id': 2, 'weight': '70.2', 'date': '2020-12-01'}); + weightEntry = WeightEntry(id: 2, weight: 70.2, date: DateTime(2020, 12, 01)); + expect(weightEntry.toJson(), {'id': 2, 'weight': '70.2', 'date': '2020-12-01'}); }); - test('Test that the weight entries are correctly converted from json', - () async { + test('Test that the weight entries are correctly converted from json', () async { final WeightEntry weightEntryObj = WeightEntry(id: 1, weight: 80, date: DateTime(2020, 12, 31)); final WeightEntry weightEntry = WeightEntry.fromJson({ @@ -53,8 +47,7 @@ void main() { test('Test the individual values from the model', () { WeightEntry _weightModel; //_weightModel = WeightEntry(); - _weightModel = - WeightEntry(id: 1, weight: 80, date: DateTime(2020, 10, 01)); + _weightModel = WeightEntry(id: 1, weight: 80, date: DateTime(2020, 10, 01)); expect(_weightModel.id, 1); expect(_weightModel.weight, 80); diff --git a/test/weight/weight_provider_test.dart b/test/weight/weight_provider_test.dart index ccb52bf9..6f4dccad 100644 --- a/test/weight/weight_provider_test.dart +++ b/test/weight/weight_provider_test.dart @@ -44,8 +44,7 @@ void main() { host: 'localhost', path: 'api/v2/weightentry/', ); - when(mockBaseProvider.makeUrl(any, query: anyNamed('query'))) - .thenReturn(uri); + when(mockBaseProvider.makeUrl(any, query: anyNamed('query'))).thenReturn(uri); final Map weightEntries = jsonDecode( fixture('weight/weight_entries.json'), ); @@ -70,17 +69,13 @@ void main() { host: 'localhost', path: 'api/v2/weightentry/', ); - when(mockBaseProvider.makeUrl(any, query: anyNamed('query'))) - .thenReturn(uri); - when(mockBaseProvider - .post({'id': null, 'weight': '80', 'date': '2021-01-01'}, uri)) - .thenAnswer((_) => - Future.value({'id': 25, 'date': '2021-01-01', 'weight': '80'})); + when(mockBaseProvider.makeUrl(any, query: anyNamed('query'))).thenReturn(uri); + when(mockBaseProvider.post({'id': null, 'weight': '80', 'date': '2021-01-01'}, uri)) + .thenAnswer((_) => Future.value({'id': 25, 'date': '2021-01-01', 'weight': '80'})); // Act final BodyWeightProvider provider = BodyWeightProvider(mockBaseProvider); - final WeightEntry weightEntry = - WeightEntry(date: DateTime(2021, 1, 1), weight: 80); + final WeightEntry weightEntry = WeightEntry(date: DateTime(2021, 1, 1), weight: 80); final WeightEntry weightEntryNew = await provider.addEntry(weightEntry); // Assert @@ -96,11 +91,9 @@ void main() { host: 'localhost', path: 'api/v2/weightentry/4/', ); - when(mockBaseProvider.makeUrl(any, query: anyNamed('query'))) - .thenReturn(uri); - when(mockBaseProvider.deleteRequest('weightentry', 4)).thenAnswer((_) => - Future.value(Response( - "{'id': 4, 'date': '2021-01-01', 'weight': '80'}", 204))); + when(mockBaseProvider.makeUrl(any, query: anyNamed('query'))).thenReturn(uri); + when(mockBaseProvider.deleteRequest('weightentry', 4)).thenAnswer( + (_) => Future.value(Response("{'id': 4, 'date': '2021-01-01', 'weight': '80'}", 204))); // DELETE the data from the server final BodyWeightProvider provider = BodyWeightProvider(mockBaseProvider); diff --git a/test/weight/weight_provider_test.mocks.dart b/test/weight/weight_provider_test.mocks.dart index 352c53ad..8d12e498 100644 --- a/test/weight/weight_provider_test.mocks.dart +++ b/test/weight/weight_provider_test.mocks.dart @@ -106,8 +106,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -153,8 +152,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -179,8 +177,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -196,8 +193,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override diff --git a/test/weight/weight_screen_test.dart b/test/weight/weight_screen_test.dart index aa626c6d..10bd75bd 100644 --- a/test/weight/weight_screen_test.dart +++ b/test/weight/weight_screen_test.dart @@ -53,8 +53,7 @@ void main() { ); } - testWidgets('Test the widgets on the body weight screen', - (WidgetTester tester) async { + testWidgets('Test the widgets on the body weight screen', (WidgetTester tester) async { await tester.pumpWidget(createWeightScreen()); expect(find.text('Weight'), findsOneWidget); @@ -63,8 +62,7 @@ void main() { expect(find.byType(ListTile), findsNWidgets(2)); }); - testWidgets('Test deleting an item by dragging the dismissible', - (WidgetTester tester) async { + testWidgets('Test deleting an item by dragging the dismissible', (WidgetTester tester) async { await tester.pumpWidget(createWeightScreen()); await tester.drag(find.byKey(const Key('1')), const Offset(-500.0, 0.0)); @@ -73,8 +71,7 @@ void main() { expect(find.byType(ListTile), findsOneWidget); }); - testWidgets('Test the form on the body weight screen', - (WidgetTester tester) async { + testWidgets('Test the form on the body weight screen', (WidgetTester tester) async { await tester.pumpWidget(createWeightScreen()); expect(find.byType(WeightForm), findsNothing); @@ -83,8 +80,7 @@ void main() { expect(find.byType(WeightForm), findsOneWidget); }); - testWidgets('Tests the localization of dates - EN', - (WidgetTester tester) async { + testWidgets('Tests the localization of dates - EN', (WidgetTester tester) async { await tester.pumpWidget(createWeightScreen()); // One in the entries list, one in the chart @@ -92,8 +88,7 @@ void main() { expect(find.text('1/10/2021'), findsOneWidget); }); - testWidgets('Tests the localization of dates - DE', - (WidgetTester tester) async { + testWidgets('Tests the localization of dates - DE', (WidgetTester tester) async { await tester.pumpWidget(createWeightScreen(locale: 'de')); expect(find.text('1.1.2021'), findsOneWidget); diff --git a/test/weight/weight_screen_test.mocks.dart b/test/weight/weight_screen_test.mocks.dart index a63186b3..f53b8c2f 100644 --- a/test/weight/weight_screen_test.mocks.dart +++ b/test/weight/weight_screen_test.mocks.dart @@ -22,8 +22,7 @@ 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, @@ -46,8 +45,7 @@ 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); } @@ -107,8 +105,7 @@ class MockBodyWeightProvider extends _i1.Mock ) 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?); @@ -119,13 +116,11 @@ class MockBodyWeightProvider extends _i1.Mock #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/gym_mode_screen_test.dart b/test/workout/gym_mode_screen_test.dart index 503e6273..54efa024 100644 --- a/test/workout/gym_mode_screen_test.dart +++ b/test/workout/gym_mode_screen_test.dart @@ -74,8 +74,7 @@ void main() { ); } - testWidgets('Test the widgets on the gym mode screen', - (WidgetTester tester) async { + testWidgets('Test the widgets on the gym mode screen', (WidgetTester tester) async { when(mockExerciseProvider.findExerciseBaseById(1)).thenReturn(bases[0]); when(mockExerciseProvider.findExerciseBaseById(6)).thenReturn(bases[5]); @@ -115,12 +114,10 @@ void main() { expect(find.text('Bench press'), findsOneWidget); expect(find.byType(LogPage), findsOneWidget); expect(find.byType(Form), findsOneWidget); - expect(find.byType(ListTile), findsNWidgets(3), - reason: 'Two logs and the switch tile'); + expect(find.byType(ListTile), findsNWidgets(3), reason: 'Two logs and the switch tile'); expect(find.text('10 × 10 kg (1.5 RiR)'), findsOneWidget); expect(find.text('12 × 10 kg (2 RiR)'), findsOneWidget); - expect(find.text('Make sure to warm up'), findsOneWidget, - reason: 'Set comment'); + expect(find.text('Make sure to warm up'), findsOneWidget, reason: 'Set comment'); expect(find.byIcon(Icons.close), findsOneWidget); expect(find.byIcon(Icons.menu), findsOneWidget); expect(find.byIcon(Icons.chevron_left), findsOneWidget); diff --git a/test/workout/gym_mode_screen_test.mocks.dart b/test/workout/gym_mode_screen_test.mocks.dart index b32f8587..033e344e 100644 --- a/test/workout/gym_mode_screen_test.mocks.dart +++ b/test/workout/gym_mode_screen_test.mocks.dart @@ -68,8 +68,7 @@ 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, @@ -89,8 +88,7 @@ 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, @@ -175,8 +173,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -222,8 +219,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: - _i10.Future>.value({}), + returnValue: _i10.Future>.value({}), ) as _i10.Future>); @override @@ -248,8 +244,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i10.Future>.value({}), + returnValue: _i10.Future>.value({}), ) as _i10.Future>); @override @@ -265,8 +260,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i10.Future>.value({}), + returnValue: _i10.Future>.value({}), ) as _i10.Future>); @override @@ -313,8 +307,7 @@ 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, @@ -329,8 +322,7 @@ class MockExercisesProvider extends _i1.Mock implements _i11.ExercisesProvider { ) 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, @@ -339,8 +331,7 @@ class MockExercisesProvider extends _i1.Mock implements _i11.ExercisesProvider { ); @override - Map> get exerciseBasesByVariation => - (super.noSuchMethod( + Map> get exerciseBasesByVariation => (super.noSuchMethod( Invocation.getter(#exerciseBasesByVariation), returnValue: >{}, ) as Map>); @@ -559,8 +550,7 @@ class MockExercisesProvider extends _i1.Mock implements _i11.ExercisesProvider { ) 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], @@ -575,8 +565,7 @@ 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], @@ -625,8 +614,7 @@ 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 diff --git a/test/workout/plate_calculator_test.dart b/test/workout/plate_calculator_test.dart index 84927f53..e1150406 100644 --- a/test/workout/plate_calculator_test.dart +++ b/test/workout/plate_calculator_test.dart @@ -25,10 +25,8 @@ void main() { test('Regular weights', () async { expect(plateCalculator(40, BAR_WEIGHT, AVAILABLE_PLATES), [10]); expect(plateCalculator(100, BAR_WEIGHT, AVAILABLE_PLATES), [15, 15, 10]); - expect(plateCalculator(102.5, BAR_WEIGHT, AVAILABLE_PLATES), - [15, 15, 10, 1.25]); - expect( - plateCalculator(140, BAR_WEIGHT, AVAILABLE_PLATES), [15, 15, 15, 15]); + expect(plateCalculator(102.5, BAR_WEIGHT, AVAILABLE_PLATES), [15, 15, 10, 1.25]); + expect(plateCalculator(140, BAR_WEIGHT, AVAILABLE_PLATES), [15, 15, 15, 15]); expect(plateCalculator(45, BAR_WEIGHT, AVAILABLE_PLATES), [10, 2.5]); expect(plateCalculator(85, BAR_WEIGHT, AVAILABLE_PLATES), [15, 15, 2.5]); }); diff --git a/test/workout/repetition_unit_form_widget_test.dart b/test/workout/repetition_unit_form_widget_test.dart index c19a4297..61664d3a 100644 --- a/test/workout/repetition_unit_form_widget_test.dart +++ b/test/workout/repetition_unit_form_widget_test.dart @@ -52,8 +52,7 @@ void main() { setUp(() { mockWorkoutPlans = MockWorkoutPlansProvider(); - when(mockWorkoutPlans.repetitionUnits) - .thenAnswer((_) => [unit1, unit2, unit3]); + when(mockWorkoutPlans.repetitionUnits).thenAnswer((_) => [unit1, unit2, unit3]); }); Widget createHomeScreen() { @@ -87,8 +86,7 @@ void main() { expect(find.text('this is repetition number 3'), findsWidgets); }); - testWidgets('Test that the correct units are set after selection', - (WidgetTester tester) async { + testWidgets('Test that the correct units are set after selection', (WidgetTester tester) async { // arrange await tester.pumpWidget(createHomeScreen()); await tester.pump(); diff --git a/test/workout/repetition_unit_form_widget_test.mocks.dart b/test/workout/repetition_unit_form_widget_test.mocks.dart index 07ecf14b..95658806 100644 --- a/test/workout/repetition_unit_form_widget_test.mocks.dart +++ b/test/workout/repetition_unit_form_widget_test.mocks.dart @@ -31,8 +31,7 @@ import 'package:wger/providers/workout_plans.dart' as _i11; // 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, @@ -52,8 +51,7 @@ class _FakeWeightUnit_1 extends _i1.SmartFake implements _i3.WeightUnit { ); } -class _FakeRepetitionUnit_2 extends _i1.SmartFake - implements _i4.RepetitionUnit { +class _FakeRepetitionUnit_2 extends _i1.SmartFake implements _i4.RepetitionUnit { _FakeRepetitionUnit_2( Object parent, Invocation parentInvocation, @@ -103,8 +101,7 @@ class _FakeSetting_6 extends _i1.SmartFake implements _i8.Setting { ); } -class _FakeWorkoutSession_7 extends _i1.SmartFake - implements _i9.WorkoutSession { +class _FakeWorkoutSession_7 extends _i1.SmartFake implements _i9.WorkoutSession { _FakeWorkoutSession_7( Object parent, Invocation parentInvocation, @@ -127,8 +124,7 @@ class _FakeLog_8 extends _i1.SmartFake implements _i10.Log { /// A class which mocks [WorkoutPlansProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockWorkoutPlansProvider extends _i1.Mock - implements _i11.WorkoutPlansProvider { +class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProvider { MockWorkoutPlansProvider() { _i1.throwOnMissingStub(this); } @@ -265,8 +261,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future); @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => - (super.noSuchMethod( + _i12.Future<_i5.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => (super.noSuchMethod( Invocation.method( #fetchAndSetPlanSparse, [planId], @@ -281,8 +276,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future<_i5.WorkoutPlan>); @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => - (super.noSuchMethod( + _i12.Future<_i5.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => (super.noSuchMethod( Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], @@ -297,8 +291,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future<_i5.WorkoutPlan>); @override - _i12.Future<_i5.WorkoutPlan> addWorkout(_i5.WorkoutPlan? workout) => - (super.noSuchMethod( + _i12.Future<_i5.WorkoutPlan> addWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( Invocation.method( #addWorkout, [workout], @@ -313,8 +306,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future<_i5.WorkoutPlan>); @override - _i12.Future editWorkout(_i5.WorkoutPlan? workout) => - (super.noSuchMethod( + _i12.Future editWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( Invocation.method( #editWorkout, [workout], @@ -346,8 +338,7 @@ class MockWorkoutPlansProvider extends _i1.Mock base, ], ), - returnValue: - _i12.Future>.value({}), + returnValue: _i12.Future>.value({}), ) as _i12.Future>); @override @@ -467,8 +458,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future>); @override - _i12.Future fetchComputedSettings(_i7.Set? workoutSet) => - (super.noSuchMethod( + _i12.Future fetchComputedSettings(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( #fetchComputedSettings, [workoutSet], @@ -504,8 +494,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future); @override - _i12.Future<_i8.Setting> addSetting(_i8.Setting? workoutSetting) => - (super.noSuchMethod( + _i12.Future<_i8.Setting> addSetting(_i8.Setting? workoutSetting) => (super.noSuchMethod( Invocation.method( #addSetting, [workoutSetting], @@ -529,14 +518,12 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future); @override - _i12.Future<_i9.WorkoutSession> addSession(_i9.WorkoutSession? session) => - (super.noSuchMethod( + _i12.Future<_i9.WorkoutSession> addSession(_i9.WorkoutSession? session) => (super.noSuchMethod( Invocation.method( #addSession, [session], ), - returnValue: - _i12.Future<_i9.WorkoutSession>.value(_FakeWorkoutSession_7( + returnValue: _i12.Future<_i9.WorkoutSession>.value(_FakeWorkoutSession_7( this, Invocation.method( #addSession, diff --git a/test/workout/weight_unit_form_widget_test.dart b/test/workout/weight_unit_form_widget_test.dart index 188df161..eb051354 100644 --- a/test/workout/weight_unit_form_widget_test.dart +++ b/test/workout/weight_unit_form_widget_test.dart @@ -87,8 +87,7 @@ void main() { expect(find.text('plates'), findsWidgets); }); - testWidgets('Test that the correct units are set after selection', - (WidgetTester tester) async { + testWidgets('Test that the correct units are set after selection', (WidgetTester tester) async { // arrange await tester.pumpWidget(createHomeScreen()); await tester.pump(); diff --git a/test/workout/weight_unit_form_widget_test.mocks.dart b/test/workout/weight_unit_form_widget_test.mocks.dart index 7dacae9e..2bb2c28a 100644 --- a/test/workout/weight_unit_form_widget_test.mocks.dart +++ b/test/workout/weight_unit_form_widget_test.mocks.dart @@ -22,8 +22,7 @@ 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, @@ -46,8 +45,7 @@ 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); } @@ -107,8 +105,7 @@ class MockBodyWeightProvider extends _i1.Mock ) 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?); @@ -119,13 +116,11 @@ class MockBodyWeightProvider extends _i1.Mock #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/workout/workout_day_form_test.dart index 9098c55b..99e321e9 100644 --- a/test/workout/workout_day_form_test.dart +++ b/test/workout/workout_day_form_test.dart @@ -58,8 +58,7 @@ void main() { ); } - testWidgets('Test the widgets on the DayFormWidget', - (WidgetTester tester) async { + testWidgets('Test the widgets on the DayFormWidget', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); await tester.pumpAndSettle(); @@ -69,15 +68,13 @@ void main() { }); testWidgets('Test creating a new day', (WidgetTester tester) async { - when(mockWorkoutPlans.addDay(any, any)) - .thenAnswer((_) => Future.value(Day())); + when(mockWorkoutPlans.addDay(any, any)).thenAnswer((_) => Future.value(Day())); await tester.pumpWidget(createHomeScreen()); await tester.pumpAndSettle(); expect(find.text(''), findsOneWidget, reason: 'New day has no description'); - await tester.enterText( - find.byKey(const Key('field-description')), 'Leg day!'); + await tester.enterText(find.byKey(const Key('field-description')), 'Leg day!'); await tester.tap(find.byKey(const Key('field-checkbox-1'))); await tester.tap(find.byKey(const Key(SUBMIT_BUTTON_KEY_NAME))); @@ -88,8 +85,7 @@ void main() { //verify(mockObserver.didPop(any, any)); }); - testWidgets('Tests the localization of days - EN', - (WidgetTester tester) async { + testWidgets('Tests the localization of days - EN', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); expect(find.text('Monday'), findsOneWidget); @@ -97,8 +93,7 @@ void main() { expect(find.text('Thursday'), findsOneWidget); }); - testWidgets('Tests the localization of days - DE', - (WidgetTester tester) async { + testWidgets('Tests the localization of days - DE', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen(locale: 'de')); expect(find.text('Montag'), findsOneWidget); diff --git a/test/workout/workout_day_form_test.mocks.dart b/test/workout/workout_day_form_test.mocks.dart index c147b84f..9811b312 100644 --- a/test/workout/workout_day_form_test.mocks.dart +++ b/test/workout/workout_day_form_test.mocks.dart @@ -31,8 +31,7 @@ import 'package:wger/providers/workout_plans.dart' as _i11; // 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, @@ -52,8 +51,7 @@ class _FakeWeightUnit_1 extends _i1.SmartFake implements _i3.WeightUnit { ); } -class _FakeRepetitionUnit_2 extends _i1.SmartFake - implements _i4.RepetitionUnit { +class _FakeRepetitionUnit_2 extends _i1.SmartFake implements _i4.RepetitionUnit { _FakeRepetitionUnit_2( Object parent, Invocation parentInvocation, @@ -103,8 +101,7 @@ class _FakeSetting_6 extends _i1.SmartFake implements _i8.Setting { ); } -class _FakeWorkoutSession_7 extends _i1.SmartFake - implements _i9.WorkoutSession { +class _FakeWorkoutSession_7 extends _i1.SmartFake implements _i9.WorkoutSession { _FakeWorkoutSession_7( Object parent, Invocation parentInvocation, @@ -127,8 +124,7 @@ class _FakeLog_8 extends _i1.SmartFake implements _i10.Log { /// A class which mocks [WorkoutPlansProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockWorkoutPlansProvider extends _i1.Mock - implements _i11.WorkoutPlansProvider { +class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProvider { MockWorkoutPlansProvider() { _i1.throwOnMissingStub(this); } @@ -265,8 +261,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future); @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => - (super.noSuchMethod( + _i12.Future<_i5.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => (super.noSuchMethod( Invocation.method( #fetchAndSetPlanSparse, [planId], @@ -281,8 +276,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future<_i5.WorkoutPlan>); @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => - (super.noSuchMethod( + _i12.Future<_i5.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => (super.noSuchMethod( Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], @@ -297,8 +291,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future<_i5.WorkoutPlan>); @override - _i12.Future<_i5.WorkoutPlan> addWorkout(_i5.WorkoutPlan? workout) => - (super.noSuchMethod( + _i12.Future<_i5.WorkoutPlan> addWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( Invocation.method( #addWorkout, [workout], @@ -313,8 +306,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future<_i5.WorkoutPlan>); @override - _i12.Future editWorkout(_i5.WorkoutPlan? workout) => - (super.noSuchMethod( + _i12.Future editWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( Invocation.method( #editWorkout, [workout], @@ -346,8 +338,7 @@ class MockWorkoutPlansProvider extends _i1.Mock base, ], ), - returnValue: - _i12.Future>.value({}), + returnValue: _i12.Future>.value({}), ) as _i12.Future>); @override @@ -467,8 +458,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future>); @override - _i12.Future fetchComputedSettings(_i7.Set? workoutSet) => - (super.noSuchMethod( + _i12.Future fetchComputedSettings(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( #fetchComputedSettings, [workoutSet], @@ -504,8 +494,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future); @override - _i12.Future<_i8.Setting> addSetting(_i8.Setting? workoutSetting) => - (super.noSuchMethod( + _i12.Future<_i8.Setting> addSetting(_i8.Setting? workoutSetting) => (super.noSuchMethod( Invocation.method( #addSetting, [workoutSetting], @@ -529,14 +518,12 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future); @override - _i12.Future<_i9.WorkoutSession> addSession(_i9.WorkoutSession? session) => - (super.noSuchMethod( + _i12.Future<_i9.WorkoutSession> addSession(_i9.WorkoutSession? session) => (super.noSuchMethod( Invocation.method( #addSession, [session], ), - returnValue: - _i12.Future<_i9.WorkoutSession>.value(_FakeWorkoutSession_7( + returnValue: _i12.Future<_i9.WorkoutSession>.value(_FakeWorkoutSession_7( this, Invocation.method( #addSession, diff --git a/test/workout/workout_form_test.dart b/test/workout/workout_form_test.dart index b166e410..44f72b28 100644 --- a/test/workout/workout_form_test.dart +++ b/test/workout/workout_form_test.dart @@ -44,8 +44,7 @@ void main() { setUp(() { mockWorkoutPlans = MockWorkoutPlansProvider(); - when(mockWorkoutPlans.editWorkout(any)) - .thenAnswer((_) => Future.value(existingPlan)); + when(mockWorkoutPlans.editWorkout(any)).thenAnswer((_) => Future.value(existingPlan)); when(mockWorkoutPlans.fetchAndSetWorkoutPlanFull(any)) .thenAnswer((_) => Future.value(existingPlan)); }); @@ -70,8 +69,7 @@ void main() { ); } - testWidgets('Test the widgets on the workout form', - (WidgetTester tester) async { + testWidgets('Test the widgets on the workout form', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen(existingPlan)); await tester.pumpAndSettle(); @@ -93,8 +91,7 @@ void main() { findsOneWidget, reason: 'Description of existing workout plan', ); - await tester.enterText( - find.byKey(const Key('field-name')), 'New description'); + await tester.enterText(find.byKey(const Key('field-name')), 'New description'); await tester.tap(find.byKey(const Key(SUBMIT_BUTTON_KEY_NAME))); // Correct method was called @@ -110,24 +107,20 @@ void main() { //expect(find.text(('New description')), findsOneWidget, reason: 'Workout plan detail page'); }); - testWidgets('Test creating a new workout - only name', - (WidgetTester tester) async { + testWidgets('Test creating a new workout - only name', (WidgetTester tester) async { final editWorkout = WorkoutPlan( id: 2, creationDate: newPlan.creationDate, name: 'New cool workout', ); - when(mockWorkoutPlans.addWorkout(any)) - .thenAnswer((_) => Future.value(editWorkout)); + when(mockWorkoutPlans.addWorkout(any)).thenAnswer((_) => Future.value(editWorkout)); await tester.pumpWidget(createHomeScreen(newPlan)); await tester.pumpAndSettle(); - expect(find.text(''), findsNWidgets(2), - reason: 'New workout has no name or description'); - await tester.enterText( - find.byKey(const Key('field-name')), editWorkout.name); + expect(find.text(''), findsNWidgets(2), reason: 'New workout has no name or description'); + 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)); @@ -135,29 +128,20 @@ void main() { // Detail page await tester.pumpAndSettle(); - expect(find.text('New cool workout'), findsOneWidget, - reason: 'Workout plan detail page'); + expect(find.text('New cool workout'), findsOneWidget, reason: 'Workout plan detail page'); }); - testWidgets('Test creating a new workout - name and description', - (WidgetTester tester) async { + testWidgets('Test creating a new workout - name and description', (WidgetTester tester) async { final editWorkout = WorkoutPlan( - id: 2, - creationDate: newPlan.creationDate, - name: 'My workout', - description: 'Get yuuuge'); - when(mockWorkoutPlans.addWorkout(any)) - .thenAnswer((_) => Future.value(editWorkout)); + id: 2, creationDate: newPlan.creationDate, name: 'My workout', description: 'Get yuuuge'); + when(mockWorkoutPlans.addWorkout(any)).thenAnswer((_) => Future.value(editWorkout)); await tester.pumpWidget(createHomeScreen(newPlan)); await tester.pumpAndSettle(); - expect(find.text(''), findsNWidgets(2), - reason: 'New workout has no name or description'); - await tester.enterText( - find.byKey(const Key('field-name')), editWorkout.name); - await tester.enterText( - find.byKey(const Key('field-description')), editWorkout.description); + expect(find.text(''), findsNWidgets(2), reason: 'New workout has no name or description'); + await tester.enterText(find.byKey(const Key('field-name')), editWorkout.name); + 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)); @@ -165,7 +149,6 @@ void main() { // Detail page await tester.pumpAndSettle(); - expect(find.text('My workout'), findsOneWidget, - reason: 'Workout plan detail page'); + expect(find.text('My workout'), findsOneWidget, reason: 'Workout plan detail page'); }); } diff --git a/test/workout/workout_form_test.mocks.dart b/test/workout/workout_form_test.mocks.dart index a61e2a92..26964b78 100644 --- a/test/workout/workout_form_test.mocks.dart +++ b/test/workout/workout_form_test.mocks.dart @@ -31,8 +31,7 @@ import 'package:wger/providers/workout_plans.dart' as _i11; // 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, @@ -52,8 +51,7 @@ class _FakeWeightUnit_1 extends _i1.SmartFake implements _i3.WeightUnit { ); } -class _FakeRepetitionUnit_2 extends _i1.SmartFake - implements _i4.RepetitionUnit { +class _FakeRepetitionUnit_2 extends _i1.SmartFake implements _i4.RepetitionUnit { _FakeRepetitionUnit_2( Object parent, Invocation parentInvocation, @@ -103,8 +101,7 @@ class _FakeSetting_6 extends _i1.SmartFake implements _i8.Setting { ); } -class _FakeWorkoutSession_7 extends _i1.SmartFake - implements _i9.WorkoutSession { +class _FakeWorkoutSession_7 extends _i1.SmartFake implements _i9.WorkoutSession { _FakeWorkoutSession_7( Object parent, Invocation parentInvocation, @@ -127,8 +124,7 @@ class _FakeLog_8 extends _i1.SmartFake implements _i10.Log { /// A class which mocks [WorkoutPlansProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockWorkoutPlansProvider extends _i1.Mock - implements _i11.WorkoutPlansProvider { +class MockWorkoutPlansProvider extends _i1.Mock implements _i11.WorkoutPlansProvider { MockWorkoutPlansProvider() { _i1.throwOnMissingStub(this); } @@ -265,8 +261,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future); @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => - (super.noSuchMethod( + _i12.Future<_i5.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => (super.noSuchMethod( Invocation.method( #fetchAndSetPlanSparse, [planId], @@ -281,8 +276,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future<_i5.WorkoutPlan>); @override - _i12.Future<_i5.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => - (super.noSuchMethod( + _i12.Future<_i5.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => (super.noSuchMethod( Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], @@ -297,8 +291,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future<_i5.WorkoutPlan>); @override - _i12.Future<_i5.WorkoutPlan> addWorkout(_i5.WorkoutPlan? workout) => - (super.noSuchMethod( + _i12.Future<_i5.WorkoutPlan> addWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( Invocation.method( #addWorkout, [workout], @@ -313,8 +306,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future<_i5.WorkoutPlan>); @override - _i12.Future editWorkout(_i5.WorkoutPlan? workout) => - (super.noSuchMethod( + _i12.Future editWorkout(_i5.WorkoutPlan? workout) => (super.noSuchMethod( Invocation.method( #editWorkout, [workout], @@ -346,8 +338,7 @@ class MockWorkoutPlansProvider extends _i1.Mock base, ], ), - returnValue: - _i12.Future>.value({}), + returnValue: _i12.Future>.value({}), ) as _i12.Future>); @override @@ -467,8 +458,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future>); @override - _i12.Future fetchComputedSettings(_i7.Set? workoutSet) => - (super.noSuchMethod( + _i12.Future fetchComputedSettings(_i7.Set? workoutSet) => (super.noSuchMethod( Invocation.method( #fetchComputedSettings, [workoutSet], @@ -504,8 +494,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future); @override - _i12.Future<_i8.Setting> addSetting(_i8.Setting? workoutSetting) => - (super.noSuchMethod( + _i12.Future<_i8.Setting> addSetting(_i8.Setting? workoutSetting) => (super.noSuchMethod( Invocation.method( #addSetting, [workoutSetting], @@ -529,14 +518,12 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i12.Future); @override - _i12.Future<_i9.WorkoutSession> addSession(_i9.WorkoutSession? session) => - (super.noSuchMethod( + _i12.Future<_i9.WorkoutSession> addSession(_i9.WorkoutSession? session) => (super.noSuchMethod( Invocation.method( #addSession, [session], ), - returnValue: - _i12.Future<_i9.WorkoutSession>.value(_FakeWorkoutSession_7( + returnValue: _i12.Future<_i9.WorkoutSession>.value(_FakeWorkoutSession_7( this, Invocation.method( #addSession, diff --git a/test/workout/workout_plan_model_test.dart b/test/workout/workout_plan_model_test.dart index 8555a354..9ab1a588 100644 --- a/test/workout/workout_plan_model_test.dart +++ b/test/workout/workout_plan_model_test.dart @@ -27,19 +27,16 @@ void main() { final workout = getWorkout(); expect(workout.logs.length, 3); - final logExercise1 = - workout.filterLogsByExerciseBase(getTestExerciseBases()[0]); + final logExercise1 = workout.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 = workout.filterLogsByExerciseBase(getTestExerciseBases()[1]); expect(logExercise2.length, 1); expect(logExercise2[0].id, 3); - expect(workout.filterLogsByExerciseBase(getTestExerciseBases()[2]).length, - 0); + expect(workout.filterLogsByExerciseBase(getTestExerciseBases()[2]).length, 0); }); }); } diff --git a/test/workout/workout_plan_screen_test.dart b/test/workout/workout_plan_screen_test.dart index baea18e1..838e7d41 100644 --- a/test/workout/workout_plan_screen_test.dart +++ b/test/workout/workout_plan_screen_test.dart @@ -37,8 +37,7 @@ void main() { final key = GlobalKey(); return ChangeNotifierProvider( - create: (context) => - WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []), + create: (context) => WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []), child: MaterialApp( locale: Locale(locale), localizationsDelegates: AppLocalizations.localizationsDelegates, @@ -60,8 +59,7 @@ void main() { ); } - testWidgets('Test the widgets on the nutritional plan screen', - (WidgetTester tester) async { + testWidgets('Test the widgets on the nutritional plan screen', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); @@ -72,8 +70,7 @@ void main() { expect(find.byType(Dismissible), findsNWidgets(2)); }); - testWidgets('Tests the localization of times - EN', - (WidgetTester tester) async { + testWidgets('Tests the localization of times - EN', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); @@ -82,8 +79,7 @@ void main() { expect(find.text('Thursday'), findsOneWidget); }); - testWidgets('Tests the localization of times - DE', - (WidgetTester tester) async { + testWidgets('Tests the localization of times - DE', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen(locale: 'de')); await tester.tap(find.byType(TextButton)); await tester.pumpAndSettle(); diff --git a/test/workout/workout_plan_screen_test.mocks.dart b/test/workout/workout_plan_screen_test.mocks.dart index 03f2be6f..c47859e6 100644 --- a/test/workout/workout_plan_screen_test.mocks.dart +++ b/test/workout/workout_plan_screen_test.mocks.dart @@ -106,8 +106,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -153,8 +152,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -179,8 +177,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -196,8 +193,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override diff --git a/test/workout/workout_plans_screen_test.dart b/test/workout/workout_plans_screen_test.dart index 8d352162..45ee4879 100644 --- a/test/workout/workout_plans_screen_test.dart +++ b/test/workout/workout_plans_screen_test.dart @@ -49,20 +49,16 @@ void main() { host: 'localhost', path: 'api/v2/workout/', ); - when(mockBaseProvider.makeUrl('workout', query: anyNamed('query'))) - .thenReturn(uri); - when(mockBaseProvider.deleteRequest(any, any)) - .thenAnswer((_) async => http.Response('', 204)); + when(mockBaseProvider.makeUrl('workout', query: anyNamed('query'))).thenReturn(uri); + when(mockBaseProvider.deleteRequest(any, any)).thenAnswer((_) async => http.Response('', 204)); return ChangeNotifierProvider( create: (context) => WorkoutPlansProvider( mockBaseProvider, testExercisesProvider, [ - WorkoutPlan( - id: 1, creationDate: DateTime(2021, 01, 01), name: 'test 1'), - WorkoutPlan( - id: 2, creationDate: DateTime(2021, 02, 12), name: 'test 2'), + WorkoutPlan(id: 1, creationDate: DateTime(2021, 01, 01), name: 'test 1'), + WorkoutPlan(id: 2, creationDate: DateTime(2021, 02, 12), name: 'test 2'), ], ), child: MaterialApp( @@ -77,8 +73,7 @@ void main() { ); } - testWidgets('Test the widgets on the workout plans screen', - (WidgetTester tester) async { + testWidgets('Test the widgets on the workout plans screen', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); //debugDumpApp(); @@ -87,8 +82,7 @@ void main() { expect(find.byType(ListTile), findsNWidgets(2)); }); - testWidgets('Test deleting an item by dragging the dismissible', - (WidgetTester tester) async { + testWidgets('Test deleting an item by dragging the dismissible', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); await tester.drag(find.byKey(const Key('1')), const Offset(-500.0, 0.0)); @@ -114,8 +108,7 @@ void main() { */ - testWidgets('Test the form on the workout plan screen', - (WidgetTester tester) async { + testWidgets('Test the form on the workout plan screen', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); expect(find.byType(PlanForm), findsNothing); @@ -124,16 +117,14 @@ void main() { expect(find.byType(WorkoutForm), findsOneWidget); }); - testWidgets('Tests the localization of dates - EN', - (WidgetTester tester) async { + testWidgets('Tests the localization of dates - EN', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); expect(find.text('1/1/2021'), findsOneWidget); expect(find.text('2/12/2021'), findsOneWidget); }); - testWidgets('Tests the localization of dates - DE', - (WidgetTester tester) async { + testWidgets('Tests the localization of dates - DE', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen(locale: 'de')); expect(find.text('1.1.2021'), findsOneWidget); diff --git a/test/workout/workout_plans_screen_test.mocks.dart b/test/workout/workout_plans_screen_test.mocks.dart index cdf74da5..6b542c20 100644 --- a/test/workout/workout_plans_screen_test.mocks.dart +++ b/test/workout/workout_plans_screen_test.mocks.dart @@ -106,8 +106,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -153,8 +152,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -179,8 +177,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -196,8 +193,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override diff --git a/test/workout/workout_provider_test.dart b/test/workout/workout_provider_test.dart index 70a7c6c1..3c242e82 100644 --- a/test/workout/workout_provider_test.dart +++ b/test/workout/workout_provider_test.dart @@ -56,8 +56,7 @@ void main() { ); // Load the entries - final provider = - WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); + final provider = WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); final plan = await provider.fetchAndSetPlanSparse(325397); final plans = provider.getPlans(); @@ -87,8 +86,7 @@ void main() { ); // Load the entries - final provider = - WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); + final provider = WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); await provider.fetchAndSetPlanSparse(325397); await provider.deleteWorkout(325397); @@ -100,15 +98,13 @@ void main() { final exercisesProvider = ExercisesProvider(mockBaseProvider); final uri = Uri.https('localhost', 'api/v2/setting-repetitionunit/'); - final tRepetitionUnits = - jsonDecode(fixture('routines/repetition_units.json')); + final tRepetitionUnits = jsonDecode(fixture('routines/repetition_units.json')); when(mockBaseProvider.makeUrl('setting-repetitionunit')).thenReturn(uri); when(mockBaseProvider.fetchPaginated(uri)) .thenAnswer((_) => Future.value(tRepetitionUnits['results'])); // Load the entries - final provider = - WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); + final provider = WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); await provider.fetchAndSetRepetitionUnits(); final repetitionUnits = provider.repetitionUnits; @@ -122,12 +118,10 @@ void main() { when(mockBaseProvider.fetchPaginated(uri)) .thenAnswer((_) => Future.value(tWeightUnits['results'])); - final ExercisesProvider testExercisesProvider = - ExercisesProvider(mockBaseProvider); + final ExercisesProvider testExercisesProvider = ExercisesProvider(mockBaseProvider); // Load the entries - final provider = - WorkoutPlansProvider(mockBaseProvider, testExercisesProvider, []); + final provider = WorkoutPlansProvider(mockBaseProvider, testExercisesProvider, []); await provider.fetchAndSetWeightUnits(); final weightUnits = provider.weightUnits; @@ -137,17 +131,14 @@ void main() { test('Test that fetch and set both type of units', () async { final weightUri = Uri.https('localhost', 'api/v2/setting-weightunit/'); - when(mockBaseProvider.makeUrl('setting-weightunit')) - .thenReturn(weightUri); + when(mockBaseProvider.makeUrl('setting-weightunit')).thenReturn(weightUri); final tWeightUnits = jsonDecode(fixture('routines/weight_units.json')); when(mockBaseProvider.fetchPaginated(weightUri)) .thenAnswer((_) => Future.value(tWeightUnits['results'])); final repUnit = Uri.https('localhost', 'api/v2/setting-repetitionunit/'); - final tRepetitionUnits = - jsonDecode(fixture('routines/repetition_units.json')); - when(mockBaseProvider.makeUrl('setting-repetitionunit')) - .thenReturn(repUnit); + final tRepetitionUnits = jsonDecode(fixture('routines/repetition_units.json')); + when(mockBaseProvider.makeUrl('setting-repetitionunit')).thenReturn(repUnit); when(mockBaseProvider.fetchPaginated(repUnit)) .thenAnswer((_) => Future.value(tRepetitionUnits['results'])); @@ -157,16 +148,14 @@ void main() { final prefs = await SharedPreferences.getInstance(); // Load the entries - final provider = - WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); + final provider = WorkoutPlansProvider(mockBaseProvider, exercisesProvider, []); await provider.fetchAndSetUnits(); final prefsJson = jsonDecode(prefs.getString('workoutUnits')!); expect(prefsJson['repetitionUnits'].length, 7); expect(prefsJson['weightUnit'].length, 6); expect(true, DateTime.parse(prefsJson['date']).isBefore(DateTime.now())); - expect( - true, DateTime.parse(prefsJson['expiresIn']).isAfter(DateTime.now())); + expect(true, DateTime.parse(prefsJson['expiresIn']).isAfter(DateTime.now())); }); }); } diff --git a/test/workout/workout_provider_test.mocks.dart b/test/workout/workout_provider_test.mocks.dart index a89a913f..8ab1d85b 100644 --- a/test/workout/workout_provider_test.mocks.dart +++ b/test/workout/workout_provider_test.mocks.dart @@ -106,8 +106,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -153,8 +152,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { #fetch, [uri], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -179,8 +177,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override @@ -196,8 +193,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i4.WgerBaseProvider { uri, ], ), - returnValue: - _i5.Future>.value({}), + returnValue: _i5.Future>.value({}), ) as _i5.Future>); @override diff --git a/test/workout/workout_set_form_test.dart b/test/workout/workout_set_form_test.dart index 1bba82e0..accc91f4 100644 --- a/test/workout/workout_set_form_test.dart +++ b/test/workout/workout_set_form_test.dart @@ -69,8 +69,7 @@ void main() { ); } - testWidgets('Test the widgets on the SetFormWidget', - (WidgetTester tester) async { + testWidgets('Test the widgets on the SetFormWidget', (WidgetTester tester) async { await tester.pumpWidget(createHomeScreen()); await tester.pumpAndSettle(); @@ -82,18 +81,14 @@ 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(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')); await tester.pumpWidget(createHomeScreen()); await tester.pumpAndSettle(); - await tester.enterText( - find.byKey(const Key('field-typeahead')), 'exercise'); + await tester.enterText(find.byKey(const Key('field-typeahead')), 'exercise'); await tester.pumpAndSettle(); await tester.tap(find.byKey(const Key(SUBMIT_BUTTON_KEY_NAME))); diff --git a/test/workout/workout_set_form_test.mocks.dart b/test/workout/workout_set_form_test.mocks.dart index c319ed77..a31bcb5a 100644 --- a/test/workout/workout_set_form_test.mocks.dart +++ b/test/workout/workout_set_form_test.mocks.dart @@ -38,8 +38,7 @@ import 'package:wger/providers/workout_plans.dart' as _i21; // 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, @@ -59,8 +58,7 @@ class _FakeExerciseBase_1 extends _i1.SmartFake implements _i3.ExerciseBase { ); } -class _FakeExerciseCategory_2 extends _i1.SmartFake - implements _i4.ExerciseCategory { +class _FakeExerciseCategory_2 extends _i1.SmartFake implements _i4.ExerciseCategory { _FakeExerciseCategory_2( Object parent, Invocation parentInvocation, @@ -150,8 +148,7 @@ class _FakeWeightUnit_10 extends _i1.SmartFake implements _i10.WeightUnit { ); } -class _FakeRepetitionUnit_11 extends _i1.SmartFake - implements _i11.RepetitionUnit { +class _FakeRepetitionUnit_11 extends _i1.SmartFake implements _i11.RepetitionUnit { _FakeRepetitionUnit_11( Object parent, Invocation parentInvocation, @@ -201,8 +198,7 @@ class _FakeSetting_15 extends _i1.SmartFake implements _i15.Setting { ); } -class _FakeWorkoutSession_16 extends _i1.SmartFake - implements _i16.WorkoutSession { +class _FakeWorkoutSession_16 extends _i1.SmartFake implements _i16.WorkoutSession { _FakeWorkoutSession_16( Object parent, Invocation parentInvocation, @@ -240,8 +236,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ) as _i2.WgerBaseProvider); @override - set exerciseBases(List<_i3.ExerciseBase>? exercisesBases) => - super.noSuchMethod( + set exerciseBases(List<_i3.ExerciseBase>? exercisesBases) => super.noSuchMethod( Invocation.setter( #exerciseBases, exercisesBases, @@ -256,8 +251,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ) as List<_i3.ExerciseBase>); @override - set filteredExerciseBases(List<_i3.ExerciseBase>? newFilteredExercises) => - super.noSuchMethod( + set filteredExerciseBases(List<_i3.ExerciseBase>? newFilteredExercises) => super.noSuchMethod( Invocation.setter( #filteredExerciseBases, newFilteredExercises, @@ -266,8 +260,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ); @override - Map> get exerciseBasesByVariation => - (super.noSuchMethod( + Map> get exerciseBasesByVariation => (super.noSuchMethod( Invocation.getter(#exerciseBasesByVariation), returnValue: >{}, ) as Map>); @@ -486,8 +479,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ) as _i19.Future); @override - _i19.Future<_i3.ExerciseBase> fetchAndSetExerciseBase(int? exerciseBaseId) => - (super.noSuchMethod( + _i19.Future<_i3.ExerciseBase> fetchAndSetExerciseBase(int? exerciseBaseId) => (super.noSuchMethod( Invocation.method( #fetchAndSetExerciseBase, [exerciseBaseId], @@ -502,8 +494,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { ) as _i19.Future<_i3.ExerciseBase>); @override - _i3.ExerciseBase readExerciseBaseFromBaseInfo(dynamic baseData) => - (super.noSuchMethod( + _i3.ExerciseBase readExerciseBaseFromBaseInfo(dynamic baseData) => (super.noSuchMethod( Invocation.method( #readExerciseBaseFromBaseInfo, [baseData], @@ -552,8 +543,7 @@ class MockExercisesProvider extends _i1.Mock implements _i18.ExercisesProvider { #searchEnglish: searchEnglish, }, ), - returnValue: - _i19.Future>.value(<_i3.ExerciseBase>[]), + returnValue: _i19.Future>.value(<_i3.ExerciseBase>[]), ) as _i19.Future>); @override @@ -638,8 +628,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { ); @override - Map getDefaultHeaders({dynamic includeAuth = false}) => - (super.noSuchMethod( + Map getDefaultHeaders({dynamic includeAuth = false}) => (super.noSuchMethod( Invocation.method( #getDefaultHeaders, [], @@ -685,8 +674,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { #fetch, [uri], ), - returnValue: - _i19.Future>.value({}), + returnValue: _i19.Future>.value({}), ) as _i19.Future>); @override @@ -711,8 +699,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { uri, ], ), - returnValue: - _i19.Future>.value({}), + returnValue: _i19.Future>.value({}), ) as _i19.Future>); @override @@ -728,8 +715,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { uri, ], ), - returnValue: - _i19.Future>.value({}), + returnValue: _i19.Future>.value({}), ) as _i19.Future>); @override @@ -761,8 +747,7 @@ class MockWgerBaseProvider extends _i1.Mock implements _i2.WgerBaseProvider { /// A class which mocks [WorkoutPlansProvider]. /// /// See the documentation for Mockito's code generation for more information. -class MockWorkoutPlansProvider extends _i1.Mock - implements _i21.WorkoutPlansProvider { +class MockWorkoutPlansProvider extends _i1.Mock implements _i21.WorkoutPlansProvider { MockWorkoutPlansProvider() { _i1.throwOnMissingStub(this); } @@ -899,8 +884,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i19.Future); @override - _i19.Future<_i12.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => - (super.noSuchMethod( + _i19.Future<_i12.WorkoutPlan> fetchAndSetPlanSparse(int? planId) => (super.noSuchMethod( Invocation.method( #fetchAndSetPlanSparse, [planId], @@ -915,8 +899,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i19.Future<_i12.WorkoutPlan>); @override - _i19.Future<_i12.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => - (super.noSuchMethod( + _i19.Future<_i12.WorkoutPlan> fetchAndSetWorkoutPlanFull(int? workoutId) => (super.noSuchMethod( Invocation.method( #fetchAndSetWorkoutPlanFull, [workoutId], @@ -931,8 +914,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i19.Future<_i12.WorkoutPlan>); @override - _i19.Future<_i12.WorkoutPlan> addWorkout(_i12.WorkoutPlan? workout) => - (super.noSuchMethod( + _i19.Future<_i12.WorkoutPlan> addWorkout(_i12.WorkoutPlan? workout) => (super.noSuchMethod( Invocation.method( #addWorkout, [workout], @@ -947,8 +929,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i19.Future<_i12.WorkoutPlan>); @override - _i19.Future editWorkout(_i12.WorkoutPlan? workout) => - (super.noSuchMethod( + _i19.Future editWorkout(_i12.WorkoutPlan? workout) => (super.noSuchMethod( Invocation.method( #editWorkout, [workout], @@ -980,8 +961,7 @@ class MockWorkoutPlansProvider extends _i1.Mock base, ], ), - returnValue: - _i19.Future>.value({}), + returnValue: _i19.Future>.value({}), ) as _i19.Future>); @override @@ -1101,8 +1081,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i19.Future>); @override - _i19.Future fetchComputedSettings(_i14.Set? workoutSet) => - (super.noSuchMethod( + _i19.Future fetchComputedSettings(_i14.Set? workoutSet) => (super.noSuchMethod( Invocation.method( #fetchComputedSettings, [workoutSet], @@ -1138,8 +1117,7 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i19.Future); @override - _i19.Future<_i15.Setting> addSetting(_i15.Setting? workoutSetting) => - (super.noSuchMethod( + _i19.Future<_i15.Setting> addSetting(_i15.Setting? workoutSetting) => (super.noSuchMethod( Invocation.method( #addSetting, [workoutSetting], @@ -1163,14 +1141,12 @@ class MockWorkoutPlansProvider extends _i1.Mock ) as _i19.Future); @override - _i19.Future<_i16.WorkoutSession> addSession(_i16.WorkoutSession? session) => - (super.noSuchMethod( + _i19.Future<_i16.WorkoutSession> addSession(_i16.WorkoutSession? session) => (super.noSuchMethod( Invocation.method( #addSession, [session], ), - returnValue: - _i19.Future<_i16.WorkoutSession>.value(_FakeWorkoutSession_16( + returnValue: _i19.Future<_i16.WorkoutSession>.value(_FakeWorkoutSession_16( this, Invocation.method( #addSession, diff --git a/test_data/body_weight.dart b/test_data/body_weight.dart index e035125f..8cec705c 100644 --- a/test_data/body_weight.dart +++ b/test_data/body_weight.dart @@ -18,10 +18,8 @@ import 'package:wger/models/body_weight/weight_entry.dart'; -final weightEntry1 = - WeightEntry(id: 1, weight: 80, date: DateTime(2021, 01, 01)); -final weightEntry2 = - WeightEntry(id: 2, weight: 81, date: DateTime(2021, 01, 10)); +final weightEntry1 = WeightEntry(id: 1, weight: 80, date: DateTime(2021, 01, 01)); +final weightEntry2 = WeightEntry(id: 2, weight: 81, date: DateTime(2021, 01, 10)); List getWeightEntries() { return [weightEntry1, weightEntry2]; diff --git a/test_data/exercises.dart b/test_data/exercises.dart index b2d02d4d..41d2d282 100644 --- a/test_data/exercises.dart +++ b/test_data/exercises.dart @@ -28,12 +28,9 @@ const tLanguage2 = Language(id: 2, shortName: 'en', fullName: 'English'); const tLanguage3 = Language(id: 3, shortName: 'fr', fullName: 'Français'); const testLanguages = [tLanguage1, tLanguage2, tLanguage3]; -const tMuscle1 = - Muscle(id: 1, name: 'Flutterus maximus', nameEn: 'Glutes', isFront: true); -const tMuscle2 = - Muscle(id: 2, name: 'Biceps brachii', nameEn: 'Biceps', isFront: true); -const tMuscle3 = - Muscle(id: 3, name: 'Gluteus maximus', nameEn: 'Glutes', isFront: false); +const tMuscle1 = Muscle(id: 1, name: 'Flutterus maximus', nameEn: 'Glutes', isFront: true); +const tMuscle2 = Muscle(id: 2, name: 'Biceps brachii', nameEn: 'Biceps', isFront: true); +const tMuscle3 = Muscle(id: 3, name: 'Gluteus maximus', nameEn: 'Glutes', isFront: false); const testMuscles = [tMuscle1, tMuscle2, tMuscle3]; const tCategory1 = ExerciseCategory(id: 1, name: 'Arms'); @@ -41,13 +38,7 @@ const tCategory2 = ExerciseCategory(id: 2, name: 'Legs'); const tCategory3 = ExerciseCategory(id: 3, name: 'Abs'); const tCategory4 = ExerciseCategory(id: 4, name: 'Shoulders'); const tCategory5 = ExerciseCategory(id: 5, name: 'Calves'); -const testCategories = [ - tCategory1, - tCategory2, - tCategory3, - tCategory4, - tCategory5 -]; +const testCategories = [tCategory1, tCategory2, tCategory3, tCategory4, tCategory5]; const tEquipment1 = Equipment(id: 1, name: 'Bench'); const tEquipment2 = Equipment(id: 1, name: 'Dumbbell'); @@ -152,8 +143,7 @@ final crunchesFr = Translation( uuid: 'd83f572d-add5-48dc-89cf-75f6770284f1', created: DateTime(2021, 4, 1), name: 'Crunches', - description: - 'The man in black fled across the desert, and the gunslinger followed', + description: 'The man in black fled across the desert, and the gunslinger followed', baseId: deadLift.id, language: tLanguage3, ); @@ -183,8 +173,7 @@ final curlsEn = Translation( uuid: '259a637e-957f-4fe1-b61b-f56e3793ebcd', created: DateTime(2021, 4, 1), name: 'Curls', - description: - 'It was a bright cold day in April, and the clocks were striking thirteen', + description: 'It was a bright cold day in April, and the clocks were striking thirteen', baseId: curls.id, language: tLanguage2, ); @@ -194,8 +183,7 @@ final squatsEn = Translation( uuid: '259a637e-957f-4fe1-b61b-f56e3793ebcd', created: DateTime(2021, 4, 1), name: 'Squats', - description: - 'It was a bright cold day in April, and the clocks were striking thirteen', + description: 'It was a bright cold day in April, and the clocks were striking thirteen', baseId: curls.id, language: tLanguage2, ); @@ -205,8 +193,7 @@ final sideRaisesEn = Translation( uuid: '6bf89ad0-5a43-4e98-91d3-a8c6886c9712', created: DateTime(2022, 11, 1), name: 'Side raises', - description: - 'It was a bright cold day in April, and the clocks were striking thirteen', + description: 'It was a bright cold day in April, and the clocks were striking thirteen', baseId: curls.id, language: tLanguage2, ); diff --git a/test_data/measurements.dart b/test_data/measurements.dart index 0e8c70b5..87c524eb 100644 --- a/test_data/measurements.dart +++ b/test_data/measurements.dart @@ -19,23 +19,16 @@ import 'package:wger/models/measurements/measurement_category.dart'; import 'package:wger/models/measurements/measurement_entry.dart'; -final e1 = MeasurementEntry( - id: 1, category: 1, date: DateTime(2022, 9, 10), value: 30, notes: ''); -final e2 = MeasurementEntry( - id: 2, category: 1, date: DateTime(2022, 10, 5), value: 25, notes: ''); -final e3 = MeasurementEntry( - id: 3, category: 1, date: DateTime(2022, 10, 10), value: 17, notes: ''); -final e4 = MeasurementEntry( - id: 4, category: 1, date: DateTime(2022, 11, 1), value: 17, notes: ''); -final e5 = MeasurementEntry( - id: 5, category: 1, date: DateTime(2022, 11, 10), value: 20, notes: ''); -final e6 = MeasurementEntry( - id: 6, category: 1, date: DateTime(2022, 11, 15), value: 23, notes: ''); +final e1 = MeasurementEntry(id: 1, category: 1, date: DateTime(2022, 9, 10), value: 30, notes: ''); +final e2 = MeasurementEntry(id: 2, category: 1, date: DateTime(2022, 10, 5), value: 25, notes: ''); +final e3 = MeasurementEntry(id: 3, category: 1, date: DateTime(2022, 10, 10), value: 17, notes: ''); +final e4 = MeasurementEntry(id: 4, category: 1, date: DateTime(2022, 11, 1), value: 17, notes: ''); +final e5 = MeasurementEntry(id: 5, category: 1, date: DateTime(2022, 11, 10), value: 20, notes: ''); +final e6 = MeasurementEntry(id: 6, category: 1, date: DateTime(2022, 11, 15), value: 23, notes: ''); List getMeasurementCategories() { final entries = [e1, e2, e3, e4, e5, e6]; - final category = - MeasurementCategory(id: 1, name: 'Body fat', unit: '%', entries: entries); + final category = MeasurementCategory(id: 1, name: 'Body fat', unit: '%', entries: entries); return [category]; } diff --git a/test_data/workouts.dart b/test_data/workouts.dart index 711ac293..229e3a47 100644 --- a/test_data/workouts.dart +++ b/test_data/workouts.dart @@ -29,8 +29,7 @@ import './exercises.dart'; const weightUnit1 = WeightUnit(id: 1, name: 'kg'); const weightUnit2 = WeightUnit(id: 2, name: 'metric tonnes'); -const RepetitionUnit repetitionUnit1 = - RepetitionUnit(id: 1, name: 'Repetitions'); +const RepetitionUnit repetitionUnit1 = RepetitionUnit(id: 1, name: 'Repetitions'); const RepetitionUnit repetitionUnit2 = RepetitionUnit(id: 2, name: 'Hours'); WorkoutPlan getWorkout() { diff --git a/test_driver/screenshot_driver.dart b/test_driver/screenshot_driver.dart index 4142231c..f98d10c7 100644 --- a/test_driver/screenshot_driver.dart +++ b/test_driver/screenshot_driver.dart @@ -6,8 +6,7 @@ import 'package:integration_test/integration_test_driver_extended.dart'; Future main() async { try { await integrationDriver( - onScreenshot: (String screenshotName, List screenshotBytes, - [_]) async { + onScreenshot: (String screenshotName, List screenshotBytes, [_]) async { final File image = await File(screenshotName).create(recursive: true); image.writeAsBytesSync(screenshotBytes); return true;