< Summary

Class:KernelConfigModel
Assembly:KernelConfiguration
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/KernelConfiguration/KernelConfigModel.cs
Covered lines:25
Uncovered lines:3
Coverable lines:28
Total lines:62
Line coverage:89.2% (25 of 28)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
KernelConfigModel()0%110100%
Equals(...)0%6200%
Equals(...)0%13.1512080%
Clone()0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/KernelConfiguration/KernelConfigModel.cs

#LineLine coverage
 1using KernelConfigurationTypes;
 2using System;
 3using System.Collections.Generic;
 4
 5[Serializable]
 6public class KernelConfigModel
 7{
 98    public Features features = new Features();
 99    public Comms comms = new Comms();
 910    public Profiles profiles = new Profiles();
 11    public bool gifSupported = false;
 912    public string network = "mainnet";
 913    public List<WorldRange> validWorldRanges = new List<WorldRange>();
 914    public string kernelVersion = string.Empty;
 915    public string rendererVersion = string.Empty;
 916    public Debugging debugConfig = new Debugging();
 17
 18    public override bool Equals(object obj)
 19    {
 020        return obj is KernelConfigModel other && Equals(other);
 21    }
 22
 23    public bool Equals(KernelConfigModel other)
 24    {
 725        if (other == null)
 026            return false;
 27
 728        if (validWorldRanges.Count != other.validWorldRanges.Count)
 229            return false;
 30
 1231        for (var i = 0; i < validWorldRanges.Count; i++)
 32        {
 133            if (!validWorldRanges[i].Equals(other.validWorldRanges[i]))
 034                return false;
 35        }
 36
 537        return comms.Equals(other.comms)
 38               && profiles.Equals(other.profiles)
 39               && features.Equals(other.features)
 40               && gifSupported == other.gifSupported
 41               && network == other.network
 42               && kernelVersion == other.kernelVersion
 43               && rendererVersion == other.rendererVersion
 44               && debugConfig.Equals(other.debugConfig);
 45    }
 46
 47    public KernelConfigModel Clone()
 48    {
 49        // NOTE: We need to use deep clone
 250        KernelConfigModel clone = new KernelConfigModel();
 251        clone.comms = comms.Clone();
 252        clone.profiles = profiles.Clone();
 253        clone.features = features.Clone();
 254        clone.gifSupported = gifSupported;
 255        clone.network = network;
 256        clone.validWorldRanges = new List<WorldRange>(validWorldRanges);
 257        clone.kernelVersion = kernelVersion;
 258        clone.rendererVersion = rendererVersion;
 259        clone.debugConfig = debugConfig.Clone();
 260        return clone;
 61    }
 62}