ExtendedInformationExtraField.php 0000644 00000000621 15152066024 0013173 0 ustar 00 <?php
declare(strict_types=1);
namespace ZipStream\Zs;
use ZipStream\PackField;
/**
* @internal
*/
abstract class ExtendedInformationExtraField
{
private const TAG = 0x5653;
public static function generate(): string
{
return PackField::pack(
new PackField(format: 'v', value: self::TAG),
new PackField(format: 'v', value: 0x0000),
);
}
}
ExtendedInformationExtraFieldTest.php 0000644 00000001017 15152066042 0014033 0 ustar 00 <?php
declare(strict_types=1);
namespace ZipStream\Test\Zs;
use PHPUnit\Framework\TestCase;
use ZipStream\Zs\ExtendedInformationExtraField;
class ExtendedInformationExtraFieldTest extends TestCase
{
public function testSerializesCorrectly(): void
{
$extraField = ExtendedInformationExtraField::generate();
$this->assertSame(
bin2hex((string) $extraField),
'5356' . // 2 bytes; Tag for this "extra" block type
'0000' // 2 bytes; TODO: Document
);
}
}