< Summary

Class:QuestTrackingInfo
Assembly:DCL.Components.QuestTrackingInfo
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Components/QuestTrackingInfo/QuestTrackingInfo.cs
Covered lines:21
Uncovered lines:2
Coverable lines:23
Total lines:50
Line coverage:91.3% (21 of 23)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Awake()0%110100%
GetModel()0%2100%
UpdateFromModel(...)0%8.028092.86%
GetClassId()0%110100%
ApplyChanges()0%220100%
OnDestroy()0%220100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Components/QuestTrackingInfo/QuestTrackingInfo.cs

#LineLine coverage
 1using System;
 2using DCL.Components;
 3using DCL.QuestsController;
 4using System.Collections;
 5using DCL.Models;
 6using UnityEngine;
 7
 8public class QuestTrackingInfo : BaseComponent
 9{
 810    private static IQuestsController questsController => QuestsController.i;
 11
 12    private QuestModel cachedModel;
 13
 514    public override string componentName => "questTrackingComponent";
 15
 1016    private void Awake() { model = new QuestModel(); }
 17
 018    new public QuestModel GetModel() { return cachedModel; }
 19
 20    public override void UpdateFromModel(BaseModel newModel)
 21    {
 922        if (newModel == null)
 123            return;
 24
 825        base.UpdateFromModel(newModel);
 826        if (!(newModel is QuestModel quest))
 027            return;
 28
 829        if (string.IsNullOrEmpty(quest.id))
 430            return;
 31
 432        bool isDifferentQuest = cachedModel == null || quest.id != cachedModel.id;
 433        if (isDifferentQuest && cachedModel != null)
 134            questsController.RemoveQuest(cachedModel);
 35
 436        cachedModel = quest;
 437        if (cachedModel != null)
 438            questsController.UpdateQuestProgress(cachedModel);
 439    }
 40
 141    public override int GetClassId() { return (int) CLASS_ID_COMPONENT.QUEST_TRACKING_INFORMATION; }
 42
 743    public override IEnumerator ApplyChanges(BaseModel newJson) { yield break; }
 44
 45    private void OnDestroy()
 46    {
 547        if (cachedModel != null)
 348            questsController.RemoveQuest(cachedModel);
 549    }
 50}