orbit/tests/src/Orbit/UtilTest.php
2020-09-06 02:32:56 -05:00

49 lines
1.3 KiB
PHP

<?php declare(strict_types=1);
namespace Orbit\Tests;
use PHPUnit\Framework\TestCase;
use Orbit\Util;
final class UtilTest extends TestCase
{
public function testHexView(): void
{
$result = Util::hexView("aa");
$this->assertStringContainsString("61 61", $result);
$this->assertStringContainsString("aa", $result);
}
public function testHexViewSpecialChars(): void
{
$result = Util::hexView("√√ç∂¥˙˚ˆø©ååœ");
$this->assertStringContainsString("E2 88 9A E2 88 9A C3 A7 E2 88 82 C2 A5 CB 99 CB", $result);
$this->assertStringContainsString("9A CB 86 C3 B8 C2 A9 C3 A5 C3 A5 C5 93", $result);
}
public function testHexViewNonPrintableChars(): void
{
$result = Util::hexView(chr(1) . chr(2) . chr(3) . chr(27));
$this->assertStringContainsString("01 02 03 1B", $result);
}
public function testHexViewMultibyteChars(): void
{
$result = Util::hexView("0א0ڃ");
$this->assertStringContainsString("30 D7 90 30 DA 83", $result);
$this->assertStringContainsString("0..0", $result);
}
public function testHexViewEmoji(): void
{
$result = Util::hexView("🍪");
$this->assertStringContainsString("F0 9F 8D AA", $result);
}
}