phpmyadmin/test/classes/Utils/FormatConverterTest.php
Maurício Meneghini Fauth 46f2c8871c
Backport some fixes for PHPUnit 10 compatibility
- Fixes https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1070623

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2024-08-13 20:13:18 -03:00

185 lines
4.0 KiB
PHP

<?php
declare(strict_types=1);
namespace PhpMyAdmin\Tests\Utils;
use PhpMyAdmin\Tests\AbstractTestCase;
use PhpMyAdmin\Utils\FormatConverter;
use function hex2bin;
/**
* @covers \PhpMyAdmin\Utils\FormatConverter
*/
class FormatConverterTest extends AbstractTestCase
{
/**
* Test for binaryToIp
*
* @param string $expected Expected result given an input
* @param string $input Input to convert
* @param bool $isBinary The data is binary data
*
* @dataProvider providerBinaryToIp
*/
public function testBinaryToIp(string $expected, string $input, bool $isBinary): void
{
$result = FormatConverter::binaryToIp($input, $isBinary);
$this->assertEquals($expected, $result);
}
/**
* Data provider for binaryToIp
*
* @return array
*/
public static function providerBinaryToIp(): array
{
// expected
// input
// isBinary
return [
[
'10.11.12.13',
'0x0a0b0c0d',
false,
],
[
'my ip',
'my ip',
false,
],
[
'10.11.12.13',
'0x0a0b0c0d',
true,
],
[
'6d79206970',
'my ip',
true,
],
[
'10.11.12.13',
'0x0a0b0c0d',
true,
],
[
'666566',
'fef',
true,
],
[
'0ded',
hex2bin('0DED'),
true,
],
[
'127.0.0.1',
hex2bin('30783766303030303031'),
true,
],
];
}
/**
* Test for ipToBinary
*
* @param string $expected Expected result given an input
* @param string $input Input to convert
*
* @dataProvider providerIpToBinary
*/
public function testIpToBinary(string $expected, string $input): void
{
$result = FormatConverter::ipToBinary($input);
$this->assertEquals($expected, $result);
}
/**
* Data provider for ipToBinary
*
* @return array
*/
public static function providerIpToBinary(): array
{
return [
[
'0x0a0b0c0d',
'10.11.12.13',
],
[
'my ip',
'my ip',
],
];
}
/**
* Test for ipToLong
*
* @param string $expected Expected result given an input
* @param string $input Input to convert
*
* @dataProvider providerIpToLong
*/
public function testIpToLong(string $expected, string $input): void
{
$result = FormatConverter::ipToLong($input);
$this->assertEquals($expected, $result);
}
/**
* Data provider for ipToLong
*
* @return array
*/
public static function providerIpToLong(): array
{
return [
[
'168496141',
'10.11.12.13',
],
[
'my ip',
'my ip',
],
];
}
/**
* Test for longToIp
*
* @param string $expected Expected result given an input
* @param string $input Input to convert
*
* @dataProvider providerLongToIp
*/
public function testLongToIp(string $expected, string $input): void
{
$result = FormatConverter::longToIp($input);
$this->assertEquals($expected, $result);
}
/**
* Data provider for longToIp
*
* @return array
*/
public static function providerLongToIp(): array
{
return [
[
'10.11.12.13',
'168496141',
],
[
'my ip',
'my ip',
],
];
}
}