public void PlatHandlerOnInitialize_RegistButtonByOnInitializeEventHandler_ButtonWillInitializeAndFoundFromPlatHandler() { int btnCount = 10; int platID = 1; OrangeManager om = new OrangeManager(); PlatHandler ph = new PlatHandler(platID); ButtonHandler[] bh = new ButtonHandler[btnCount]; for (int i = 0; i < btnCount; i++) {//建立按鈕 bh[i] = new ButtonHandler(i); } ph.onInitialize += (a, b) => {//當介面初始化後註冊按鈕 for (int i = 0; i < btnCount; i++) { ph.RegistButtonHandler(bh[i]); } }; om.Initialize(); om.RegistPlatHandler(ph); for (int i = 0; i < btnCount; i++) { ph.HasButtonHandler(i); } }
public void PlatHandlerTerminate_CallTerminate_WillRemoveFromOrangeAndTerminateAllButton() { int btnCount = 10; int platID = 1; OrangeManager om = new OrangeManager(); PlatHandler ph = new PlatHandler(platID); ButtonHandler[] bh = new ButtonHandler[btnCount]; om.Initialize(); om.RegistPlatHandler(ph); for (int i = 0; i < btnCount; i++) {//建立按鈕並注冊 bh[i] = new ButtonHandler(i); ph.RegistButtonHandler(bh[i]); } ph.Terminate();//銷毀介面 //確認介面及其下的按鈕是否銷毀,以及是否從橘子反注冊 Assert.IsTrue(ph.isTerminate); Assert.IsFalse(om.hasPlatHandler(platID)); for (int i = 0; i < btnCount; i++) { Assert.IsTrue(bh[i].isTerminated); } }
public void Trigger_Test() { int btnID = 10; ButtonHandler btn = new ButtonHandler(btnID); PlatHandler plat = new PlatHandler(1); plat.Initialize(new PlatHandlerTest.DummyOrange()); plat.RegistButtonHandler(btn); int isTrigger = -1; btn.onTrigger += (a, b) => { isTrigger = (a as ButtonHandler).ID; }; plat.SetEnable(true); btn.SetEnable(true); btn.Trigger(); try { Assert.AreEqual(btnID, isTrigger); } catch (Exception e) { Debug.Log(plat.GetLog()); Debug.Log("===================="); Debug.Log(btn.GetLog()); throw; } }
public void RegistButtonHandler_WithOutInitialize_Throw() { PlatHandler plat = new PlatHandler(0); DummyButton btn = new DummyButton(); Assert.Throws <Exception>(() => plat.RegistButtonHandler(btn)); Assert.AreEqual(0, btn.initizlie); }
public void ButtonHandlerTerminate_CallTerminate_WillRemoveFromPlatHandler() { int bhID = 10; ButtonHandler bh = new ButtonHandler(bhID); PlatHandler ph = new PlatHandler(1); ph.Initialize(new PlatHandlerTest.DummyOrange()); ph.RegistButtonHandler(bh); bh.Terminate(); Assert.IsTrue(bh.isTerminated); Assert.IsFalse(ph.HasButtonHandler(bhID)); }