< Summary

Class:DCL.HelpAndSupportHUD.HelpAndSupportHUDView
Assembly:HelpAndSupportHUD
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/HelpAndSupportHUD/HelpAndSupportHUDView.cs
Covered lines:19
Uncovered lines:2
Coverable lines:21
Total lines:63
Line coverage:90.4% (19 of 21)
Covered branches:0
Total branches:0
Covered methods:3
Total methods:3
Method coverage:100% (3 of 3)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Initialize()0%110100%
SetVisibility(...)0%2.092071.43%
Dispose()0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/HelpAndSupportHUD/HelpAndSupportHUDView.cs

#LineLine coverage
 1using DCL.Interface;
 2using System;
 3using UnityEngine;
 4using UnityEngine.Events;
 5using UnityEngine.UI;
 6
 7namespace DCL.HelpAndSupportHUD
 8{
 9    public class HelpAndSupportHUDView : MonoBehaviour, IHelpAndSupportHUDView
 10    {
 11        [SerializeField] private ShowHideAnimator helpAndSupportAnimator;
 12        [SerializeField] private Button contactSupportButton;
 13        [SerializeField] private Button joinDiscordButton;
 14        [SerializeField] private Button visitFAQButton;
 15        [SerializeField] private Button closeButton;
 16        [SerializeField] internal InputAction_Trigger closeAction;
 17
 18        private InputAction_Trigger.Triggered closeActionDelegate;
 19
 20        public event Action OnDiscordButtonPressed;
 21        public event Action OnFaqButtonPressed;
 22        public event Action OnSupportButtonPressed;
 23
 24        public void Initialize()
 25        {
 126            closeActionDelegate = (x) => SetVisibility(false);
 27
 128            contactSupportButton.onClick.AddListener(() => OnSupportButtonPressed?.Invoke());
 129            joinDiscordButton.onClick.AddListener(() => OnDiscordButtonPressed?.Invoke());
 130            visitFAQButton.onClick.AddListener(() => OnFaqButtonPressed?.Invoke());
 31
 132            closeButton.onClick.AddListener(() => { SetVisibility(false); });
 133        }
 34
 35        public void SetVisibility(bool visible)
 36        {
 137            DataStore.i.exploreV2.isSomeModalOpen.Set(visible);
 38
 139            closeAction.OnTriggered -= closeActionDelegate;
 40
 141            if (visible)
 42            {
 143                helpAndSupportAnimator.Show();
 144                closeAction.OnTriggered += closeActionDelegate;
 45            }
 46            else
 047                helpAndSupportAnimator.Hide();
 048        }
 49
 50        public void Dispose()
 51        {
 152            contactSupportButton.onClick.RemoveAllListeners();
 153            joinDiscordButton.onClick.RemoveAllListeners();
 154            visitFAQButton.onClick.RemoveAllListeners();
 155            closeButton.onClick.RemoveAllListeners();
 56
 157            closeAction.OnTriggered -= closeActionDelegate;
 158            closeActionDelegate = null;
 59
 160            Destroy(gameObject);
 161        }
 62    }
 63}