예제 #1
0
파일: closure.php 프로젝트: xihewang/atoum
 public function addToAssertionManager(test\assertion\manager $assertionManager, $factoryName, $defaultHandler)
 {
     if ($this->factory === null) {
         $assertionManager->setHandler($factoryName, $defaultHandler);
     } else {
         $assertionManager->setMethodHandler($factoryName, $this->factory)->setPropertyHandler($factoryName, $this->allArgumentsAreOptional === false ? $defaultHandler : $this->factory);
     }
     return $this;
 }
예제 #2
0
 public function testSetMethodHandler()
 {
     $this->if($assertionManager = new testedClass())->then->object($assertionManager->setMethodHandler($event = uniqid(), $handler = function () {
     }))->isIdenticalTo($assertionManager)->array($assertionManager->getHandlers())->isEqualTo(array($event => array($handler, testedClass::methodHandler)))->object($assertionManager->setMethodHandler($event, $otherHandler = function () {
     }))->isIdenticalTo($assertionManager)->array($assertionManager->getHandlers())->isEqualTo(array($event => array($otherHandler, testedClass::methodHandler)))->object($assertionManager->setMethodHandler($otherEvent = uniqid(), $handler))->isIdenticalTo($assertionManager)->array($assertionManager->getHandlers())->isEqualTo(array($event => array($otherHandler, testedClass::methodHandler), $otherEvent => array($handler, testedClass::methodHandler)));
 }