< Summary

Class:BuilderMeshLoadingIndicator
Assembly:BuilderTests
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Builder/Scripts/Tests/BuilderMeshLoadingIndicator.cs
Covered lines:19
Uncovered lines:0
Coverable lines:19
Total lines:53
Line coverage:100% (19 of 19)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
BuilderMeshLoadingIndicatorTest()0%550100%
CheckActiveIndicatorsAmount(...)0%330100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Builder/Scripts/Tests/BuilderMeshLoadingIndicator.cs

#LineLine coverage
 1using DCL.Components;
 2using DCL.Helpers;
 3using NUnit.Framework;
 4using System.Collections;
 5using UnityEngine;
 6using UnityEngine.SceneManagement;
 7using UnityEngine.TestTools;
 8
 9public class BuilderMeshLoadingIndicator : IntegrationTestSuite_Legacy
 10{
 111    protected override bool justSceneSetUp => true;
 12
 13    [UnityTest]
 14    public IEnumerator BuilderMeshLoadingIndicatorTest()
 15    {
 116        SetUp_SceneController();
 117        yield return SceneManager.LoadSceneAsync("BuilderScene", LoadSceneMode.Additive);
 18
 119        var builderBridge = Object.FindObjectOfType<Builder.DCLBuilderBridge>();
 120        builderBridge.ResetBuilderScene();
 21
 122        var objectEntity = TestHelpers.CreateSceneEntity(scene);
 123        var objectShape = TestHelpers.AttachGLTFShape(objectEntity, scene, new Vector3(8, 1, 8), new LoadableShape.Model
 24        {
 25            src = TestAssetsUtils.GetPath() + "/GLB/Lantern/Lantern.glb"
 26        });
 27
 128        CheckActiveIndicatorsAmount(expectedAmount: 1);
 29
 130        yield return TestHelpers.WaitForGLTFLoad(objectEntity);
 31
 132        CheckActiveIndicatorsAmount(expectedAmount: 0);
 33
 134        yield return SceneManager.UnloadSceneAsync("BuilderScene");
 135    }
 36
 37    void CheckActiveIndicatorsAmount(int expectedAmount)
 38    {
 239        var indicators = Object.FindObjectsOfType<Builder.MeshLoadIndicator.DCLBuilderMeshLoadIndicator>();
 40
 241        int activeIndicators = 0;
 42
 643        for (int i = 0; i < indicators.Length; i++)
 44        {
 145            if (indicators[i].gameObject.activeInHierarchy)
 46            {
 147                activeIndicators++;
 48            }
 49        }
 50
 251        Assert.AreEqual(expectedAmount, activeIndicators, $"Expected {expectedAmount} active loading indicator");
 252    }
 53}