/** * Test RedBeanPHP observers. * * @return void */ public function testObserverMechanism() { $toolbox = R::getToolBox(); $adapter = $toolbox->getDatabaseAdapter(); $writer = $toolbox->getWriter(); $redbean = $toolbox->getRedBean(); asrt($adapter instanceof DBAdapter, TRUE); asrt($writer instanceof QueryWriter, TRUE); asrt($redbean instanceof OODB, TRUE); $observable = new \ObservableMock(); $observer = new \ObserverMock(); $observable->addEventListener("event1", $observer); $observable->addEventListener("event3", $observer); $observable->test("event1", "testsignal1"); asrt($observer->event, "event1"); asrt($observer->info, "testsignal1"); $observable->test("event2", "testsignal2"); asrt($observer->event, "event1"); asrt($observer->info, "testsignal1"); $observable->test("event3", "testsignal3"); asrt($observer->event, "event3"); asrt($observer->info, "testsignal3"); }
testpack("UNIT TEST RedBean OODBBean: export"); $bean->setMeta("justametaproperty", "hellothere"); $arr = $bean->export(); asrt(is_array($arr), true); asrt(isset($arr["a"]), true); asrt(isset($arr["b"]), true); asrt($arr["a"], 1); asrt($arr["b"], 2); asrt(isset($arr["__info"]), false); $arr = $bean->export(true); asrt(isset($arr["__info"]), true); asrt($arr["a"], 1); asrt($arr["b"], 2); //Test observer testpack("UNIT TEST Observer Mechanism "); $observable = new ObservableMock(); $observer = new ObserverMock(); $observable->addEventListener("event1", $observer); $observable->addEventListener("event3", $observer); $observable->test("event1", "testsignal1"); asrt($observer->event, "event1"); asrt($observer->info, "testsignal1"); $observable->test("event2", "testsignal2"); asrt($observer->event, "event1"); asrt($observer->info, "testsignal1"); $observable->test("event3", "testsignal3"); asrt($observer->event, "event3"); asrt($observer->info, "testsignal3"); $adapter = $toolbox->getDatabaseAdapter(); $writer = $toolbox->getWriter(); $redbean = $toolbox->getRedBean();