< 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
Covered methods:5
Total methods:5
Method coverage:100% (5 of 5)

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
 17511        protected DataStore_FeatureFlag featureFlags { get; }
 12
 222313        protected AssetResolverBase(DataStore_FeatureFlag featureFlags)
 14        {
 222315            this.featureFlags = featureFlags;
 222316        }
 17
 18        protected static bool HasFlag(AssetSource permittedSources, AssetSource source) =>
 90019            EnumUtils.HasFlag(permittedSources, source);
 20
 21        protected static PoolUtils.ListPoolRent<T> GetPermittedProviders<T>(IReadOnlyDictionary<AssetSource, T> provider
 22        {
 18023            var listPoolRent = PoolUtils.RentList<T>();
 18024            var permittedProviders = listPoolRent.GetList();
 25
 216026            foreach (AssetSource assetSource in SOURCES)
 27            {
 90028                if (!HasFlag(permittedSources, assetSource))
 29                    continue;
 30
 48431                if (!providers.TryGetValue(assetSource, out var provider))
 32                    continue;
 33
 19134                permittedProviders.Add(provider);
 35            }
 36
 18037            return listPoolRent;
 38        }
 39    }
 40}