< Summary

Class:SmartItemUIParameterAdapter
Assembly:BuilderInWorldEntityInformation
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/BuilderMode/EntityInformation/SmartItems/SmartItemUIParameterAdapter.cs
Covered lines:0
Uncovered lines:17
Coverable lines:17
Total lines:54
Line coverage:0% (0 of 17)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
SetParameter(...)0%2100%
SetInfo()0%2100%
ChangeParameter()0%6200%
SetParameterValue(...)0%6200%
GetParameterValue()0%12300%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/BuilderMode/EntityInformation/SmartItems/SmartItemUIParameterAdapter.cs

#LineLine coverage
 1using DCL.Components;
 2using System;
 3using System.Collections;
 4using System.Collections.Generic;
 5using TMPro;
 6using UnityEngine;
 7using UnityEngine.UI;
 8
 9public class SmartItemUIParameterAdapter : MonoBehaviour
 10{
 11
 12    public TextMeshProUGUI labelTxt;
 13    public Action<SmartItemParameter> OnParameterChange;
 14
 15    protected SmartItemParameter currentParameter;
 16
 17    protected string KEY_NAME;
 18
 19    protected Dictionary<object, object> currentValues;
 20
 21    public virtual void SetParameter(SmartItemParameter parameter, Dictionary<object, object> values)
 22    {
 023        currentParameter = parameter;
 024        labelTxt.text = parameter.label;
 025        KEY_NAME = parameter.label;
 026        currentValues = values;
 027        SetInfo();
 028    }
 29
 030    public virtual void SetInfo() { }
 31
 032    public virtual void ChangeParameter() { OnParameterChange?.Invoke(currentParameter); }
 33
 34    protected virtual void SetParameterValue(object value)
 35    {
 036        if (currentValues.ContainsKey(KEY_NAME))
 037            currentValues[KEY_NAME] = value;
 38
 39        else
 040            currentValues.Add(KEY_NAME, value);
 41
 042    }
 43
 44    protected virtual object GetParameterValue()
 45    {
 046        if (currentValues.ContainsKey(KEY_NAME))
 047            return currentValues[KEY_NAME];
 48
 049        if (!string.IsNullOrEmpty(currentParameter.@default))
 050            return currentParameter.@default;
 51
 052        return null;
 53    }
 54}