< Summary

Class:DCL.MainSceneFactory
Assembly:InitialSceneReferences
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/InitialSceneReferences/MainSceneFactory.cs
Covered lines:37
Uncovered lines:1
Coverable lines:38
Total lines:79
Line coverage:97.3% (37 of 38)
Covered branches:0
Total branches:0
Covered methods:8
Total methods:9
Method coverage:88.8% (8 of 9)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
CreatePlayerSystems()0%110100%
CreateMouseCatcher()0%110100%
CreateHudController()0%2100%
CreateAudioHandler()0%110100%
CreateNavMap()0%110100%
CreateEnvironment(...)0%110100%
CreateBridges()0%220100%
CreateEventSystem()0%110100%
LoadAndInstantiate(...)0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/InitialSceneReferences/MainSceneFactory.cs

#LineLine coverage
 1using System.Collections.Generic;
 2using UnityEngine;
 3using UnityEngine.SocialPlatforms.Impl;
 4
 5namespace DCL
 6{
 7    public static class MainSceneFactory
 8    {
 9        public static List<GameObject> CreatePlayerSystems()
 10        {
 32411            List<GameObject> result = new List<GameObject>();
 32412            GameObject playerGo = LoadAndInstantiate("Player");
 32413            var playerReferences = playerGo.GetComponent<PlayerReferences>();
 32414            SceneReferences.i.playerAvatarController = playerReferences.avatarController;
 32415            SceneReferences.i.inputController = playerReferences.inputController;
 32416            SceneReferences.i.cursorCanvas = playerReferences.cursorCanvas;
 32417            SceneReferences.i.cameraController = playerReferences.cameraController;
 32418            SceneReferences.i.mainCamera = playerReferences.mainCamera;
 32419            SceneReferences.i.thirdPersonCamera = playerReferences.thirdPersonCamera;
 32420            SceneReferences.i.firstPersonCamera = playerReferences.firstPersonCamera;
 21
 22            // Why we don't just add the playerGo?
 23            // This happens because the characterController reparents itself.
 24            // (and any of our systems may do this as well).
 32425            result.Add( playerReferences.cursorCanvas.gameObject );
 32426            result.Add( playerReferences.cameraController.gameObject );
 32427            result.Add( playerReferences.inputController.gameObject );
 32428            result.Add( playerReferences.avatarController.gameObject );
 32429            result.Add( playerGo );
 30
 32431            return result;
 32        }
 33
 34        public static GameObject CreateMouseCatcher()
 35        {
 336            GameObject result = LoadAndInstantiate("MouseCatcher");
 337            MouseCatcher mouseCatcher = result.GetComponent<MouseCatcher>();
 338            SceneReferences.i.mouseCatcher = mouseCatcher;
 339            return result;
 40        }
 41
 042        public static GameObject CreateHudController() => LoadAndInstantiate("HUDController");
 43
 2544        public static GameObject CreateAudioHandler() => LoadAndInstantiate("HUDAudioHandler");
 45
 146        public static GameObject CreateNavMap() => LoadAndInstantiate("NavMap");
 47
 48        public static GameObject CreateEnvironment(string prefabPath = "Environment")
 49        {
 8250            GameObject result = LoadAndInstantiate(prefabPath);
 8251            var env = result.GetComponent<EnvironmentReferences>();
 8252            SceneReferences.i.environmentLight = env.environmentLight;
 8253            SceneReferences.i.postProcessVolume = env.postProcessVolume;
 8254            SceneReferences.i.groundVisual = env.ground;
 8255            return result;
 56        }
 57
 58        public static GameObject CreateBridges()
 59        {
 360            if (SceneReferences.i.bridgeGameObject == null)
 61            {
 162                var bridges = LoadAndInstantiate("Bridges");
 163                SceneReferences.i.bridgeGameObject = bridges;
 164                return bridges;
 65            }
 66
 267            return SceneReferences.i.bridgeGameObject;
 68        }
 69
 7470        public static GameObject CreateEventSystem() => LoadAndInstantiate("EventSystem");
 71
 72        private static GameObject LoadAndInstantiate(string name)
 73        {
 51074            GameObject instance = UnityEngine.Object.Instantiate(Resources.Load(name)) as GameObject;
 51075            instance.name = name;
 51076            return instance;
 77        }
 78    }
 79}