< Summary

Class:DCL.ECS7.InternalComponents.InternalInputEventResultsExtensions
Assembly:ECS7Plugin.InternalECSComponents.Interfaces
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/DCLPlugins/ECS7/InternalECSComponents/Interfaces/Extensions/InternalInputEventResultsExtensions.cs
Covered lines:6
Uncovered lines:1
Coverable lines:7
Total lines:33
Line coverage:85.7% (6 of 7)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
AddEvent(...)0%5.075085.71%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/DCLPlugins/ECS7/InternalECSComponents/Interfaces/Extensions/InternalInputEventResultsExtensions.cs

#LineLine coverage
 1using System.Collections.Generic;
 2using DCL.Controllers;
 3using DCL.Models;
 4
 5namespace DCL.ECS7.InternalComponents
 6{
 7    public static class InternalInputEventResultsExtensions
 8    {
 9        internal const int MAX_AMOUNT_OF_POINTER_EVENTS_SENT = 30;
 10
 11        public static void AddEvent(this IInternalECSComponent<InternalInputEventResults> component, IParcelScene scene,
 12            InternalInputEventResults.EventData data)
 13        {
 4214            var model = component.GetFor(scene, SpecialEntityId.SCENE_ROOT_ENTITY)?.model ??
 15                        new InternalInputEventResults()
 16                        {
 17                            lastTimestamp = 0,
 18                            events = new Queue<InternalInputEventResults.EventData>(MAX_AMOUNT_OF_POINTER_EVENTS_SENT)
 19                        };
 20
 4221            if (model.events.Count >= MAX_AMOUNT_OF_POINTER_EVENTS_SENT)
 22            {
 23                //drop oldest event
 024                model.events.Dequeue();
 25            }
 26
 4227            data.timestamp = model.lastTimestamp++;
 4228            model.events.Enqueue(data);
 29
 4230            component.PutFor(scene, SpecialEntityId.SCENE_ROOT_ENTITY, model);
 4231        }
 32    }
 33}