< Summary

Class:ItemToggleContainer
Assembly:AvatarEditorHUD
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/AvatarEditorHUD/Scripts/ItemToggleContainer.cs
Covered lines:24
Uncovered lines:0
Coverable lines:24
Total lines:58
Line coverage:100% (24 of 24)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
ItemToggleContainer()0%110100%
Setup(...)0%550100%
LoadItem(...)0%110100%
HideItem(...)0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/AvatarEditorHUD/Scripts/ItemToggleContainer.cs

#LineLine coverage
 1using System.Collections.Generic;
 2using UnityEngine;
 3using UnityEngine.UI;
 4
 5public class ItemToggleContainer : MonoBehaviour
 6{
 7    public Transform itemContainer;
 8    [SerializeField] private ItemToggle itemPrefab;
 9    [SerializeField] private NFTSkinFactory skinFactory;
 10    [SerializeField] private RectTransform rectTransform;
 11
 90112    private List<ItemToggle> items = new List<ItemToggle>();
 13    private int maxItems;
 14
 15    public void Setup(int newMaxItems)
 16    {
 1100017        if (maxItems == newMaxItems) return;
 86418        maxItems = newMaxItems;
 19
 86420        var diff = maxItems - items.Count;
 21
 86422        if (diff > 0)
 23        {
 1728024            for (int i = 0; i < diff; i++)
 25            {
 777626                var newItemToggle = Instantiate(itemPrefab, itemContainer);
 777627                items.Add(newItemToggle);
 28            }
 29        }
 30
 1728031        for (int i = 0; i < items.Count; i++)
 32        {
 777633            var itemToggle = items[i];
 777634            itemToggle.gameObject.SetActive(i < maxItems);
 777635            itemToggle.transform.SetAsLastSibling();
 36        }
 37
 86438        LayoutRebuilder.ForceRebuildLayoutImmediate(rectTransform);
 86439    }
 40
 41    public ItemToggle LoadItem(int index, WearableSettings wearableSettings)
 42    {
 365443        var item = wearableSettings.Item;
 365444        var newToggle = items[index];
 45
 365446        newToggle.Initialize(item, false, wearableSettings.Amount, skinFactory.GetSkinForRarity(wearableSettings.Item.ra
 365447        newToggle.SetHideOtherWerablesToastStrategy(wearableSettings.HideOtherWearablesToastStrategy);
 365448        newToggle.SetBodyShapeCompatibilityStrategy(wearableSettings.IncompatibleWearableToastStrategy);
 365449        newToggle.SetReplaceOtherWearablesToastStrategy(wearableSettings.ReplaceOtherWearablesToastStrategy);
 50
 365451        return newToggle;
 52    }
 53    public void HideItem(int i)
 54    {
 4925455        var newToggle = items[i];
 4925456        newToggle.Hide();
 4925457    }
 58}