Add creation/deletion of separate .htconfig.php used for tests

This commit is contained in:
Hypolite Petovan 2018-07-03 21:22:50 -04:00
parent d31e3b16ff
commit 125f7beb63
1 changed files with 33 additions and 7 deletions

View File

@ -21,24 +21,50 @@ abstract class DatabaseTest extends TestCase
use TestCaseTrait; use TestCaseTrait;
/** /**
* Creates .htconfig.php for bin/worker.php execution * Renames an eventually existing .htconfig.php to .htconfig.php.tmp
* Creates a new .htconfig.php for bin/worker.php execution
*/ */
protected function setUp() public static function setUpBeforeClass()
{ {
parent::setUp(); parent::setUpBeforeClass();
$base_config_file_name = 'htconfig.php'; $base_config_file_name = 'htconfig.php';
$config_file_name = '.htconfig.php'; $config_file_name = '.htconfig.php';
$base_config_file_path = stream_resolve_include_path($base_config_file_name); $base_config_file_path = stream_resolve_include_path($base_config_file_name);
$config_file_path = dirname($base_config_file_path) . DIRECTORY_SEPARATOR . $config_file_name; $config_file_path = dirname($base_config_file_path) . DIRECTORY_SEPARATOR . $config_file_name;
$config_file_path_tmp = $config_file_path . '.tmp';
if (!file_exists($config_file_path)) { if (file_exists($config_file_path)) {
$config_string = file_get_contents($base_config_file_path); rename($config_file_path, $config_file_path_tmp);
}
$config_string = str_replace('die(', '// die(', $config_string); $config_string = file_get_contents($base_config_file_path);
file_put_contents($config_file_path, $config_string); $config_string = str_replace('die(', '// die(', $config_string);
file_put_contents($config_file_path, $config_string);
}
/**
* Delete the created .htconfig.php
* Renames an eventually existing .htconfig.php.tmp to .htconfig.php
*/
public static function tearDownAfterClass()
{
$base_config_file_name = 'htconfig.php';
$config_file_name = '.htconfig.php';
$base_config_file_path = stream_resolve_include_path($base_config_file_name);
$config_file_path = dirname($base_config_file_path) . DIRECTORY_SEPARATOR . $config_file_name;
$config_file_path_tmp = $config_file_path . '.tmp';
if (file_exists($config_file_path)) {
unlink($config_file_path);
}
if (file_exists($config_file_path_tmp)) {
rename($config_file_path_tmp, $config_file_path);
} }
} }