Files
1356/lifetimer/test/helpers/mock_providers.mocks.dart
Tomas Dvorak 37ffb93923 feat: Complete Phase 1 - Full Flutter app implementation with comprehensive features
Version: 1.1.0

Major changes:
- Implemented complete Flutter app structure with all core features
- Added comprehensive UI screens for auth, countdown, goals, profile, settings, and social features
- Integrated Supabase backend with authentication and data repositories
- Added offline support with Hive caching and local storage
- Implemented comprehensive routing with go_router
- Added location services with Google Maps integration
- Implemented notifications and home widget support
- Added voice recording capabilities and AI chat features
- Created comprehensive test suite and documentation
- Added Android and iOS platform configurations
- Implemented achievements system and social features
- Added calendar integration and bucket list functionality

This represents a complete Phase 1 milestone with 3,775 additions across 31 files.
2026-01-04 14:33:54 +01:00

782 lines
21 KiB
Dart

// Mocks generated by Mockito 5.4.4 from annotations
// in lifetimer/test/helpers/mock_providers.dart.
// Do not manually edit this file.
// ignore_for_file: no_leading_underscores_for_library_prefixes
import 'dart:async' as _i7;
import 'package:flutter_local_notifications/flutter_local_notifications.dart'
as _i14;
import 'package:lifetimer/data/models/activity_model.dart' as _i5;
import 'package:lifetimer/data/models/goal_model.dart' as _i2;
import 'package:lifetimer/data/models/goal_step_model.dart' as _i3;
import 'package:lifetimer/data/models/user_model.dart' as _i4;
import 'package:lifetimer/data/repositories/auth_repository.dart' as _i6;
import 'package:lifetimer/data/repositories/countdown_repository.dart' as _i10;
import 'package:lifetimer/data/repositories/goals_repository.dart' as _i9;
import 'package:lifetimer/data/repositories/notifications_repository.dart'
as _i13;
import 'package:lifetimer/data/repositories/social_repository.dart' as _i12;
import 'package:lifetimer/data/repositories/user_repository.dart' as _i11;
import 'package:mockito/mockito.dart' as _i1;
import 'package:supabase_flutter/supabase_flutter.dart' as _i8;
// ignore_for_file: type=lint
// ignore_for_file: avoid_redundant_argument_values
// ignore_for_file: avoid_setters_without_getters
// ignore_for_file: comment_references
// ignore_for_file: deprecated_member_use
// ignore_for_file: deprecated_member_use_from_same_package
// ignore_for_file: implementation_imports
// ignore_for_file: invalid_use_of_visible_for_testing_member
// ignore_for_file: prefer_const_constructors
// ignore_for_file: unnecessary_parenthesis
// ignore_for_file: camel_case_types
// ignore_for_file: subtype_of_sealed_class
class _FakeGoal_0 extends _i1.SmartFake implements _i2.Goal {
_FakeGoal_0(
Object parent,
Invocation parentInvocation,
) : super(
parent,
parentInvocation,
);
}
class _FakeGoalStep_1 extends _i1.SmartFake implements _i3.GoalStep {
_FakeGoalStep_1(
Object parent,
Invocation parentInvocation,
) : super(
parent,
parentInvocation,
);
}
class _FakeUser_2 extends _i1.SmartFake implements _i4.User {
_FakeUser_2(
Object parent,
Invocation parentInvocation,
) : super(
parent,
parentInvocation,
);
}
class _FakeActivity_3 extends _i1.SmartFake implements _i5.Activity {
_FakeActivity_3(
Object parent,
Invocation parentInvocation,
) : super(
parent,
parentInvocation,
);
}
/// A class which mocks [AuthRepository].
///
/// See the documentation for Mockito's code generation for more information.
class MockAuthRepository extends _i1.Mock implements _i6.AuthRepository {
MockAuthRepository() {
_i1.throwOnMissingStub(this);
}
@override
_i7.Stream<_i4.User?> get authStateChanges => (super.noSuchMethod(
Invocation.getter(#authStateChanges),
returnValue: _i7.Stream<_i4.User?>.empty(),
) as _i7.Stream<_i4.User?>);
@override
bool get isAuthenticated => (super.noSuchMethod(
Invocation.getter(#isAuthenticated),
returnValue: false,
) as bool);
@override
_i7.Future<bool> isSessionValid() => (super.noSuchMethod(
Invocation.method(
#isSessionValid,
[],
),
returnValue: _i7.Future<bool>.value(false),
) as _i7.Future<bool>);
@override
_i7.Future<void> refreshSession() => (super.noSuchMethod(
Invocation.method(
#refreshSession,
[],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<_i8.Session?> getCurrentSession() => (super.noSuchMethod(
Invocation.method(
#getCurrentSession,
[],
),
returnValue: _i7.Future<_i8.Session?>.value(),
) as _i7.Future<_i8.Session?>);
@override
void listenToAuthStateChanges(dynamic Function(_i4.User?)? callback) =>
super.noSuchMethod(
Invocation.method(
#listenToAuthStateChanges,
[callback],
),
returnValueForMissingStub: null,
);
@override
void dispose() => super.noSuchMethod(
Invocation.method(
#dispose,
[],
),
returnValueForMissingStub: null,
);
@override
_i7.Future<void> signInWithEmail(
String? email,
String? password,
) =>
(super.noSuchMethod(
Invocation.method(
#signInWithEmail,
[
email,
password,
],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> signUpWithEmail(
String? email,
String? password,
String? username,
) =>
(super.noSuchMethod(
Invocation.method(
#signUpWithEmail,
[
email,
password,
username,
],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> signInWithGoogle() => (super.noSuchMethod(
Invocation.method(
#signInWithGoogle,
[],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> signInWithGithub() => (super.noSuchMethod(
Invocation.method(
#signInWithGithub,
[],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> signInWithApple() => (super.noSuchMethod(
Invocation.method(
#signInWithApple,
[],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> signOut() => (super.noSuchMethod(
Invocation.method(
#signOut,
[],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> resetPassword(String? email) => (super.noSuchMethod(
Invocation.method(
#resetPassword,
[email],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> updateProfile({
String? username,
String? bio,
String? avatarUrl,
bool? isPublicProfile,
}) =>
(super.noSuchMethod(
Invocation.method(
#updateProfile,
[],
{
#username: username,
#bio: bio,
#avatarUrl: avatarUrl,
#isPublicProfile: isPublicProfile,
},
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
}
/// A class which mocks [GoalsRepository].
///
/// See the documentation for Mockito's code generation for more information.
class MockGoalsRepository extends _i1.Mock implements _i9.GoalsRepository {
MockGoalsRepository() {
_i1.throwOnMissingStub(this);
}
@override
_i7.Future<List<_i2.Goal>> getGoals(String? userId) => (super.noSuchMethod(
Invocation.method(
#getGoals,
[userId],
),
returnValue: _i7.Future<List<_i2.Goal>>.value(<_i2.Goal>[]),
) as _i7.Future<List<_i2.Goal>>);
@override
_i7.Future<_i2.Goal> getGoal(String? goalId) => (super.noSuchMethod(
Invocation.method(
#getGoal,
[goalId],
),
returnValue: _i7.Future<_i2.Goal>.value(_FakeGoal_0(
this,
Invocation.method(
#getGoal,
[goalId],
),
)),
) as _i7.Future<_i2.Goal>);
@override
_i7.Future<_i2.Goal> createGoal(_i2.Goal? goal) => (super.noSuchMethod(
Invocation.method(
#createGoal,
[goal],
),
returnValue: _i7.Future<_i2.Goal>.value(_FakeGoal_0(
this,
Invocation.method(
#createGoal,
[goal],
),
)),
) as _i7.Future<_i2.Goal>);
@override
_i7.Future<_i2.Goal> updateGoal(_i2.Goal? goal) => (super.noSuchMethod(
Invocation.method(
#updateGoal,
[goal],
),
returnValue: _i7.Future<_i2.Goal>.value(_FakeGoal_0(
this,
Invocation.method(
#updateGoal,
[goal],
),
)),
) as _i7.Future<_i2.Goal>);
@override
_i7.Future<bool> canModifyGoals(String? userId) => (super.noSuchMethod(
Invocation.method(
#canModifyGoals,
[userId],
),
returnValue: _i7.Future<bool>.value(false),
) as _i7.Future<bool>);
@override
_i7.Future<void> deleteGoal(String? goalId) => (super.noSuchMethod(
Invocation.method(
#deleteGoal,
[goalId],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<List<_i3.GoalStep>> getGoalSteps(String? goalId) =>
(super.noSuchMethod(
Invocation.method(
#getGoalSteps,
[goalId],
),
returnValue: _i7.Future<List<_i3.GoalStep>>.value(<_i3.GoalStep>[]),
) as _i7.Future<List<_i3.GoalStep>>);
@override
_i7.Future<_i3.GoalStep> createGoalStep(_i3.GoalStep? step) =>
(super.noSuchMethod(
Invocation.method(
#createGoalStep,
[step],
),
returnValue: _i7.Future<_i3.GoalStep>.value(_FakeGoalStep_1(
this,
Invocation.method(
#createGoalStep,
[step],
),
)),
) as _i7.Future<_i3.GoalStep>);
@override
_i7.Future<_i3.GoalStep> updateGoalStep(_i3.GoalStep? step) =>
(super.noSuchMethod(
Invocation.method(
#updateGoalStep,
[step],
),
returnValue: _i7.Future<_i3.GoalStep>.value(_FakeGoalStep_1(
this,
Invocation.method(
#updateGoalStep,
[step],
),
)),
) as _i7.Future<_i3.GoalStep>);
@override
_i7.Future<void> deleteGoalStep(String? stepId) => (super.noSuchMethod(
Invocation.method(
#deleteGoalStep,
[stepId],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<int> getGoalsCount(String? userId) => (super.noSuchMethod(
Invocation.method(
#getGoalsCount,
[userId],
),
returnValue: _i7.Future<int>.value(0),
) as _i7.Future<int>);
}
/// A class which mocks [CountdownRepository].
///
/// See the documentation for Mockito's code generation for more information.
class MockCountdownRepository extends _i1.Mock
implements _i10.CountdownRepository {
MockCountdownRepository() {
_i1.throwOnMissingStub(this);
}
@override
_i7.Future<_i4.User> startCountdown(String? userId) => (super.noSuchMethod(
Invocation.method(
#startCountdown,
[userId],
),
returnValue: _i7.Future<_i4.User>.value(_FakeUser_2(
this,
Invocation.method(
#startCountdown,
[userId],
),
)),
) as _i7.Future<_i4.User>);
@override
_i7.Future<_i4.User> getCountdownInfo(String? userId) => (super.noSuchMethod(
Invocation.method(
#getCountdownInfo,
[userId],
),
returnValue: _i7.Future<_i4.User>.value(_FakeUser_2(
this,
Invocation.method(
#getCountdownInfo,
[userId],
),
)),
) as _i7.Future<_i4.User>);
@override
_i7.Future<bool> hasCountdownStarted(String? userId) => (super.noSuchMethod(
Invocation.method(
#hasCountdownStarted,
[userId],
),
returnValue: _i7.Future<bool>.value(false),
) as _i7.Future<bool>);
}
/// A class which mocks [UserRepository].
///
/// See the documentation for Mockito's code generation for more information.
class MockUserRepository extends _i1.Mock implements _i11.UserRepository {
MockUserRepository() {
_i1.throwOnMissingStub(this);
}
@override
_i7.Future<_i4.User> getProfile(String? userId) => (super.noSuchMethod(
Invocation.method(
#getProfile,
[userId],
),
returnValue: _i7.Future<_i4.User>.value(_FakeUser_2(
this,
Invocation.method(
#getProfile,
[userId],
),
)),
) as _i7.Future<_i4.User>);
@override
_i7.Future<_i4.User> updateProfile({
required String? userId,
String? username,
String? avatarUrl,
String? bio,
bool? isPublicProfile,
String? twitterHandle,
String? instagramHandle,
String? tiktokHandle,
String? websiteUrl,
}) =>
(super.noSuchMethod(
Invocation.method(
#updateProfile,
[],
{
#userId: userId,
#username: username,
#avatarUrl: avatarUrl,
#bio: bio,
#isPublicProfile: isPublicProfile,
#twitterHandle: twitterHandle,
#instagramHandle: instagramHandle,
#tiktokHandle: tiktokHandle,
#websiteUrl: websiteUrl,
},
),
returnValue: _i7.Future<_i4.User>.value(_FakeUser_2(
this,
Invocation.method(
#updateProfile,
[],
{
#userId: userId,
#username: username,
#avatarUrl: avatarUrl,
#bio: bio,
#isPublicProfile: isPublicProfile,
#twitterHandle: twitterHandle,
#instagramHandle: instagramHandle,
#tiktokHandle: tiktokHandle,
#websiteUrl: websiteUrl,
},
),
)),
) as _i7.Future<_i4.User>);
@override
_i7.Future<bool> isUsernameAvailable(String? username) => (super.noSuchMethod(
Invocation.method(
#isUsernameAvailable,
[username],
),
returnValue: _i7.Future<bool>.value(false),
) as _i7.Future<bool>);
@override
_i7.Future<void> deleteAccount(String? userId) => (super.noSuchMethod(
Invocation.method(
#deleteAccount,
[userId],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
}
/// A class which mocks [SocialRepository].
///
/// See the documentation for Mockito's code generation for more information.
class MockSocialRepository extends _i1.Mock implements _i12.SocialRepository {
MockSocialRepository() {
_i1.throwOnMissingStub(this);
}
@override
_i7.Future<void> followUser(
String? userId,
String? targetUserId,
) =>
(super.noSuchMethod(
Invocation.method(
#followUser,
[
userId,
targetUserId,
],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> unfollowUser(
String? userId,
String? targetUserId,
) =>
(super.noSuchMethod(
Invocation.method(
#unfollowUser,
[
userId,
targetUserId,
],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<bool> isFollowing(
String? userId,
String? targetUserId,
) =>
(super.noSuchMethod(
Invocation.method(
#isFollowing,
[
userId,
targetUserId,
],
),
returnValue: _i7.Future<bool>.value(false),
) as _i7.Future<bool>);
@override
_i7.Future<List<_i4.User>> getFollowers(String? userId) =>
(super.noSuchMethod(
Invocation.method(
#getFollowers,
[userId],
),
returnValue: _i7.Future<List<_i4.User>>.value(<_i4.User>[]),
) as _i7.Future<List<_i4.User>>);
@override
_i7.Future<List<_i4.User>> getFollowing(String? userId) =>
(super.noSuchMethod(
Invocation.method(
#getFollowing,
[userId],
),
returnValue: _i7.Future<List<_i4.User>>.value(<_i4.User>[]),
) as _i7.Future<List<_i4.User>>);
@override
_i7.Future<List<_i5.Activity>> getActivityFeed(String? userId) =>
(super.noSuchMethod(
Invocation.method(
#getActivityFeed,
[userId],
),
returnValue: _i7.Future<List<_i5.Activity>>.value(<_i5.Activity>[]),
) as _i7.Future<List<_i5.Activity>>);
@override
_i7.Future<_i5.Activity> logActivity({
required String? userId,
required String? type,
Map<String, dynamic>? payload,
}) =>
(super.noSuchMethod(
Invocation.method(
#logActivity,
[],
{
#userId: userId,
#type: type,
#payload: payload,
},
),
returnValue: _i7.Future<_i5.Activity>.value(_FakeActivity_3(
this,
Invocation.method(
#logActivity,
[],
{
#userId: userId,
#type: type,
#payload: payload,
},
),
)),
) as _i7.Future<_i5.Activity>);
@override
_i7.Future<List<_i4.User>> getLeaderboard({
required String? sortBy,
int? limit = 50,
}) =>
(super.noSuchMethod(
Invocation.method(
#getLeaderboard,
[],
{
#sortBy: sortBy,
#limit: limit,
},
),
returnValue: _i7.Future<List<_i4.User>>.value(<_i4.User>[]),
) as _i7.Future<List<_i4.User>>);
}
/// A class which mocks [NotificationsRepository].
///
/// See the documentation for Mockito's code generation for more information.
class MockNotificationsRepository extends _i1.Mock
implements _i13.NotificationsRepository {
MockNotificationsRepository() {
_i1.throwOnMissingStub(this);
}
@override
_i7.Future<void> showNotification({
required int? id,
required String? title,
required String? body,
String? payload,
}) =>
(super.noSuchMethod(
Invocation.method(
#showNotification,
[],
{
#id: id,
#title: title,
#body: body,
#payload: payload,
},
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> scheduleNotification({
required int? id,
required String? title,
required String? body,
required DateTime? scheduledDate,
String? payload,
}) =>
(super.noSuchMethod(
Invocation.method(
#scheduleNotification,
[],
{
#id: id,
#title: title,
#body: body,
#scheduledDate: scheduledDate,
#payload: payload,
},
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> scheduleDailyReminder({
required int? id,
required String? title,
required String? body,
required int? hour,
required int? minute,
}) =>
(super.noSuchMethod(
Invocation.method(
#scheduleDailyReminder,
[],
{
#id: id,
#title: title,
#body: body,
#hour: hour,
#minute: minute,
},
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> cancelNotification(int? id) => (super.noSuchMethod(
Invocation.method(
#cancelNotification,
[id],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<void> cancelAllNotifications() => (super.noSuchMethod(
Invocation.method(
#cancelAllNotifications,
[],
),
returnValue: _i7.Future<void>.value(),
returnValueForMissingStub: _i7.Future<void>.value(),
) as _i7.Future<void>);
@override
_i7.Future<List<_i14.PendingNotificationRequest>> getPendingNotifications() =>
(super.noSuchMethod(
Invocation.method(
#getPendingNotifications,
[],
),
returnValue: _i7.Future<List<_i14.PendingNotificationRequest>>.value(
<_i14.PendingNotificationRequest>[]),
) as _i7.Future<List<_i14.PendingNotificationRequest>>);
}