public static function status($code = null, $preventTrigger = false) { if (self::$httpCode !== $code && is_int($code) && headers_sent() === false) { header('X-PHP-Response-Code: ' . $code, true, $code); self::$httpCode = $code; if (!$preventTrigger) { App::trigger('changestatus', array($code, null)); } return true; } elseif (self::$httpCode === null) { self::$httpCode = \UtilsStatusCode(); } return self::$httpCode; }
/** * @covers \Phix\App::trigger */ public function testTrigger() { $called1 = false; $called2 = false; $app = new App(); $app->hook('init', function () use(&$called1) { $called1 = true; return false; }); $app->hook('setup', function () use(&$called2) { $called2 = true; return true; }); $ret = $app->trigger('init'); $this->assertTrue($called1); $this->assertFalse($called2); $this->assertFalse($ret); $ret = $app->trigger('setup'); $this->assertTrue($called2); $this->assertTrue($ret); }