Tanoda
TestRuntimeFeatures.cs
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright (C) Ultraleap, Inc. 2011-2020. *
3 * *
4 * Use subject to the terms of the Apache License 2.0 available at *
5 * http://www.apache.org/licenses/LICENSE-2.0, or another agreement *
6 * between Ultraleap and you, your company or other organization. *
7 ******************************************************************************/
8
9#if LEAP_TESTS
10using UnityEngine.TestTools;
11using NUnit.Framework;
12using System.Collections;
13using Leap.Unity.Query;
14
16
17 public class TestRuntimeFeatures : GraphicRendererTestBase {
18
24 [UnityTest]
25 public IEnumerator AddEmptyGraphicToGroupWithFeatures() {
26 InitTest("OneEmptyDynamicGroupWith4Features");
27 yield return null;
28
29 CreateGraphic("DisabledMeshGraphic");
30
31 Assert.That(oneGraphic.featureData, Is.Empty);
32
33 firstGroup.TryAddGraphic(oneGraphic);
34
35 yield return null;
36
37 Assert.That(oneGraphic.isAttachedToGroup);
38 Assert.That(oneGraphic.featureData.Count, Is.EqualTo(4));
39 }
40
46 [UnityTest]
47 public IEnumerator VerifyAddingGraphicDoesntOverwriteFeatureData() {
48 InitTest("OneEmptyDynamicGroupWith4Features");
49 yield return null;
50
51 CreateGraphic("DisabledMeshGraphicWith4Features");
52
53 Assert.That(oneGraphic.featureData.Count, Is.EqualTo(4));
54
55 var dataCopy = oneGraphic.featureData.Query().Select(d => shallowCopy(d)).ToList();
56
57 firstGroup.TryAddGraphic(oneGraphic);
58
59 yield return null;
60
61 Assert.That(oneGraphic.isAttachedToGroup);
62
63 for (int i = 0; i < dataCopy.Count; i++) {
64 assertValueFieldsEqual(dataCopy[i], oneGraphic.featureData[i]);
65 }
66 }
67
72 [UnityTest]
73 public IEnumerator VerifyAddedGraphicHasFeaturesInSameOrder() {
74 InitTest("OneEmptyDynamicGroupWith4Features");
75 yield return null;
76
77 CreateGraphic("DisabledMeshGraphic");
78 firstGroup.TryAddGraphic(oneGraphic);
79
80 yield return null;
81
82#if UNITY_EDITOR
83 for (int i = 0; i < firstGroup.features.Count; i++) {
84 var feature = firstGroup.features[i];
85 var dataObj = oneGraphic.featureData[i];
86
87 var dataFeatureType = LeapFeatureData.GetFeatureType(dataObj.GetType());
88 var featureType = feature.GetType();
89
90 Assert.That(dataFeatureType, Is.EqualTo(featureType));
91 }
92#endif
93 }
94 }
95}
96#endif