< Summary

Class:QuestsControllerAnalytics
Assembly:QuestsControllerAnalytics
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Analytics/QuestsControllerAnalytics/QuestsControllerAnalytics.cs
Covered lines:0
Uncovered lines:51
Coverable lines:51
Total lines:96
Line coverage:0% (0 of 51)
Covered branches:0
Total branches:0
Covered methods:0
Total methods:9
Method coverage:0% (0 of 9)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
SendQuestDiscovered(...)0%2100%
SendQuestCompleted(...)0%2100%
SendTaskCompleted(...)0%2100%
SendTaskProgressed(...)0%2100%
SendRewardObtained(...)0%2100%
FillQuestData(...)0%6200%
FillSectionData(...)0%6200%
FillTaskData(...)0%6200%
FillRewardData(...)0%6200%

File(s)

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

#LineLine coverage
 1using System.Collections.Generic;
 2
 3/// <summary>
 4/// These events should be tracked in the quest server.
 5/// In the meantime we will implement them here
 6/// </summary>
 7public static class QuestsControllerAnalytics
 8{
 9    private const string QUEST_DISCOVERED = "quest_discovered";
 10    private const string QUEST_COMPLETED = "quest_completed";
 11    private const string TASK_COMPLETED = "task_completed";
 12    private const string TASK_PROGRESSED = "task_progressed";
 13    private const string REWARD_OBTAINED = "reward_obtained";
 14
 15    public static void SendQuestDiscovered(QuestModel quest)
 16    {
 017        var data = new Dictionary<string, string>();
 018        FillQuestData(data, quest);
 019        GenericAnalytics.SendAnalytic(QUEST_DISCOVERED, data);
 020    }
 21
 22    public static void SendQuestCompleted(QuestModel quest)
 23    {
 024        var data = new Dictionary<string, string>();
 025        FillQuestData(data, quest);
 026        GenericAnalytics.SendAnalytic(QUEST_COMPLETED, data);
 027    }
 28
 29    public static void SendTaskCompleted(QuestModel quest, QuestSection section, QuestTask task)
 30    {
 031        var data = new Dictionary<string, string>();
 032        FillQuestData(data, quest);
 033        FillSectionData(data, section);
 034        FillTaskData(data, task);
 035        GenericAnalytics.SendAnalytic(TASK_COMPLETED, data);
 036    }
 37
 38    public static void SendTaskProgressed(QuestModel quest, QuestSection section, QuestTask task)
 39    {
 040        var data = new Dictionary<string, string>();
 041        FillQuestData(data, quest);
 042        FillSectionData(data, section);
 043        FillTaskData(data, task);
 044        GenericAnalytics.SendAnalytic(TASK_PROGRESSED, data);
 045    }
 46
 47    public static void SendRewardObtained(QuestModel quest, QuestReward reward)
 48    {
 049        var data = new Dictionary<string, string>();
 050        FillQuestData(data, quest);
 051        FillRewardData(data, reward);
 052        GenericAnalytics.SendAnalytic(REWARD_OBTAINED, data);
 053    }
 54
 55    private static void FillQuestData(Dictionary<string, string> data, QuestModel quest)
 56    {
 057        if (quest == null)
 058            return;
 59
 060        data.Add("quest_id", quest.id);
 061        data.Add("quest_name", quest.name);
 062        data.Add("quest_progress", quest.progress.ToString());
 063        data.Add("quest_status", quest.status);
 064    }
 65
 66    private static void FillSectionData(Dictionary<string, string> data, QuestSection section)
 67    {
 068        if (section == null)
 069            return;
 70
 071        data.Add("section_id", section.id);
 072        data.Add("section_name", section.name);
 073        data.Add("section_progress", section.progress.ToString());
 074    }
 75
 76    private static void FillTaskData(Dictionary<string, string> data, QuestTask task)
 77    {
 078        if (task == null)
 079            return;
 80
 081        data.Add("task_id", task.id);
 082        data.Add("task_name", task.name);
 083        data.Add("task_progress", task.progress.ToString());
 084        data.Add("task_status", task.status);
 085    }
 86
 87    private static void FillRewardData(Dictionary<string, string> data, QuestReward reward)
 88    {
 089        if (reward == null)
 090            return;
 91
 092        data.Add("reward_id", reward.id);
 093        data.Add("reward_name", reward.name);
 094        data.Add("reward_type", reward.type);
 095    }
 96}