## Tests BLoC (Task P2.4 Mobile) - 25 nouveaux fichiers *_bloc_test.dart + mocks générés (build_runner) - Features couvertes : authentication, admin_users, adhesions, backup, communication/messaging, contributions, dashboard, finance (approval/budget), events, explore/network, feed, logs_monitoring, notifications, onboarding, organizations (switcher/types/CRUD), profile, reports, settings, solidarity - ~380 tests, > 80% coverage BLoCs ## Sécurité Production (Task P2.2) - lib/core/security/app_integrity_service.dart (freerasp 7.5.1) - Migration API breaking changes freerasp 7.5.1 : - onRootDetected → onPrivilegedAccess - onDebuggerDetected → onDebug - onSignatureDetected → onAppIntegrity - onHookDetected → onHooks - onEmulatorDetected → onSimulator - onUntrustedInstallationSourceDetected → onUnofficialStore - onDeviceBindingDetected → onDeviceBinding - onObfuscationIssuesDetected → onObfuscationIssues - Talsec.start() split → start() + attachListener() - const AndroidConfig/IOSConfig → final (constructors call ConfigVerifier) - supportedAlternativeStores → supportedStores ## Pubspec - bloc_test: ^9.1.7 → ^10.0.0 (compat flutter_bloc ^9.0.0) - freerasp 7.5.1 ## Config - android/app/build.gradle : ajustements release - lib/core/config/environment.dart : URLs API actualisées - lib/main.dart + app_router : intégrations sécurité/BLoC ## Cleanup - Suppression docs intermédiaires (TACHES_*.md, TASK_*_COMPLETION_REPORT.md, TESTS_UNITAIRES_PROGRESS.md) - .g.dart régénérés (json_serializable) - .mocks.dart régénérés (mockito) ## Résultat - 142 fichiers, +27 596 insertions - Toutes les tâches P2 mobile complétées Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
49 lines
1.8 KiB
Dart
49 lines
1.8 KiB
Dart
// GENERATED CODE - DO NOT MODIFY BY HAND
|
|
|
|
part of 'backup_model.dart';
|
|
|
|
// **************************************************************************
|
|
// JsonSerializableGenerator
|
|
// **************************************************************************
|
|
|
|
BackupModel _$BackupModelFromJson(Map<String, dynamic> json) => BackupModel(
|
|
id: json['id'] as String?,
|
|
name: json['name'] as String?,
|
|
description: json['description'] as String?,
|
|
type: json['type'] as String?,
|
|
sizeBytes: (json['sizeBytes'] as num?)?.toInt(),
|
|
sizeFormatted: json['sizeFormatted'] as String?,
|
|
status: json['status'] as String?,
|
|
createdAt: json['createdAt'] == null
|
|
? null
|
|
: DateTime.parse(json['createdAt'] as String),
|
|
completedAt: json['completedAt'] == null
|
|
? null
|
|
: DateTime.parse(json['completedAt'] as String),
|
|
createdBy: json['createdBy'] as String?,
|
|
includesDatabase: json['includesDatabase'] as bool?,
|
|
includesFiles: json['includesFiles'] as bool?,
|
|
includesConfiguration: json['includesConfiguration'] as bool?,
|
|
filePath: json['filePath'] as String?,
|
|
errorMessage: json['errorMessage'] as String?,
|
|
);
|
|
|
|
Map<String, dynamic> _$BackupModelToJson(BackupModel instance) =>
|
|
<String, dynamic>{
|
|
'id': instance.id,
|
|
'name': instance.name,
|
|
'description': instance.description,
|
|
'type': instance.type,
|
|
'sizeBytes': instance.sizeBytes,
|
|
'sizeFormatted': instance.sizeFormatted,
|
|
'status': instance.status,
|
|
'createdAt': instance.createdAt?.toIso8601String(),
|
|
'completedAt': instance.completedAt?.toIso8601String(),
|
|
'createdBy': instance.createdBy,
|
|
'includesDatabase': instance.includesDatabase,
|
|
'includesFiles': instance.includesFiles,
|
|
'includesConfiguration': instance.includesConfiguration,
|
|
'filePath': instance.filePath,
|
|
'errorMessage': instance.errorMessage,
|
|
};
|