< Summary

Class:DCL.ECSComponents.AvatarModifierFactory
Assembly:DCL.ECSComponents.AvatarModifierArea
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/DCLPlugins/ECS7/ECSComponents/AvatarModifierArea/AvatarModifierFactory.cs
Covered lines:9
Uncovered lines:1
Coverable lines:10
Total lines:34
Line coverage:90% (9 of 10)
Covered branches:0
Total branches:0
Covered methods:2
Total methods:2
Method coverage:100% (2 of 2)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
GetOrCreateAvatarModifier(...)0%5.075085.71%
Dispose()0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/DCLPlugins/ECS7/ECSComponents/AvatarModifierArea/AvatarModifierFactory.cs

#LineLine coverage
 1using System;
 2
 3namespace DCL.ECSComponents
 4{
 5    public class AvatarModifierFactory
 6    {
 7        private IAvatarModifier hideModifier;
 8        private IAvatarModifier hidePassportModifier;
 9
 10        public IAvatarModifier GetOrCreateAvatarModifier(AvatarModifierType modifier)
 11        {
 12            switch (modifier)
 13            {
 14                case AvatarModifierType.AmtHideAvatars:
 515                    if (hideModifier == null)
 116                        hideModifier = new HideAvatarsModifier();
 517                    return hideModifier;
 18                    break;
 19                case AvatarModifierType.AmtDisablePassports:
 320                    if (hidePassportModifier == null)
 121                        hidePassportModifier = new HidePassportModifier();
 322                    return hidePassportModifier;
 23                default:
 024                    return null;
 25            }
 26        }
 27
 28        public void Dispose()
 29        {
 130            hideModifier = null;
 131            hidePassportModifier = null;
 132        }
 33    }
 34}