19declare(strict_types=1);
21use PHPUnit\Framework\TestCase;
27 protected function setUp(): void
29 $this->path = tempnam(sys_get_temp_dir(),
'ini');
35 if (is_file($this->path)) {
47 'server' => [
'http_path' =>
'https://ilias.example.org',
'timezone' =>
'Europe/Zurich'],
48 'clients' => [
'default' =>
'default'],
50 $this->assertTrue($ini->write());
53 $this->assertSame(
'https://ilias.example.org',
$written->readVariable(
'server',
'http_path'));
54 $this->assertSame(
'default',
$written->readVariable(
'clients',
'default'));
55 $this->assertTrue(
$written->setVariable(
'server',
'timezone',
'UTC'));
61 $ini->GROUPS = [
'a' => [
'x' =>
'1',
'y' =>
'2'],
'b' => [
'z' =>
'3']];
65 unset($ini->GROUPS[
'b'], $ini->GROUPS[
'a'][
'y']);
69 $this->assertSame([
'a'],
$written->readGroups());
70 $this->assertSame([
'x' =>
'1'],
$written->readGroup(
'a'));
76 $ini->addGroup(
'log');
77 $ini->setVariable(
'log',
'level',
'debug');
80 $this->assertSame(
'debug', (
new ilIniFile($this->path))->readVariable(
'log',
'level'));
testAssignedGroupsAreWritten()
ilIniFilesPopulatedObjective fills a new ini file by assigning $GROUPS
testSetVariableIsWritten()
testGroupsAndVariablesRemovedFromGroupsAreNotWritten()
INI file parser — compatibility wrapper.
if(! $all_ok) if(!is_dir($output_dir) &&! @mkdir($output_dir, 0775, true) &&!is_dir($output_dir)) $written