< Summary

Class:DCL.ABConverter.DependencyMapBuilder
Assembly:ABConverter
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/ABConverter/DependencyMapBuilder.cs
Covered lines:0
Uncovered lines:17
Coverable lines:17
Total lines:62
Line coverage:0% (0 of 17)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Generate(...)0%56700%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/ABConverter/DependencyMapBuilder.cs

#LineLine coverage
 1using System;
 2using System.Collections.Generic;
 3using System.IO;
 4using System.Linq;
 5using System.Runtime.CompilerServices;
 6using UnityEngine;
 7
 8[assembly: InternalsVisibleTo("AssetBundleBuilderEditorTests")]
 9
 10namespace DCL.ABConverter
 11{
 12    public static class DependencyMapBuilder
 13    {
 14        [System.Serializable]
 15        public class AssetDependencyMap
 16        {
 17            public string[] dependencies;
 18        }
 19
 20        /// <summary>
 21        /// This dumps .depmap files
 22        /// </summary>
 23        /// <param name="manifest"></param>
 24        public static void Generate(IFile file, string path, Dictionary<string, string> hashLowercaseToHashProper, Asset
 25        {
 026            string[] assetBundles = manifest.GetAllAssetBundles();
 27
 028            for (int i = 0; i < assetBundles.Length; i++)
 29            {
 030                if (string.IsNullOrEmpty(assetBundles[i]))
 31                    continue;
 32
 033                var depMap = new AssetDependencyMap();
 034                string[] deps = manifest.GetAllDependencies(assetBundles[i]);
 35
 036                if (deps.Length > 0)
 37                {
 038                    deps = deps.Where(s => s != exceptions).ToArray();
 39
 040                    depMap.dependencies = deps.Select((x) =>
 41                                              {
 042                                                  if (hashLowercaseToHashProper.ContainsKey(x))
 043                                                      return hashLowercaseToHashProper[x];
 44                                                  else
 045                                                      return x;
 46                                              })
 47                                              .ToArray();
 48                }
 49
 050                string json = JsonUtility.ToJson(depMap);
 051                string finalFilename = assetBundles[i];
 52
 053                hashLowercaseToHashProper.TryGetValue(assetBundles[i], out finalFilename);
 54
 055                if (!string.IsNullOrEmpty(finalFilename))
 56                {
 057                    file.WriteAllText(path + finalFilename + ".depmap", json);
 58                }
 59            }
 060        }
 61    }
 62}