- Added comprehensive AI Assistant system (aiassist/ directory): * Vector search and embedding capabilities * Typebot proxy integration * Elastic search functionality * Message classification and chat history * MCP proxy for external integrations - Implemented Court Status API (GetCourtStatus.php): * Real-time court document status checking * Integration with external court systems * Comprehensive error handling and logging - Enhanced S3 integration: * Improved file backup system with metadata * Batch processing capabilities * Enhanced error logging and recovery * Copy operations with URL fixing - Added Telegram contact creation API - Improved error logging across all modules - Enhanced callback system for AI responses - Extensive backup file storage with timestamps - Updated documentation and README files - File storage improvements: * Thousands of backup files with proper metadata * Fix operations for broken file references * Project-specific backup and recovery systems * Comprehensive file integrity checking Total: 26,461+ files added/modified including AWS SDK, vendor dependencies, and extensive backup system.
97 lines
2.4 KiB
PHP
97 lines
2.4 KiB
PHP
--TEST--
|
|
HTTP_Session2 with phpDoctrine container (and sqlite) write and read
|
|
--SKIPIF--
|
|
<?php
|
|
$skip = true;
|
|
if ($skip === true) {
|
|
die('Skip This is an incomplete test.');
|
|
}
|
|
if (!extension_loaded('pdo')) {
|
|
die('Skip This test needs pdo, please make sure it\'s loaded.');
|
|
}
|
|
if (!extension_loaded('pdo_sqlite')) {
|
|
die('Skip This test needs pdo_sqlite, please make sure it\'s loaded.');
|
|
}
|
|
include_once 'Doctrine/lib/Doctrine.php';
|
|
if (!class_exists('Doctrine')) {
|
|
die('Skip This test needs phpDoctrine, please make sure it\'s installed.');
|
|
}
|
|
?>
|
|
--FILE--
|
|
<?php
|
|
$_tmp = dirname(__FILE__) . '/tmp';
|
|
$_db = $_tmp . '/test-doctrine.db';
|
|
|
|
require_once 'HTTP/Session2.php';
|
|
|
|
/**
|
|
* This is a hack.
|
|
*
|
|
* @param string $_db Path to the db.
|
|
*
|
|
* @return void
|
|
*/
|
|
function createDB($db)
|
|
{
|
|
require_once 'Doctrine/lib/Doctrine.php';
|
|
spl_autoload_register(array('Doctrine', 'autoload'));
|
|
|
|
try {
|
|
$db = Doctrine_Manager::connection("sqlite:///$db");
|
|
$path = '@include_path@/HTTP/Session2/Container/Doctrine';
|
|
|
|
if (strstr($path, '@include_path@')) { // for from VCS
|
|
$path = str_replace(
|
|
'@include_path@',
|
|
realpath(dirname(__FILE__) . '/../'),
|
|
$path
|
|
);
|
|
}
|
|
$sql = Doctrine::generateSqlFromModels($path);
|
|
$db->execute($sql);
|
|
} catch (Doctrine_Exception $e) {
|
|
if (!strstr($e->getMessage(), 'already exists')) {
|
|
die("createDB sql error: {$e->getMessage()} ({$e->getCode()})");
|
|
}
|
|
}
|
|
}
|
|
|
|
if (!file_exists($_tmp)) {
|
|
mkdir($_tmp);
|
|
}
|
|
createDB($_db);
|
|
|
|
try {
|
|
HTTP_Session2::useCookies(false);
|
|
HTTP_Session2::setContainer('Doctrine',
|
|
array('dsn' => "sqlite:///{$_db}",
|
|
'table' => 'sessiondata'));
|
|
|
|
HTTP_Session2::start('testSession');
|
|
HTTP_Session2::id('sessionTest');
|
|
|
|
$nCount = 0;
|
|
while (++$nCount <= 2) {
|
|
$_var = HTTP_Session2::get('test', 'bar');
|
|
if ($_var == 'bar') {
|
|
var_dump("Setting..");
|
|
HTTP_Session2::set('test', 'foobar');
|
|
} else {
|
|
var_dump("Retrieving..");
|
|
var_dump(HTTP_Session2::get('test'));
|
|
}
|
|
}
|
|
} catch (Exception $e) {
|
|
die($e->getMessage());
|
|
}
|
|
--CLEAN--
|
|
<?php
|
|
$_tmp = dirname(__FILE__) . '/tmp';
|
|
include dirname(__FILE__) . '/functions.php';
|
|
unlinkRecursive($_tmp);
|
|
--EXPECT--
|
|
string(9) "Setting.."
|
|
string(12) "Retrieving.."
|
|
string(6) "foobar"
|
|
|