< Summary

Class:ExternalUrlPromptView
Assembly:ExternalUrlPromptHUD
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/ExternalUrlPromptHUD/ExternalUrlPromptView.cs
Covered lines:4
Uncovered lines:7
Coverable lines:11
Total lines:38
Line coverage:36.3% (4 of 11)
Covered branches:0
Total branches:0
Covered methods:1
Total methods:4
Method coverage:25% (1 of 4)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Awake()0%110100%
RequestOpenUrl(...)0%2100%
Dismiss()0%6200%
Approve()0%20400%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/ExternalUrlPromptHUD/ExternalUrlPromptView.cs

#LineLine coverage
 1using System;
 2using UnityEngine;
 3using UnityEngine.UI;
 4
 5public class ExternalUrlPromptView : MonoBehaviour
 6{
 7    [SerializeField] internal GameObject content;
 8    [SerializeField] internal Button closeButton;
 9    [SerializeField] internal Button continueButton;
 10    [SerializeField] internal Button cancelButton;
 11    [SerializeField] internal TMPro.TextMeshProUGUI domainText;
 12    [SerializeField] internal TMPro.TextMeshProUGUI urlText;
 13    [SerializeField] internal Toggle trustToggle;
 14    [SerializeField] internal ShowHideAnimator showHideAnimator;
 15
 16    internal enum ResultType { CANCELED, APPROVED, APPROVED_TRUSTED }
 17
 18    Action<ResultType> resultCallback = null;
 19
 20    void Awake()
 21    {
 222        closeButton.onClick.AddListener(Dismiss);
 223        cancelButton.onClick.AddListener(Dismiss);
 224        continueButton.onClick.AddListener(Approve);
 225    }
 26
 27    internal void RequestOpenUrl(Uri uri, Action<ResultType> result)
 28    {
 029        resultCallback = result;
 030        domainText.text = uri.Host;
 031        urlText.text = uri.OriginalString;
 032        trustToggle.isOn = false;
 033    }
 34
 035    private void Dismiss() { resultCallback?.Invoke(ResultType.CANCELED); }
 36
 037    private void Approve() { resultCallback?.Invoke(trustToggle.isOn ? ResultType.APPROVED_TRUSTED : ResultType.APPROVED
 38}