mirror of
https://github.com/Ne-Lexa/php-zip.git
synced 2025-08-05 23:17:24 +02:00
zip extra fields tests
This commit is contained in:
57
tests/Extra/Fields/UnrecognizedExtraFieldTest.php
Normal file
57
tests/Extra/Fields/UnrecognizedExtraFieldTest.php
Normal file
@@ -0,0 +1,57 @@
|
||||
<?php
|
||||
|
||||
namespace PhpZip\Tests\Extra\Fields;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use PhpZip\Exception\RuntimeException;
|
||||
use PhpZip\Model\Extra\Fields\UnrecognizedExtraField;
|
||||
|
||||
/**
|
||||
* Class UnrecognizedExtraFieldTest.
|
||||
*
|
||||
* @internal
|
||||
*
|
||||
* @small
|
||||
*/
|
||||
final class UnrecognizedExtraFieldTest extends TestCase
|
||||
{
|
||||
public function testExtraField()
|
||||
{
|
||||
$headerId = 0xF00D;
|
||||
$binaryData = "\x01\x02\x03\x04\x05";
|
||||
|
||||
$unrecognizedExtraField = new UnrecognizedExtraField($headerId, $binaryData);
|
||||
self::assertSame($unrecognizedExtraField->getHeaderId(), $headerId);
|
||||
self::assertSame($unrecognizedExtraField->getData(), $binaryData);
|
||||
|
||||
$newHeaderId = 0xDADA;
|
||||
$newBinaryData = "\x05\x00";
|
||||
$unrecognizedExtraField->setHeaderId($newHeaderId);
|
||||
self::assertSame($unrecognizedExtraField->getHeaderId(), $newHeaderId);
|
||||
$unrecognizedExtraField->setData($newBinaryData);
|
||||
self::assertSame($unrecognizedExtraField->getData(), $newBinaryData);
|
||||
|
||||
self::assertSame($unrecognizedExtraField->packLocalFileData(), $newBinaryData);
|
||||
self::assertSame($unrecognizedExtraField->packCentralDirData(), $newBinaryData);
|
||||
}
|
||||
|
||||
public function testUnpackLocalData()
|
||||
{
|
||||
$this->setExpectedException(
|
||||
RuntimeException::class,
|
||||
'Unsupport parse'
|
||||
);
|
||||
|
||||
UnrecognizedExtraField::unpackLocalFileData("\x01\x02");
|
||||
}
|
||||
|
||||
public function testUnpackCentralDirData()
|
||||
{
|
||||
$this->setExpectedException(
|
||||
RuntimeException::class,
|
||||
'Unsupport parse'
|
||||
);
|
||||
|
||||
UnrecognizedExtraField::unpackCentralDirData("\x01\x02");
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user