< 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:18
Coverable lines:19
Total lines:86
Line coverage:5.2% (1 of 19)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Awake()0%110100%
ReportBug()0%12300%
GetLabels()0%2100%
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                         $"&labels={GetLabels()}";
 42
 043            WebInterface.OpenURL(url);
 044        }
 45        private string GetLabels()
 46        {
 47#if UNITY_WEBGL
 48            return "explorer,new";
 49#else
 050            return "explorer-desktop,new";
 51#endif
 52        }
 53        private string GetOSInfo()
 54        {
 55#if UNITY_WEBGL
 56            return WebGLPlugin.GetUserAgent();
 57#else
 058            return SystemInfo.operatingSystem;
 59#endif
 60        }
 61
 62        private string GetCPUInfo()
 63        {
 64#if UNITY_WEBGL
 65            return "";
 66#else
 067            return SystemInfo.processorType;
 68#endif
 69        }
 70
 71        private string GetMemoryInfo()
 72        {
 73#if UNITY_WEBGL
 74            return "";
 75#else
 076            return $"{SystemInfo.systemMemorySize}MB";
 77#endif
 78        }
 79
 80        private string GetGraphicsCardInfo()
 81        {
 082            return $"{SystemInfo.graphicsDeviceName} " +
 83                   $"{SystemInfo.graphicsMemorySize}MB";
 84        }
 85    }
 86}