LCOV - code coverage report
Current view: top level - lib/api/utils - api_cache.dart Coverage Total Hit
Test: lcov.info Lines: 71.4 % 14 10
Test Date: 2025-05-10 20:26:13 Functions: - 0 0

            Line data    Source code
       1              : class ApiCache {
       2              :   final Map<String, ApiCacheEntry> _cache = {};
       3              : 
       4            2 :   ApiCacheEntry<T> get<T>(String key) {
       5            4 :     if (!_cache.containsKey(key)) {
       6            6 :       _cache[key] = ApiCacheEntry<T>();
       7              :     }
       8            4 :     return _cache[key] as ApiCacheEntry<T>;
       9              :   }
      10              : 
      11            0 :   void clear() {
      12            0 :     _cache.clear();
      13              :   }
      14              : 
      15            0 :   void remove(String key) {
      16            0 :     _cache.remove(key);
      17              :   }
      18              : }
      19              : 
      20              : class ApiCacheEntry<T> {
      21              :   T? _cachedData;
      22              : 
      23            4 :   bool get shouldReload => _cachedData == null;
      24            2 :   T get data => _cachedData!;
      25            2 :   set data(T value) {
      26            2 :     _cachedData = value;
      27              :   }
      28              : 
      29            1 :   void markAsShouldReload() {
      30            1 :     _cachedData = null;
      31              :   }
      32              : }
        

Generated by: LCOV version 2.3-1