Files
ops-Gazelle/tests/phpunit/manager/SiteOptionTest.php
T
2025-07-28 17:00:18 +02:00

55 lines
1.6 KiB
PHP

<?php
namespace Gazelle;
use PHPUnit\Framework\TestCase;
class SiteOptionTest extends TestCase {
public function testCreateSiteOption(): void {
$manager = new Manager\SiteOption();
$name = 'phpunit-' . randomString(10);
$value = randomString();
$comment = "phpunit test";
$optionId = $manager->createOption($name, $value, $comment);
$this->assertGreaterThan(0, $optionId, 'site-option-create');
$this->assertNull(
$manager->createOption($name, $value, "phpunit test dupe"),
'site-option-dupe',
);
// exercise the SQL
global $Cache;
$Cache->delete_value(sprintf($manager::CACHE_KEY, $name));
$this->assertEquals(
$value,
$manager->findValueByName($name),
'site-option-find-by-name',
);
$list = $manager->list();
$this->assertEquals(
[
'id' => $optionId,
'name' => $name,
'value' => $value,
'comment' => $comment,
],
$list[$name],
'site-option-list',
);
$this->assertEquals(
1,
$manager->modifyOption($name, "$value mod"),
'site-option-modify',
);
$this->assertEquals(
"$value mod",
$manager->findValueByName($name),
'site-option-find-modified',
);
$this->assertEquals(
1,
$manager->removeOptionByName($name),
'site-option-remove',
);
}
}