< Summary

Class:AnalyticsHelper
Assembly:AnalyticsHelper
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Helpers/AnalyticsHelper/AnalyticsHelper.cs
Covered lines:15
Uncovered lines:2
Coverable lines:17
Total lines:33
Line coverage:88.2% (15 of 17)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
AddSceneNameAndBasePositionToDictionary(...)0%3.023087.5%
SendExternalLinkAnalytic(...)0%2.012087.5%
SendExternalLinkAnalytic(...)0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Helpers/AnalyticsHelper/AnalyticsHelper.cs

#LineLine coverage
 1using DCL;
 2using System.Collections.Generic;
 3
 4public static class AnalyticsHelper
 5{
 6    public static void AddSceneNameAndBasePositionToDictionary(Dictionary<string, string> analyticDict)
 7    {
 38        IWorldState worldState = Environment.i.world.state;
 39        int sceneNumber = worldState.GetCurrentSceneNumber();
 10
 311        if (!worldState.TryGetScene(sceneNumber, out var scene))
 012            return;
 13
 314        if (sceneNumber > 0)
 15        {
 316            analyticDict.Add("base_parcel_position", scene.sceneData.basePosition.x + "," + scene.sceneData.basePosition
 317            analyticDict.Add("scene", $"scene number: {sceneNumber}");
 18        }
 319    }
 20
 21    public static void SendExternalLinkAnalytic(string url, string nftToken)
 22    {
 323        Dictionary<string, string> eventToSend = new Dictionary<string, string>();
 324        eventToSend.Add("url", url);
 325        if (nftToken != null)
 026            eventToSend.Add("nft_token_id", nftToken);
 327        AddSceneNameAndBasePositionToDictionary(eventToSend);
 328        IAnalytics analytics = Environment.i.platform.serviceProviders.analytics;
 329        analytics.SendAnalytic("external_link_open", eventToSend);
 330    }
 31
 632    public static void SendExternalLinkAnalytic(string url) { SendExternalLinkAnalytic(url, null); }
 33}