< Summary

Class:DCL.HUD.Common.ContentSizeFitterMaxHeight
Assembly:HUDCommon
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/Common/ContentSizeFitterMaxHeight.cs
Covered lines:17
Uncovered lines:3
Coverable lines:20
Total lines:66
Line coverage:85% (17 of 20)
Covered branches:0
Total branches:0
Covered methods:6
Total methods:8
Method coverage:75% (6 of 8)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
OnEnable()0%110100%
OnDisable()0%110100%
OnRectTransformDimensionsChange()0%110100%
SetLayoutHorizontal()0%2100%
SetLayoutVertical()0%2100%
SetDirty()0%220100%
OnValidate()0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/Common/ContentSizeFitterMaxHeight.cs

#LineLine coverage
 1using UnityEngine;
 2using UnityEngine.EventSystems;
 3using UnityEngine.UI;
 4
 5namespace DCL.HUD.Common
 6{
 7    [ExecuteAlways]
 8    [RequireComponent(typeof(RectTransform))]
 9    public class ContentSizeFitterMaxHeight : UIBehaviour, ILayoutSelfController
 10    {
 11        [SerializeField] private float maxHeight;
 12
 13        private RectTransform internalRectTransform;
 14        private RectTransform rectTransform
 15        {
 16            get
 17            {
 3618                if (internalRectTransform == null)
 1219                    internalRectTransform = GetComponent<RectTransform>();
 3620                return internalRectTransform;
 21            }
 22        }
 23
 24        protected override void OnEnable()
 25        {
 1226            base.OnEnable();
 1227            SetDirty();
 1228        }
 29
 30        protected override void OnDisable()
 31        {
 1232            LayoutRebuilder.MarkLayoutForRebuild(rectTransform);
 1233            base.OnDisable();
 1234        }
 35
 36        protected override void OnRectTransformDimensionsChange()
 37        {
 3638            SetDirty();
 3639        }
 40
 41        public virtual void SetLayoutHorizontal()
 42        {
 043        }
 44
 45        public virtual void SetLayoutVertical()
 46        {
 047            rectTransform.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical,
 48                Mathf.Min(LayoutUtility.GetPreferredSize(rectTransform, 1), maxHeight));
 049        }
 50
 51        private void SetDirty()
 52        {
 4953            if (!IsActive())
 2554                return;
 55
 2456            LayoutRebuilder.MarkLayoutForRebuild(rectTransform);
 2457        }
 58
 59#if UNITY_EDITOR
 60        protected override void OnValidate()
 61        {
 162            SetDirty();
 163        }
 64#endif
 65    }
 66}