< Summary

Class:MainScripts.DCL.Controllers.HUD.CharacterPreview.CharacterPreviewFactory
Assembly:CharacterPreviewController
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/CharacterPreview/CharacterPreviewFactory.cs
Covered lines:4
Uncovered lines:9
Coverable lines:13
Total lines:44
Line coverage:30.7% (4 of 13)
Covered branches:0
Total branches:0
Covered methods:3
Total methods:4
Method coverage:75% (3 of 4)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
CharacterPreviewFactory()0%110100%
Create(...)0%2100%
Dispose()0%110100%
Initialize()0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/CharacterPreview/CharacterPreviewFactory.cs

#LineLine coverage
 1using DCL;
 2using System;
 3using UnityEngine;
 4using Object = UnityEngine.Object;
 5
 6namespace MainScripts.DCL.Controllers.HUD.CharacterPreview
 7{
 8    public class CharacterPreviewFactory : ICharacterPreviewFactory
 9    {
 110        private static readonly Vector3 COORDS_TO_START = new (0, 50, 0);
 111        private static readonly Vector3 VECTOR_BETWEEN_INSTANCES = new (3, 0, 3);
 12
 13        private int controllersCount;
 14
 15        private CharacterPreviewController prefab;
 16
 17        public ICharacterPreviewController Create(
 18            CharacterPreviewMode loadingMode,
 19            RenderTexture renderTexture,
 20            bool isVisible,
 21            PreviewCameraFocus previewCameraFocus = PreviewCameraFocus.DefaultEditing,
 22            bool isAvatarShadowActive = false)
 23        {
 024            var instance = Object.Instantiate(prefab);
 025            instance.transform.position = COORDS_TO_START + (VECTOR_BETWEEN_INSTANCES * controllersCount);
 26
 027            var characterPreviewController = instance.gameObject.GetComponent<CharacterPreviewController>();
 28
 029            characterPreviewController.Initialize(loadingMode, renderTexture, new PreviewCameraController());
 030            characterPreviewController.SetEnabled(isVisible);
 031            characterPreviewController.SetCharacterShadowActive(isAvatarShadowActive);
 032            characterPreviewController.SetFocus(previewCameraFocus, false);
 33
 034            controllersCount++;
 35
 036            return characterPreviewController;
 37        }
 38
 42539        void IDisposable.Dispose() { }
 40
 41        void IService.Initialize() =>
 42542            prefab = Resources.Load<CharacterPreviewController>("CharacterPreview");
 43    }
 44}