< Summary

Class:GeneralDebugMetricModule
Assembly:FPSDisplay
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/WorldRuntime/Debugging/FPSDisplay/MetricsModules/GeneralDebugMetricModule.cs
Covered lines:0
Uncovered lines:39
Coverable lines:39
Total lines:86
Line coverage:0% (0 of 39)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
GeneralDebugMetricModule()0%2100%
SetUpModule(...)0%2100%
UpdateModule()0%2100%
EnableModule()0%2100%
DisableModule()0%2100%
OnOtherPlayersModified(...)0%2100%
OnKernelConfigChanged(...)0%2100%
OnKernelConfigChanged(...)0%6200%
SetupKernelConfig()0%2100%
SetupRealm()0%2100%
UpdateRealm(...)0%12300%
Dispose()0%2100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/WorldRuntime/Debugging/FPSDisplay/MetricsModules/GeneralDebugMetricModule.cs

#LineLine coverage
 1using System;
 2using System.Collections.Generic;
 3using DCL;
 4using DCL.Helpers;
 5using Decentraland.Bff;
 6using UnityEngine;
 7using Variables.RealmsInfo;
 8
 9public class GeneralDebugMetricModule : IDebugMetricModule
 10{
 11
 012    private string currentNetwork = string.Empty;
 013    private string currentRealmValue = string.Empty;
 14    private int lastPlayerCount;
 015    private BaseDictionary<string, Player> otherPlayers => DataStore.i.player.otherPlayers;
 016    private BaseVariable<string> currentRealmName => DataStore.i.realm.realmName;
 17
 18    private Promise<KernelConfigModel> kernelConfigPromise;
 19
 20
 21
 22    public void SetUpModule(Dictionary<DebugValueEnum, Func<string>> updateValueDictionary)
 23    {
 024        updateValueDictionary.Add(DebugValueEnum.General_Network, () => currentNetwork.ToUpper());
 025        updateValueDictionary.Add(DebugValueEnum.General_Realm, () => currentRealmValue.ToUpper());
 026        updateValueDictionary.Add(DebugValueEnum.General_NearbyPlayers, () => lastPlayerCount.ToString());
 027    }
 28
 029    public void UpdateModule() { }
 30    public void EnableModule()
 31    {
 032        lastPlayerCount = otherPlayers.Count();
 033        otherPlayers.OnAdded += OnOtherPlayersModified;
 034        otherPlayers.OnRemoved += OnOtherPlayersModified;
 35
 036        SetupKernelConfig();
 037        SetupRealm();
 38
 039    }
 40    public void DisableModule()
 41    {
 042        otherPlayers.OnAdded -= OnOtherPlayersModified;
 043        otherPlayers.OnRemoved -= OnOtherPlayersModified;
 044        currentRealmName.OnChange -= UpdateRealm;
 045        kernelConfigPromise.Dispose();
 046        KernelConfig.i.OnChange -= OnKernelConfigChanged;
 047    }
 48
 49    private void OnOtherPlayersModified(string playerName, Player player)
 50    {
 051        lastPlayerCount = otherPlayers.Count();
 052    }
 53
 54    private void OnKernelConfigChanged(KernelConfigModel current, KernelConfigModel previous)
 55    {
 056        OnKernelConfigChanged(current);
 057    }
 58
 59    private void OnKernelConfigChanged(KernelConfigModel kernelConfig)
 60    {
 061        currentNetwork = kernelConfig.network ?? string.Empty;
 062    }
 63
 64    private void SetupKernelConfig()
 65    {
 066        kernelConfigPromise = KernelConfig.i.EnsureConfigInitialized();
 067        kernelConfigPromise.Catch(Debug.Log);
 068        kernelConfigPromise.Then(OnKernelConfigChanged);
 069        KernelConfig.i.OnChange += OnKernelConfigChanged;
 070    }
 71
 72    private void SetupRealm()
 73    {
 074        currentRealmName.OnChange += UpdateRealm;
 075        UpdateRealm(currentRealmName.Get(), null);
 076    }
 77
 78    private void UpdateRealm(string current, string previous)
 79    {
 080        if (current == null) return;
 081        currentRealmValue = current ?? string.Empty;
 082    }
 83
 084    public void Dispose() { }
 85
 86}