test(core): unit tests for Util/Database/Enum pure logic (+44 tests)

Adds tests for Encryption, TimeUtils, QueryHelper, AdminHelpers, ImageUtils,
StreamUtils and BootContext/ServerEnvironment enums. 242 -> 286 tests, all green.
This commit is contained in:
Divarion-D
2026-06-22 18:47:50 +03:00
parent 9d49ddd7e9
commit 5ce38ea61f
7 changed files with 339 additions and 0 deletions
+34
View File
@@ -0,0 +1,34 @@
<?php
use PHPUnit\Framework\TestCase;
/**
* @covers ImageUtils
*/
final class ImageUtilsTest extends TestCase {
public function testKeepAspectRatioDownscales() {
$size = ImageUtils::getImageSizeKeepAspectRatio(1000, 500, 100, 100);
$this->assertEquals(100, $size['width']);
$this->assertEquals(50, $size['height']);
}
public function testKeepAspectRatioDoesNotUpscale() {
$size = ImageUtils::getImageSizeKeepAspectRatio(50, 50, 100, 100);
$this->assertEquals(50, $size['width']);
$this->assertEquals(50, $size['height']);
}
public function testKeepAspectRatioTreatsZeroMaxAsUnbounded() {
$size = ImageUtils::getImageSizeKeepAspectRatio(200, 100, 0, 50);
$this->assertEquals(100, $size['width']);
$this->assertEquals(50, $size['height']);
}
public function testIsAbsoluteUrl() {
$this->assertTrue(ImageUtils::isAbsoluteUrl('http://example.com/a.png'));
$this->assertTrue(ImageUtils::isAbsoluteUrl('https://example.com/a.png'));
$this->assertFalse(ImageUtils::isAbsoluteUrl('/relative/a.png'));
$this->assertFalse(ImageUtils::isAbsoluteUrl('a.png'));
}
}