-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathXzTest.php
More file actions
43 lines (37 loc) · 1.43 KB
/
Copy pathXzTest.php
File metadata and controls
43 lines (37 loc) · 1.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
declare(strict_types=1);
namespace PetrKnap\Binary\Coder;
use PHPUnit\Framework\Attributes\DataProvider;
final class XzTest extends CoderTestCase
{
public static function data(): array
{
$data = self::getDecodedData();
return [
'default compression preset' => [$data, base64_decode('/Td6WFoAAATm1rRGBMAkPCEBFgAAAAAAAAAAAPuWV53gADsAHF0AbQ5QbuMJR8+PTPTyAls/0qC2EgdL+OAsyTjgAADBW9je9POxmwABQDyphpD/H7bzfQEAAAAABFla'), null],
'compression preset 0' => [$data, base64_decode('/Td6WFoAAATm1rRGA8AkPCEBDAAAAAAAhAE4x+AAOwAcXQBtDlBu4wlHz49M9PICWz/SoLYSB0v44CzJOOAAAMFb2N7087GbAAE8PFOwGnwftvN9AQAAAAAEWVo='), 0],
'compression preset 9' => [$data, base64_decode('/Td6WFoAAATm1rRGBMAkPCEBHAAAAAAAAAAAADIGdYrgADsAHF0AbQ5QbuMJR8+PTPTyAls/0qC2EgdL+OAsyTjgAADBW9je9POxmwABQDyphpD/H7bzfQEAAAAABFla'), 9],
];
}
#[DataProvider('data')]
public function testEncodes(string $decoded, string $encoded, int|null $compressionPreset): void
{
self::assertBinarySame(
$encoded,
(new Xz())->encode(
$decoded,
compressionPreset: $compressionPreset,
),
);
}
#[DataProvider('data')]
public function testDecodes(string $decoded, string $encoded): void
{
self::assertBinarySame(
$decoded,
(new Xz())->decode(
$encoded,
),
);
}
}