< Summary

Class:MainScripts.DCL.Controllers.HUD.TaskbarHUD.ReportBugButton
Assembly:TaskbarHUD
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/TaskbarHUD/ReportBugButton.cs
Covered lines:1
Uncovered lines:17
Coverable lines:18
Total lines:77
Line coverage:5.5% (1 of 18)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Awake()0%110100%
ReportBug()0%12300%
GetOSInfo()0%2100%
GetCPUInfo()0%2100%
GetMemoryInfo()0%2100%
GetGraphicsCardInfo()0%2100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/TaskbarHUD/ReportBugButton.cs

#LineLine coverage
 1using DCL;
 2using DCL.Interface;
 3using MainScripts.DCL.WebPlugin;
 4using UnityEngine;
 5using UnityEngine.Networking;
 6using UnityEngine.UI;
 7
 8namespace MainScripts.DCL.Controllers.HUD.TaskbarHUD
 9{
 10    public class ReportBugButton : MonoBehaviour
 11    {
 12        private const string ReportBugURL = "https://github.com/decentraland/issues/issues/new?assignees=&labels=new%2Ce
 13
 14        [SerializeField] private Button button;
 15
 2216        private void Awake() { button.onClick.AddListener(ReportBug); }
 17
 18        private void ReportBug()
 19        {
 020            var userProfile = UserProfile.GetOwnUserProfile();
 021            var nametag = UnityWebRequest.EscapeURL(userProfile.userName);
 022            var kernelConfig = KernelConfig.i.Get();
 023            var realm = DataStore.i.playerRealm.Get()?.serverName;
 024            var unityVersion = kernelConfig.rendererVersion;
 025            var kernelVersion = kernelConfig.kernelVersion;
 26
 027            var os = UnityWebRequest.EscapeURL(GetOSInfo());
 028            var cpu = UnityWebRequest.EscapeURL(GetCPUInfo());
 029            var ram = UnityWebRequest.EscapeURL(GetMemoryInfo());
 030            var gpu = UnityWebRequest.EscapeURL(GetGraphicsCardInfo());
 31
 032            string url = $"{ReportBugURL}" +
 33                         $"&unity={unityVersion}" +
 34                         $"&kernel={kernelVersion}" +
 35                         $"&os={os}" +
 36                         $"&cpu={cpu}" +
 37                         $"&ram={ram}" +
 38                         $"&gpu={gpu}" +
 39                         $"&nametag={nametag}" +
 40                         $"&realm={realm}";
 41
 042            WebInterface.OpenURL(url);
 043        }
 44        private string GetOSInfo()
 45        {
 46#if UNITY_WEBGL
 47            return WebGLPlugin.GetUserAgent();
 48#else
 049            return SystemInfo.operatingSystem;
 50#endif
 51        }
 52
 53        private string GetCPUInfo()
 54        {
 55#if UNITY_WEBGL
 56            return "";
 57#else
 058            return SystemInfo.processorType;
 59#endif
 60        }
 61
 62        private string GetMemoryInfo()
 63        {
 64#if UNITY_WEBGL
 65            return "";
 66#else
 067            return $"{SystemInfo.systemMemorySize}MB";
 68#endif
 69        }
 70
 71        private string GetGraphicsCardInfo()
 72        {
 073            return $"{SystemInfo.graphicsDeviceName} " +
 74                   $"{SystemInfo.graphicsMemorySize}MB";
 75        }
 76    }
 77}