< Summary

Class:PrimitiveMeshFactory
Assembly:AssetPromiseKeeper
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/AssetManager/PrimitiveMesh/PrimitiveMeshFactory.cs
Covered lines:16
Uncovered lines:2
Coverable lines:18
Total lines:56
Line coverage:88.8% (16 of 18)
Covered branches:0
Total branches:0
Covered methods:1
Total methods:1
Method coverage:100% (1 of 1)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
CreateMesh(...)0%13.2313088.89%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/AssetManager/PrimitiveMesh/PrimitiveMeshFactory.cs

#LineLine coverage
 1using DCL;
 2using DCL.Helpers;
 3using UnityEngine;
 4
 5internal class PrimitiveMeshFactory
 6{
 7    public static Mesh CreateMesh(AssetPromise_PrimitiveMesh_Model meshModelModel)
 8    {
 289        Mesh mesh = null;
 2810        switch (meshModelModel.type)
 11        {
 12            case AssetPromise_PrimitiveMesh_Model.PrimitiveType.Box:
 13                {
 1914                    if (meshModelModel.properties is PropertyUvs modelWithUvs)
 15                    {
 1916                        mesh = PrimitiveMeshBuilder.BuildCube(1f);
 1917                        if (modelWithUvs.uvs != null && modelWithUvs.uvs.Count > 0)
 18                        {
 119                            mesh.uv = Utils.FloatArrayToV2List(modelWithUvs.uvs);
 20                        }
 21                    }
 22                }
 123                break;
 24            case AssetPromise_PrimitiveMesh_Model.PrimitiveType.Sphere:
 25            {
 326                if (meshModelModel.properties is PropertySphere sphereProps)
 27                {
 328                    mesh = PrimitiveMeshBuilder.BuildSphere(sphereProps.Radius, sphereProps.Longitude, sphereProps.Latit
 29                }
 330                break;
 31            }
 32            case AssetPromise_PrimitiveMesh_Model.PrimitiveType.Plane:
 33                {
 134                    if (meshModelModel.properties is PropertyUvs modelWithUvs)
 35                    {
 136                        mesh = PrimitiveMeshBuilder.BuildPlaneV2(1f);
 137                        if (modelWithUvs.uvs != null && modelWithUvs.uvs.Count > 0)
 38                        {
 039                            mesh.uv = Utils.FloatArrayToV2List(modelWithUvs.uvs);
 40                        }
 41                    }
 42                }
 043                break;
 44            case AssetPromise_PrimitiveMesh_Model.PrimitiveType.Cylinder:
 45                {
 546                    if (meshModelModel.properties is PropertyCylinder cylinder)
 47                    {
 548                        mesh = PrimitiveMeshBuilder.BuildCylinder(50, cylinder.radiusTop, cylinder.radiusBottom,
 49                            1f, 0f, true, false);
 50                    }
 51                }
 52                break;
 53        }
 2854        return mesh;
 55    }
 56}