Skip to content

Instantly share code, notes, and snippets.

@cdmunoz
Created July 24, 2023 01:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cdmunoz/2490456068756fd72acd1a47131a115f to your computer and use it in GitHub Desktop.
Save cdmunoz/2490456068756fd72acd1a47131a115f to your computer and use it in GitHub Desktop.
/// Stub that holds all of the values in memory
class StubStorage implements Storage {
final hash = <String, dynamic>{};
@override
bool? getBool(String key) => hash[key] as bool?;
@override
String? getString(String key) => hash[key] as String?;
@override
Future<void> setBool(String key, bool? value) async => hash[key] = value;
@override
Future<void> setString(String key, String? value) async => hash[key] = value;
@override
Future<bool> remove(String key) {
final result = hash.remove(key) != null;
return Future.value(result);
}
@override
Future<bool> clear() {
hash.clear();
return Future.value(true);
}
@override
Future<bool> removeAll(Iterable<String> keys) {
keys.forEach(hash.remove);
return Future.value(true);
}
@override
Future<void> reload() {
return Future.value(null);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment