< Summary

Class:DCL.DataStore_EmotesCustomization
Assembly:DataStore
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/DataStore_EmotesCustomization.cs
Covered lines:5
Uncovered lines:7
Coverable lines:12
Total lines:34
Line coverage:41.6% (5 of 12)
Covered branches:0
Total branches:0
Covered methods:1
Total methods:2
Method coverage:50% (1 of 2)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
DataStore_EmotesCustomization()0%110100%
UnequipMissingEmotes(...)0%42600%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/DataStore/DataStore_EmotesCustomization.cs

#LineLine coverage
 1using System.Collections.Generic;
 2using System.Linq;
 3using UnityEngine;
 4
 5namespace DCL
 6{
 7    public class EquippedEmoteData
 8    {
 9        public string id;
 10        public Sprite cachedThumbnail;
 11    }
 12
 13    public class DataStore_EmotesCustomization
 14    {
 915        public readonly BaseVariable<bool> isWheelInitialized = new (false);
 916        public readonly BaseCollection<EquippedEmoteData> unsavedEquippedEmotes = new (new List<EquippedEmoteData> { nul
 917        public readonly BaseCollection<EquippedEmoteData> equippedEmotes = new (new List<EquippedEmoteData> { null, null
 918        public readonly BaseVariable<bool> isEmotesCustomizationSelected = new (false);
 919        public readonly BaseCollection<string> currentLoadedEmotes = new ();
 20
 21        public void UnequipMissingEmotes(IEnumerable<WearableItem> emotes)
 22        {
 023            var setOfIds = new HashSet<string>();
 024            foreach (var emote in emotes)
 025                setOfIds.Add(emote.id);
 26
 027            for (int i = 0; i < equippedEmotes.Count(); i++)
 28            {
 029                if (equippedEmotes[i] != null && !setOfIds.Contains(equippedEmotes[i].id))
 030                    equippedEmotes[i] = null;
 31            }
 032        }
 33    }
 34}