public IEnumerator CanAddAndRemoveManyOnSameFrame([Values(true, false)] bool addMany) { InitTest("OneEmptyDynamicGroupWith4Features"); yield return(null); var first = CreateGraphic("DisabledMeshGraphic"); var second = CreateGraphic("DisabledMeshGraphic"); var third = CreateGraphic("DisabledMeshGraphic"); if (addMany) { firstGroup.TryAddGraphic(first); } else { firstGroup.TryAddGraphic(second); firstGroup.TryAddGraphic(third); } yield return(null); if (addMany) { firstGroup.TryAddGraphic(second); firstGroup.TryAddGraphic(third); first.TryDetach(); } else { firstGroup.TryAddGraphic(first); second.TryDetach(); third.TryDetach(); } yield return(null); foreach (var feature in firstGroup.features) { var featureData = feature.GetField("featureData") as IList; Assert.That(featureData.Count, Is.EqualTo(firstGroup.graphics.Count)); for (int i = 0; i < featureData.Count; i++) { LeapFeatureData data = featureData[i] as LeapFeatureData; Assert.That(data.graphic, Is.EqualTo(firstGroup.graphics[i])); } } }
public IEnumerator VerifyAddedGraphicHasFeaturesInSameOrder() { InitTest("OneEmptyDynamicGroupWith4Features"); yield return(null); CreateGraphic("DisabledMeshGraphic"); firstGroup.TryAddGraphic(oneGraphic); yield return(null); #if UNITY_EDITOR for (int i = 0; i < firstGroup.features.Count; i++) { var feature = firstGroup.features[i]; var dataObj = oneGraphic.featureData[i]; var dataFeatureType = LeapFeatureData.GetFeatureType(dataObj.GetType()); var featureType = feature.GetType(); Assert.That(dataFeatureType, Is.EqualTo(featureType)); } #endif }