< Summary

Class:ShowHideUIByTrigger
Assembly:HUDCommon
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/Common/ShowHideUIByTrigger.cs
Covered lines:15
Uncovered lines:1
Coverable lines:16
Total lines:38
Line coverage:93.7% (15 of 16)
Covered branches:0
Total branches:0
Covered methods:4
Total methods:4
Method coverage:100% (4 of 4)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Awake()0%110100%
OnDestroy()0%110100%
AllUIVisible_OnChange(...)0%110100%
SetUIVisibility(...)0%5.055087.5%

File(s)

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

#LineLine coverage
 1using UnityEngine;
 2
 3/// <summary>
 4/// Attaching this component to a canvas, will hide/show it after triggering the ToggleUIVisibility input action.
 5/// </summary>
 6[RequireComponent(typeof(CanvasGroup))]
 7public class ShowHideUIByTrigger : MonoBehaviour
 8{
 9    private CanvasGroup canvasGroup;
 10    private ShowHideAnimator showHideAnimator;
 11    private Animator animator;
 12
 13    private void Awake()
 14    {
 68215        canvasGroup = GetComponent<CanvasGroup>();
 68216        showHideAnimator = GetComponent<ShowHideAnimator>();
 68217        animator = GetComponent<Animator>();
 68218        CommonScriptableObjects.allUIHidden.OnChange += AllUIVisible_OnChange;
 68219        SetUIVisibility(!CommonScriptableObjects.allUIHidden.Get());
 68220    }
 21
 134222    private void OnDestroy() { CommonScriptableObjects.allUIHidden.OnChange -= AllUIVisible_OnChange; }
 23
 2024    private void AllUIVisible_OnChange(bool current, bool previous) { SetUIVisibility(!current); }
 25
 26    protected virtual void SetUIVisibility(bool isVisible)
 27    {
 68228        if (showHideAnimator != null)
 66029            showHideAnimator.enabled = isVisible;
 30
 68231        if (animator != null)
 032            animator.enabled = isVisible;
 33
 68234        canvasGroup.alpha = isVisible ? 1f : 0f;
 68235        canvasGroup.interactable = isVisible;
 68236        canvasGroup.blocksRaycasts = isVisible;
 68237    }
 38}