test: add fake token storage implementation for testing purposes
This commit is contained in:
@@ -2,6 +2,8 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:recipe_flutter/core/api/api_client.dart';
|
||||
import 'package:recipe_flutter/core/api/api_exception.dart';
|
||||
import 'package:recipe_flutter/core/platform/platform_providers.dart';
|
||||
import 'package:recipe_flutter/core/platform/token_storage.dart';
|
||||
import 'package:recipe_flutter/features/profile/data/profile_repository.dart';
|
||||
import 'package:recipe_flutter/features/profile/domain/user_profile.dart';
|
||||
|
||||
@@ -32,6 +34,20 @@ class _FakeApiClient extends ApiClient {
|
||||
}
|
||||
}
|
||||
|
||||
/// In-memory token storage — no platform channels, no SharedPreferences.
|
||||
class _FakeTokenStorage implements ITokenStorage {
|
||||
String? _token;
|
||||
|
||||
@override
|
||||
Future<String?> getToken() async => _token;
|
||||
|
||||
@override
|
||||
Future<void> saveToken(String token) async => _token = token;
|
||||
|
||||
@override
|
||||
Future<void> deleteToken() async => _token = null;
|
||||
}
|
||||
|
||||
void main() {
|
||||
late _FakeApiClient fakeClient;
|
||||
late ProviderContainer container;
|
||||
@@ -48,7 +64,10 @@ void main() {
|
||||
setUp(() {
|
||||
fakeClient = _FakeApiClient();
|
||||
container = ProviderContainer(
|
||||
overrides: [apiClientProvider.overrideWithValue(fakeClient)],
|
||||
overrides: [
|
||||
apiClientProvider.overrideWithValue(fakeClient),
|
||||
tokenStorageProvider.overrideWithValue(_FakeTokenStorage()),
|
||||
],
|
||||
);
|
||||
repo = container.read(profileRepositoryProvider);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user