< Summary

Class:ExploreV2Analytics.ExploreV2Analytics
Assembly:ExploreV2Analytics
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Analytics/ExploreV2Analytics/ExploreV2Analytics.cs
Covered lines:7
Uncovered lines:39
Coverable lines:46
Total lines:112
Line coverage:15.2% (7 of 46)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
SendExploreMainMenuVisibility(...)0%3.433063.64%
SendExploreSectionVisibility(...)0%12300%
SendEventTeleport(...)0%2100%
SendClickOnEventInfo(...)0%2100%
SendPlaceTeleport(...)0%2100%
SendClickOnPlaceInfo(...)0%2100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Analytics/ExploreV2Analytics/ExploreV2Analytics.cs

#LineLine coverage
 1using System;
 2using System.Collections.Generic;
 3using UnityEngine;
 4
 5namespace ExploreV2Analytics
 6{
 7    public interface IExploreV2Analytics
 8    {
 9        void SendExploreMainMenuVisibility(bool isVisible, ExploreUIVisibilityMethod method);
 10        void SendExploreSectionVisibility(ExploreSection section, bool isVisible);
 11        void SendEventTeleport(string eventId, string eventName, Vector2Int coords);
 12        void SendClickOnEventInfo(string eventId, string eventName);
 13        void SendPlaceTeleport(string placeId, string placeName, Vector2Int coords);
 14        void SendClickOnPlaceInfo(string placeId, string placeName);
 15        bool anyActionExecutedFromLastOpen { get; set; }
 16
 17    }
 18
 19    public class ExploreV2Analytics : IExploreV2Analytics
 20    {
 21        private const string EXPLORE_MAIN_MENU_VIBILILITY = "explore_main_menu_visibility";
 22        private const string EXPLORE_SECTION_VISIBILITY = "explore_section_visibility";
 23        private const string EXPLORE_EVENT_TELEPORT = "explore_event_teleport";
 24        private const string EXPLORE_CLICK_EVENT_INFO = "explore_click_event_info";
 25        private const string EXPLORE_PLACE_TELEPORT = "explore_place_teleport";
 26        private const string EXPLORE_CLICK_PLACE_INFO = "explore_click_place_info";
 27
 28        private static DateTime? exploreMainMenuSetVisibleTimeStamp = null;
 29        private static DateTime? exploreSectionSetVisibleTimeStamp = null;
 30        private static bool anyActionExecutedFromLastOpenValue = false;
 31
 032        public bool anyActionExecutedFromLastOpen { get => anyActionExecutedFromLastOpenValue; set => anyActionExecutedF
 33
 34        public void SendExploreMainMenuVisibility(bool isVisible, ExploreUIVisibilityMethod method)
 35        {
 136            Dictionary<string, string> data = new Dictionary<string, string>();
 137            data.Add("visible", isVisible.ToString());
 138            data.Add("method", method.ToString());
 39
 140            if (isVisible)
 141                exploreMainMenuSetVisibleTimeStamp = DateTime.Now;
 42            else
 43            {
 044                if (exploreMainMenuSetVisibleTimeStamp.HasValue)
 45                {
 046                    data.Add("open_duration_ms", (DateTime.Now - exploreMainMenuSetVisibleTimeStamp.Value).TotalMillisec
 047                    exploreMainMenuSetVisibleTimeStamp = null;
 48                }
 49
 050                data.Add("any_action_after_close", anyActionExecutedFromLastOpenValue.ToString());
 51            }
 52
 153            GenericAnalytics.SendAnalytic(EXPLORE_MAIN_MENU_VIBILILITY, data);
 154        }
 55
 56        public void SendExploreSectionVisibility(ExploreSection section, bool isVisible)
 57        {
 058            Dictionary<string, string> data = new Dictionary<string, string>();
 059            data.Add("section", section.ToString());
 060            data.Add("visible", isVisible.ToString());
 61
 062            if (isVisible)
 063                exploreSectionSetVisibleTimeStamp = DateTime.Now;
 64            else
 65            {
 066                if (exploreSectionSetVisibleTimeStamp.HasValue)
 67                {
 068                    data.Add("open_duration_ms", (DateTime.Now - exploreSectionSetVisibleTimeStamp.Value).TotalMilliseco
 069                    exploreSectionSetVisibleTimeStamp = null;
 70                }
 71            }
 72
 073            GenericAnalytics.SendAnalytic(EXPLORE_SECTION_VISIBILITY, data);
 074        }
 75
 76        public void SendEventTeleport(string eventId, string eventName, Vector2Int coords)
 77        {
 078            Dictionary<string, string> data = new Dictionary<string, string>();
 079            data.Add("event_id", eventId);
 080            data.Add("event_name", eventName);
 081            data.Add("event_coords_x", coords.x.ToString());
 082            data.Add("event_coords_y", coords.y.ToString());
 083            GenericAnalytics.SendAnalytic(EXPLORE_EVENT_TELEPORT, data);
 084        }
 85
 86        public void SendClickOnEventInfo(string eventId, string eventName)
 87        {
 088            Dictionary<string, string> data = new Dictionary<string, string>();
 089            data.Add("event_id", eventId);
 090            data.Add("event_name", eventName);
 091            GenericAnalytics.SendAnalytic(EXPLORE_CLICK_EVENT_INFO, data);
 092        }
 93
 94        public void SendPlaceTeleport(string placeId, string placeName, Vector2Int coords)
 95        {
 096            Dictionary<string, string> data = new Dictionary<string, string>();
 097            data.Add("place_id", placeId);
 098            data.Add("place_name", placeName);
 099            data.Add("place_coords_x", coords.x.ToString());
 0100            data.Add("place_coords_y", coords.y.ToString());
 0101            GenericAnalytics.SendAnalytic(EXPLORE_PLACE_TELEPORT, data);
 0102        }
 103
 104        public void SendClickOnPlaceInfo(string placeId, string placeName)
 105        {
 0106            Dictionary<string, string> data = new Dictionary<string, string>();
 0107            data.Add("event_id", placeId);
 0108            data.Add("event_name", placeName);
 0109            GenericAnalytics.SendAnalytic(EXPLORE_CLICK_PLACE_INFO, data);
 0110        }
 111    }
 112}