static public IEnumerator GetComponent_자식_Enum_테스트() { GameObject pObjectParents = new GameObject("GetComponent_Test_Enum"); // GetComponent 대상인 자식 추가 for (int i = 0; i < (int)GetComponentAttribute_Test.ETestChildObject.MAX; i++) { GameObject pObjectChild = new GameObject(((GetComponentAttribute_Test.ETestChildObject)i).ToString()); pObjectChild.transform.SetParent(pObjectParents.transform); pObjectChild.AddComponent <Test_ComponentChild_DerivedDictionaryItem>(); } // 자식을 전부 추가한 뒤에 페런츠에 추가한다. // 추가하자마자 Awake로 자식을 찾기 때문 GetComponentAttribute_Test pParents = pObjectParents.AddComponent <GetComponentAttribute_Test>(); pParents.Awake(); yield return(null); var pIterEnum = pParents.p_mapTest_KeyIsEnum.GetEnumerator(); while (pIterEnum.MoveNext()) { Assert.IsTrue(pIterEnum.Current.Key.ToString() == pIterEnum.Current.Value.name.ToString()); } }
static public IEnumerator GetComponent_자식_필드_테스트() { GameObject pObjectParents = new GameObject("GetComponent_Test_Field"); // GetComponent 대상인 자식 추가 for (int i = 0; i < (int)GetComponentAttribute_Test.ETestChildObject.MAX; i++) { GameObject pObjectChild = new GameObject(((GetComponentAttribute_Test.ETestChildObject)i).ToString()); pObjectChild.transform.SetParent(pObjectParents.transform); pObjectChild.AddComponent <Test_ComponentChild>(); } // 자식을 전부 추가한 뒤에 페런츠에 추가한다. // 추가하자마자 Awake로 자식을 찾기 때문 GetComponentAttribute_Test pParents = pObjectParents.AddComponent <GetComponentAttribute_Test>(); pParents.Awake(); yield return(null); // Getcomponent Attribute가 잘 작동했는지 체크 시작!! Assert.NotNull(pParents.p_pChildComponent_FindEnum); Assert.NotNull(pParents.p_pChildComponent_FindString); Assert.IsTrue(pParents.p_pChildComponent_FindString.name == GetComponentAttribute_Test.ETestChildObject.TestObject_Other_FindString.ToString()); Assert.IsTrue(pParents.p_pChildComponent_FindEnum.name == GetComponentAttribute_Test.ETestChildObject.TestObject_Other_FindEnum.ToString()); Assert.IsTrue(pParents.p_listTest.Count == (int)GetComponentAttribute_Test.ETestChildObject.MAX); Assert.IsTrue(pParents.p_mapTest_KeyIsEnum.Count == 5); Assert.IsTrue(pParents.p_mapTest_KeyIsString.Count == 5); var pIterString = pParents.p_mapTest_KeyIsString.GetEnumerator(); while (pIterString.MoveNext()) { Assert.IsTrue(pIterString.Current.Key == pIterString.Current.Value.name.ToString()); } var pIterEnum = pParents.p_mapTest_KeyIsEnum.GetEnumerator(); while (pIterEnum.MoveNext()) { Assert.IsTrue(pIterEnum.Current.Key.ToString() == pIterEnum.Current.Value.name.ToString()); } }
static public IEnumerator GetComponent_Array_테스트() { GameObject pObjectParents = new GameObject("GetComponent_Test_GetComponentArray"); // GetComponent 대상인 자식 추가 int iAddComponentCount = 3; for (int i = 0; i < iAddComponentCount; i++) { pObjectParents.AddComponent <Test_ComponentOnly>(); } // 자식을 전부 추가한 뒤에 페런츠에 추가한다. // 추가하자마자 Awake로 자식을 찾기 때문 GetComponentAttribute_Test pParents = pObjectParents.AddComponent <GetComponentAttribute_Test>(); pParents.Awake(); yield return(null); Assert.AreEqual(pParents.arrComponent.Length, iAddComponentCount); }
static public IEnumerator GetComponent_자식_Property_테스트() { GameObject pObjectParents = new GameObject("GetComponent_Test_Property"); // GetComponent 대상인 자식 추가 for (int i = 0; i < (int)GetComponentAttribute_Test.ETestChildObject.MAX; i++) { GameObject pObjectChild = new GameObject(((GetComponentAttribute_Test.ETestChildObject)i).ToString()); pObjectChild.transform.SetParent(pObjectParents.transform); pObjectChild.AddComponent <Test_ComponentChild>(); } // 자식을 전부 추가한 뒤에 페런츠에 추가한다. // 추가하자마자 Awake로 자식을 찾기 때문 GetComponentAttribute_Test pParents = pObjectParents.AddComponent <GetComponentAttribute_Test>(); pParents.Awake(); yield return(null); Assert.IsNotNull(pParents.p_pChildComponent_FindEnumProperty); }