//This file is part of DeforaOS Web DaPortal // //This program is free software: you can redistribute it and/or modify //it under the terms of the GNU General Public License as published by //the Free Software Foundation, version 3 of the License. // //This program is distributed in the hope that it will be useful, //but WITHOUT ANY WARRANTY; without even the implied warranty of //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //GNU General Public License for more details. // //You should have received a copy of the GNU General Public License //along with this program. If not, see . require_once('./tests.php'); class TestEngine extends Engine { public function match() { return -1; } public function attach() { } public function backtraceTest($priority) { $closure = function($priority) { return $this->logBacktrace($priority); }; return $closure($priority); } public function errorTest() { $test = UNDEFINED_CONSTANT; } public function exceptionTest() { throw new Exception('Test exception', 42); } public function logTest($priority, $message, $expected) { $res = $this->logMessage($priority, $message); if($res != $expected) { print("Expected: $expected\n"); print("Obtained: $res\n"); return FALSE; } return TRUE; } } $ret = 0; $engine = new TestEngine(); $engine->attach(); $ret |= ($engine->logTest(LOG_ERR, 'Test string', './engine.php: Error: Test string') === TRUE) ? 0 : 2; $ret |= ($engine->logTest(LOG_ERR, "Multi-line\ntest string", "./engine.php: Error: Multi-line ./engine.php: Error: test string") === TRUE) ? 0 : 4; $ret |= ($engine->logTest(LOG_ERR, FALSE, './engine.php: Error: false') === TRUE) ? 0 : 8; $engine->backtraceTest(LOG_INFO); $engine->errorTest(); //XXX currently breaks the test //$engine->exceptionTest(); $engine->setDebug(FALSE); $ret |= ($engine->logTest(LOG_ERR, 'Test string', './engine.php: Error: Test string') === TRUE) ? 0 : 16; $ret |= ($engine->logTest(LOG_ERR, "Multi-line\ntest string", "./engine.php: Error: Multi-line ./engine.php: Error: test string") === TRUE) ? 0 : 32; $ret |= ($engine->logTest(LOG_ERR, FALSE, './engine.php: Error: false') === TRUE) ? 0 : 64; $engine->backtraceTest(LOG_INFO); $engine->errorTest(); //XXX currently breaks the test //$engine->exceptionTest(); exit($ret); ?>