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

View File

@ -21,24 +21,50 @@ abstract class DatabaseTest extends TestCase
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';
$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)) {
$config_string = file_get_contents($base_config_file_path);
if (file_exists($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);
}
}