public void WorkingTest() { // Assert PoolingManager_Component <TestPoolingObject> pPoolingManager = PoolingManager_Component <TestPoolingObject> .instance; pPoolingManager.DoDestroyAll(); Dictionary <ETestPoolingObjectName, TestPoolingObject> mapObjectInstance = InitTest(); Assert.AreEqual(0, TestPoolingObject.GetActiveCount(ETestPoolingObjectName.Test1)); Assert.AreEqual(0, TestPoolingObject.GetActiveCount(ETestPoolingObjectName.Test2)); // Test1 List <TestPoolingObject> listObjectPooling = new List <TestPoolingObject>(); for (int i = 0; i < 10; i++) { listObjectPooling.Add(pPoolingManager.DoPop(mapObjectInstance[ETestPoolingObjectName.Test1])); } Assert.AreEqual(10, TestPoolingObject.GetActiveCount(ETestPoolingObjectName.Test1)); Assert.AreEqual(0, TestPoolingObject.GetActiveCount(ETestPoolingObjectName.Test2)); for (int i = 0; i < listObjectPooling.Count; i++) { pPoolingManager.DoPush(listObjectPooling[i]); } Assert.AreEqual(0, TestPoolingObject.GetActiveCount(ETestPoolingObjectName.Test1)); Assert.AreEqual(0, TestPoolingObject.GetActiveCount(ETestPoolingObjectName.Test2)); // Test2 listObjectPooling.Clear(); for (int i = 0; i < 5; i++) { listObjectPooling.Add(pPoolingManager.DoPop(mapObjectInstance[ETestPoolingObjectName.Test2])); } // Active Check for (int i = 0; i < listObjectPooling.Count; i++) { Assert.AreEqual(true, listObjectPooling[i].gameObject.activeSelf); } Assert.AreEqual(5, TestPoolingObject.GetActiveCount(ETestPoolingObjectName.Test2)); for (int i = 0; i < listObjectPooling.Count; i++) { pPoolingManager.DoPush(listObjectPooling[i]); } // Active Check - 리턴했기 때문에 False for (int i = 0; i < listObjectPooling.Count; i++) { Assert.AreEqual(false, listObjectPooling[i].gameObject.activeSelf); } Assert.AreEqual(0, TestPoolingObject.GetActiveCount(ETestPoolingObjectName.Test2)); }
public void DoPush(TCONTAINED_CLASS pObject) { _pPool.DoPush(pObject); }