< Summary

Class:DCL.RealmsInfoHandler
Assembly:RealmsInfoBridge
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Bridges/RealmsInfoBridge/RealmsInfoHandler.cs
Covered lines:13
Uncovered lines:10
Coverable lines:23
Total lines:59
Line coverage:56.5% (13 of 23)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
RealmsInfoHandler()0%110100%
Set(...)0%110100%
Set(...)0%550100%
SetAbout(...)0%2100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Bridges/RealmsInfoBridge/RealmsInfoHandler.cs

#LineLine coverage
 1using UnityEngine;
 2using System;
 3using Variables.RealmsInfo;
 4using System.Collections.Generic;
 5using System.Linq;
 6using Decentraland.Bff;
 7using Google.Protobuf;
 8
 9namespace DCL
 10{
 11    public class RealmsInfoHandler
 12    {
 513        private RealmsInfoModel model = new RealmsInfoModel();
 14
 115        public CurrentRealmVariable playerRealm => DataStore.i.realm.playerRealm;
 116        public BaseCollection<RealmModel> realmsInfo => DataStore.i.realm.realmsInfo;
 017        private BaseVariable<AboutResponse.Types.AboutConfiguration> playerRealmAboutConfiguration => DataStore.i.realm.
 018        private BaseVariable<AboutResponse.Types.LambdasInfo> playerRealmAboutLambda => DataStore.i.realm.playerRealmAbo
 019        private BaseVariable<AboutResponse.Types.ContentInfo> playerRealmAboutContent => DataStore.i.realm.playerRealmAb
 20
 421        private BaseVariable<string> realmName => DataStore.i.realm.realmName;
 22
 23        public void Set(string json)
 24        {
 225            JsonUtility.FromJsonOverwrite(json, model);
 226            Set(model);
 227        }
 28
 29        internal void Set(RealmsInfoModel newModel)
 30        {
 531            model = newModel;
 32
 533            if (!string.IsNullOrEmpty(model.current?.serverName))
 34            {
 435                DataStore.i.realm.playerRealm.Set(model.current.Clone());
 436                realmName.Set(DataStore.i.realm.playerRealm.Get().serverName);
 37            }
 38
 539            DataStore.i.realm.realmsInfo.Set(newModel.realms != null ? newModel.realms.ToList() : new List<RealmModel>()
 540        }
 41
 42        public void SetAbout(string json)
 43        {
 044            JsonParser jsonParser = new JsonParser(JsonParser.Settings.Default.WithIgnoreUnknownFields(true));
 045            AboutResponse aboutResponse = jsonParser.Parse<AboutResponse>(json);
 046            playerRealmAboutConfiguration.Set(aboutResponse.Configurations);
 047            playerRealmAboutContent.Set(aboutResponse.Content);
 048            playerRealmAboutLambda.Set(aboutResponse.Lambdas);
 049            realmName.Set(aboutResponse.Configurations.RealmName);
 050        }
 51    }
 52
 53    [Serializable]
 54    public class RealmsInfoModel
 55    {
 56        public CurrentRealmModel current;
 57        public RealmModel[] realms;
 58    }
 59}