< Summary

Class:BIWCompleteAction
Assembly:BuilderInWorld
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/BuilderMode/ActionController/BIWCompleteAction.cs
Covered lines:25
Uncovered lines:0
Coverable lines:25
Total lines:72
Line coverage:100% (25 of 25)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
BIWCompleteAction()0%110100%
Redo()0%220100%
Undo()0%220100%
ApplyValue(...)0%220100%
CreateChangeFloorAction(...)0%110100%
CreateActionType(...)0%110100%
CreateActionType(...)0%110100%
CreateAction(...)0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/BuilderMode/ActionController/BIWCompleteAction.cs

#LineLine coverage
 1using DCL.Models;
 2using System.Collections;
 3using System.Collections.Generic;
 4using UnityEngine;
 5using Newtonsoft.Json;
 6
 7public class BIWCompleteAction
 8{
 9    public enum ActionType
 10    {
 11        MOVE = 0,
 12        ROTATE = 1,
 13        SCALE = 2,
 14        CREATE = 3,
 15        DELETE = 4,
 16        CHANGE_FLOOR = 5
 17    }
 18
 19    public ActionType actionType;
 1320    public bool isDone = true;
 21
 22    public delegate void OnApplyValueDelegate(string entityId, object value, ActionType actionType, bool isUndo);
 23    public event OnApplyValueDelegate OnApplyValue;
 24
 1325    List<BIWEntityAction> entityApplied = new List<BIWEntityAction>();
 26
 27    public void Redo()
 28    {
 2429        foreach (BIWEntityAction action in entityApplied)
 30        {
 631            ApplyValue(action.entityId, action.newValue, false);
 32        }
 633        isDone = true;
 634    }
 35
 36    public void Undo()
 37    {
 2438        foreach (BIWEntityAction action in entityApplied)
 39        {
 640            ApplyValue(action.entityId, action.oldValue, true);
 41        }
 42
 643        isDone = false;
 44
 645    }
 46
 2447    void ApplyValue(string entityToApply, object value, bool isUndo) { OnApplyValue?.Invoke(entityToApply, value, action
 48
 49    public void CreateChangeFloorAction(CatalogItem oldFloor, CatalogItem newFloor)
 50    {
 351        BIWEntityAction action = new BIWEntityAction(JsonConvert.SerializeObject(oldFloor), JsonConvert.SerializeObject(
 352        List<BIWEntityAction> list = new List<BIWEntityAction>();
 353        list.Add(action);
 354        CreateAction(list, ActionType.CHANGE_FLOOR);
 355    }
 56
 57    public void CreateActionType(BIWEntityAction action, ActionType type)
 58    {
 459        List<BIWEntityAction> list = new List<BIWEntityAction>();
 460        list.Add(action);
 461        CreateAction(list, type);
 462    }
 63
 1264    public void CreateActionType(List<BIWEntityAction> entitiesActions, ActionType type) { CreateAction(entitiesActions,
 65
 66    void CreateAction(List<BIWEntityAction> entitiesActions, ActionType type)
 67    {
 1368        actionType = type;
 1369        entityApplied = entitiesActions;
 1370        isDone = true;
 1371    }
 72}