/** * Attaches a single filter to multiple methods. * * @return void */ function testMultipleMethodFiltering() { $object = new MockMethodFiltering(); $this->assertIdentical($object->method2(), array()); $object->applyFilter(array('method', 'method2'), function ($self, $params, $chain) { return $chain->next($self, $params, $chain); }); $this->assertIdentical(array_keys($object->method2()), array('method', 'method2')); }
public function testResetClass() { $obj = new MockMethodFiltering(); $obj->applyFilter(false); $obj->applyFilter(array('method2', 'manual'), function ($self, $params, $chain) { return false; }); $this->assertFalse($obj->method2()); $this->assertFalse($obj->manual(array())); $obj->applyFilter(false); $this->assertNotIdentical($obj->method2(), false); $this->assertNotIdentical($obj->manual(array()), false); }