< Summary

Class:UIComponents.Scripts.Components.PageSelectorButtonComponentView
Assembly:UIComponents
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/UIComponents/Scripts/Components/PageSelector/PageSelectorButtonComponentView.cs
Covered lines:10
Uncovered lines:3
Coverable lines:13
Total lines:47
Line coverage:76.9% (10 of 13)
Covered branches:0
Total branches:0
Covered methods:5
Total methods:8
Method coverage:62.5% (5 of 8)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
PageSelectorButtonComponentView()0%110100%
Awake()0%110100%
RefreshControl()0%2100%
Initialize(...)0%110100%
Toggle(...)0%110100%
OnButtonDown()0%6200%
OnFocus()0%2100%
OnLoseFocus()0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/UIComponents/Scripts/Components/PageSelector/PageSelectorButtonComponentView.cs

#LineLine coverage
 1using System;
 2using TMPro;
 3using UnityEngine;
 4using UnityEngine.UI;
 5
 6namespace UIComponents.Scripts.Components
 7{
 8    public class PageSelectorButtonComponentView : BaseComponentView
 9    {
 10        public event Action<int> OnPageClicked;
 11
 12        [SerializeField] private TMP_Text text;
 13        [SerializeField] private Button button;
 14        [SerializeField] private Animator anim;
 15
 116        private static readonly int IS_ACTIVE = Animator.StringToHash("IsActive");
 117        private static readonly int IS_HOVER = Animator.StringToHash("IsHover");
 18
 19        private int pageNumber;
 20
 21        public override void Awake()
 22        {
 3523            base.Awake();
 3524            button.onClick.AddListener(OnButtonDown);
 3525        }
 26
 027        public override void RefreshControl() { }
 28
 29        public void Initialize(int i)
 30        {
 3531            pageNumber = i;
 3532            text.text = (i + 1).ToString();
 3533        }
 34
 35        public void Toggle(bool b) =>
 7036            anim.SetBool(IS_ACTIVE, b);
 37
 38        private void OnButtonDown() =>
 039            OnPageClicked?.Invoke(pageNumber);
 40
 41        public override void OnFocus() =>
 042            anim.SetBool(IS_HOVER, true);
 43
 44        public override void OnLoseFocus() =>
 4045            anim.SetBool(IS_HOVER, false);
 46    }
 47}