< Summary

Class:MainScripts.DCL.Controllers.AssetManager.AssetResolverBase
Assembly:AssetPromiseKeeper
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/AssetManager/AssetResolverBase.cs
Covered lines:13
Uncovered lines:0
Coverable lines:13
Total lines:40
Line coverage:100% (13 of 13)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
AssetResolverBase()0%110100%
AssetResolverBase(...)0%110100%
HasFlag(...)0%110100%
GetPermittedProviders[T](...)0%440100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/AssetManager/AssetResolverBase.cs

#LineLine coverage
 1using DCL;
 2using MainScripts.DCL.Helpers.Utils;
 3using System.Collections.Generic;
 4
 5namespace MainScripts.DCL.Controllers.AssetManager
 6{
 7    public abstract class AssetResolverBase
 8    {
 19        protected static readonly AssetSource[] SOURCES = EnumUtils.Values<AssetSource>();
 10
 23411        protected DataStore_FeatureFlag featureFlags { get; }
 12
 209113        protected AssetResolverBase(DataStore_FeatureFlag featureFlags)
 14        {
 209115            this.featureFlags = featureFlags;
 209116        }
 17
 18        protected static bool HasFlag(AssetSource permittedSources, AssetSource source) =>
 96019            EnumUtils.HasFlag(permittedSources, source);
 20
 21        protected static PoolUtils.ListPoolRent<T> GetPermittedProviders<T>(IReadOnlyDictionary<AssetSource, T> provider
 22        {
 19223            var listPoolRent = PoolUtils.RentList<T>();
 19224            var permittedProviders = listPoolRent.GetList();
 25
 230426            foreach (AssetSource assetSource in SOURCES)
 27            {
 96028                if (!HasFlag(permittedSources, assetSource))
 29                    continue;
 30
 60031                if (!providers.TryGetValue(assetSource, out var provider))
 32                    continue;
 33
 25034                permittedProviders.Add(provider);
 35            }
 36
 19237            return listPoolRent;
 38        }
 39    }
 40}