2017-06-25 16:02:54 +00:00
|
|
|
<?php
|
2022-02-17 02:25:59 +00:00
|
|
|
|
2017-06-25 16:02:54 +00:00
|
|
|
/**
|
|
|
|
* @author Andreas Fischer <bantu@phpbb.com>
|
|
|
|
* @copyright 2013 Andreas Fischer
|
|
|
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
|
|
|
*/
|
|
|
|
|
2022-06-04 15:31:21 +00:00
|
|
|
declare(strict_types=1);
|
|
|
|
|
2022-02-23 02:48:51 +00:00
|
|
|
namespace phpseclib3\Tests\Unit\Math\BigInteger;
|
|
|
|
|
2022-01-30 15:34:42 +00:00
|
|
|
use phpseclib3\Math\BigInteger\Engines\PHP64;
|
2017-06-25 16:02:54 +00:00
|
|
|
|
2022-02-23 02:48:51 +00:00
|
|
|
class PHP64Test extends TestCase
|
2017-06-25 16:02:54 +00:00
|
|
|
{
|
2022-06-04 15:31:21 +00:00
|
|
|
public static function setUpBeforeClass(): void
|
2017-06-25 16:02:54 +00:00
|
|
|
{
|
|
|
|
if (!PHP64::isValidEngine()) {
|
|
|
|
self::markTestSkipped('64-bit integers are not available.');
|
|
|
|
}
|
|
|
|
PHP64::setModExpEngine('DefaultEngine');
|
|
|
|
}
|
|
|
|
|
2022-06-04 15:31:21 +00:00
|
|
|
public function getInstance($x = 0, $base = 10): PHP64
|
2017-06-25 16:02:54 +00:00
|
|
|
{
|
|
|
|
return new PHP64($x, $base);
|
|
|
|
}
|
|
|
|
|
2022-06-04 15:31:21 +00:00
|
|
|
public function testInternalRepresentation(): void
|
2017-06-25 16:02:54 +00:00
|
|
|
{
|
|
|
|
$x = new PHP64('FFFFFFFFFFFFFFFFC90FDA', 16);
|
|
|
|
$y = new PHP64("$x");
|
|
|
|
|
|
|
|
$this->assertSame(self::getVar($x, 'value'), self::getVar($y, 'value'));
|
|
|
|
}
|
|
|
|
|
2022-06-04 15:31:21 +00:00
|
|
|
public static function getStaticClass(): string
|
2017-06-25 16:02:54 +00:00
|
|
|
{
|
2019-11-07 05:41:40 +00:00
|
|
|
return 'phpseclib3\Math\BigInteger\Engines\PHP64';
|
2017-06-25 16:02:54 +00:00
|
|
|
}
|
|
|
|
}
|