mirror of
https://github.com/torrentpier/torrentpier
synced 2025-07-05 20:41:41 -07:00
* feat(tests): integrate Pest testing framework and set up initial test structure - Added Pest as a development dependency for enhanced testing capabilities. - Created a PHPUnit configuration file (`phpunit.xml`) for test suite management. - Established a base test case class (`TestCase.php`) for consistent test structure. - Implemented example tests in both feature and unit directories to demonstrate usage. - Introduced a custom Pest file (`Pest.php`) to extend functionality and define global helpers. This setup streamlines the testing process and provides a foundation for future test development. * feat(test): add comprehensive testing infrastructure with Pest PHP - Add complete Pest PHP testing suite with extensive helper functions - Implement unit tests for Database and DatabaseDebugger classes - Implement unit tests for CacheManager and DatastoreManager classes - Add comprehensive mock factories and test data generators - Add custom Pest expectations for TorrentPier-specific validation - Create detailed testing documentation with examples and best practices - Update main README.md and UPGRADE_GUIDE.md with testing sections - Update dependencies to support testing infrastructure - Remove example test file and replace with production-ready tests BREAKING CHANGE: None - all existing functionality maintained The testing infrastructure includes: - 25+ helper functions for test setup and mocking - Singleton pattern testing for all major components - Mock factories for Database, Cache, and external dependencies - Custom expectations: toBeValidDatabaseConfig, toHaveDebugInfo - Comprehensive documentation with real-world examples - Performance testing utilities and execution time assertions
57 lines
1.2 KiB
PHP
57 lines
1.2 KiB
PHP
<?php
|
||
/**
|
||
* TorrentPier – Bull-powered BitTorrent tracker engine
|
||
*
|
||
* @copyright Copyright (c) 2005-2025 TorrentPier (https://torrentpier.com)
|
||
* @link https://github.com/torrentpier/torrentpier for the canonical source repository
|
||
* @license https://github.com/torrentpier/torrentpier/blob/master/LICENSE MIT License
|
||
*/
|
||
|
||
if (!defined('BB_ROOT')) {
|
||
define('BB_ROOT', __DIR__ . DIRECTORY_SEPARATOR);
|
||
define('BB_PATH', BB_ROOT);
|
||
}
|
||
|
||
// Check CLI mode
|
||
if (PHP_SAPI != 'cli') {
|
||
exit;
|
||
}
|
||
|
||
if (!function_exists('removeFile')) {
|
||
// Get all constants
|
||
require_once BB_ROOT . 'library/defines.php';
|
||
|
||
// Include CLI functions
|
||
require INC_DIR . '/functions_cli.php';
|
||
}
|
||
|
||
$items = [
|
||
'.github',
|
||
'.cliffignore',
|
||
'.editorconfig',
|
||
'.gitignore',
|
||
'.styleci.yml',
|
||
'_release.php',
|
||
'CHANGELOG.md',
|
||
'CLAUDE.md',
|
||
'cliff.toml',
|
||
'CODE_OF_CONDUCT.md',
|
||
'CONTRIBUTING.md',
|
||
'crowdin.yml',
|
||
'HISTORY.md',
|
||
'phpunit.xml',
|
||
'README.md',
|
||
'SECURITY.md',
|
||
'tests',
|
||
'UPGRADE_GUIDE.md'
|
||
];
|
||
|
||
foreach ($items as $item) {
|
||
$path = BB_ROOT . $item;
|
||
|
||
if (is_file($path)) {
|
||
removeFile($path);
|
||
} elseif (is_dir($path)) {
|
||
removeDir($path);
|
||
}
|
||
}
|