exec('create table tests (id INTEGER PRIMARY KEY, message TEXT NOT NULL)'); define("IN_UNITTESTING", 1); require_once($test_main_file); global $LOGGING_OUTPUT_FUNC; $LOGGING_OUTPUT_FUNC = function($str) use (&$sl3) { $stmt = $sl3->prepare("insert into tests (message) values (:message)"); $stmt->bindParam(":message", trim($str), SQLITE3_TEXT); $stmt->execute(); $stmt->close(); }; runtests_main(); $sl3->close(); exit(); } if ($operation === "fetch") { $sl3 = new SQLite3(__DIR__ . "/progress.db", SQLITE3_OPEN_READONLY); $stmt = $sl3->prepare("select id, message from tests where id > :from ORDER BY id"); $stmt->bindParam(":from", dintval($_GET['from']), SQLITE3_INTEGER); $rs = $stmt->execute(); $rsa = array(); while($row = $rs->fetchArray(SQLITE3_ASSOC)) { $rsa[] = $row; } $stmt->close(); $sl3->close(); header('Content-Type: application/json'); ob_start(); echo json_encode($rsa); ob_end_flush(); exit(); } cpheader(); shownav('global', 'setting_runtests'); showsubmenu('setting_runtests'); ?>