< Summary

Class:NFTItemToggle
Assembly:AvatarEditorHUD
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/AvatarEditorHUD/Scripts/NFTItemToggle.cs
Covered lines:5
Uncovered lines:25
Coverable lines:30
Total lines:72
Line coverage:16.6% (5 of 30)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Awake()0%2100%
Initialize(...)0%110100%
SetSelection(...)0%2.152066.67%
OnDestroy()0%2100%
ShowInfo()0%12300%
HideInfo()0%6200%
ToggleInfo()0%6200%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/AvatarEditorHUD/Scripts/NFTItemToggle.cs

#LineLine coverage
 1using System;
 2using UnityEngine;
 3using UnityEngine.UI;
 4
 5public class NFTItemToggle : ItemToggle
 6{
 7    [SerializeField] internal NFTItemInfo nftItemInfo;
 8    [SerializeField] internal Button infoButton;
 9    [SerializeField] internal Button closeInfoButton;
 10    [SerializeField] internal Button sellButton;
 11
 12    private static event Action OnHideAllInfos;
 13
 14    protected override void Awake()
 15    {
 016        base.Awake();
 17
 018        OnHideAllInfos += HideInfo;
 19
 020        HideInfo();
 021        infoButton.onClick.AddListener(ToggleInfo);
 022        closeInfoButton.onClick.AddListener(HideInfo);
 023        sellButton.onClick.AddListener(CallOnSellClicked);
 024    }
 25
 26    public override void Initialize(WearableItem w, bool isSelected, int amount)
 27    {
 3228        base.Initialize(w, isSelected, amount);
 3229        nftItemInfo.SetModel(NFTItemInfo.Model.FromWearableItem(wearableItem));
 3230    }
 31
 32    protected override void SetSelection(bool isSelected)
 33    {
 5234        base.SetSelection(isSelected);
 5235        OnHideAllInfos?.Invoke();
 036    }
 37
 38    protected override void OnDestroy()
 39    {
 040        OnHideAllInfos -= HideInfo;
 041        base.OnDestroy();
 042    }
 43
 44    private void ShowInfo()
 45    {
 046        if (!nftItemInfo.gameObject.activeSelf)
 047            AudioScriptableObjects.dialogOpen.Play(true);
 48
 049        OnHideAllInfos?.Invoke();
 050        nftItemInfo.SetActive(true);
 051    }
 52
 53    private void HideInfo()
 54    {
 055        if (nftItemInfo.gameObject.activeSelf)
 056            AudioScriptableObjects.dialogClose.Play(true);
 57
 058        nftItemInfo.SetActive(false);
 059    }
 60
 61    private void ToggleInfo()
 62    {
 063        if (nftItemInfo.gameObject.activeSelf)
 64        {
 065            HideInfo();
 066        }
 67        else
 68        {
 069            ShowInfo();
 70        }
 071    }
 72}