mirror of
https://github.com/ramsey/uuid.git
synced 2026-06-14 15:56:48 +03:00
32 lines
974 B
PHP
32 lines
974 B
PHP
<?php
|
|
|
|
namespace Ramsey\Uuid\Test\Converter\Time;
|
|
|
|
use Ramsey\Uuid\Converter\Time\PhpTimeConverter;
|
|
use Ramsey\Uuid\Test\TestCase;
|
|
|
|
/**
|
|
* Class PhpTimeConverterTest
|
|
* @package Ramsey\Uuid\Test\Converter
|
|
* @covers \Ramsey\Uuid\Converter\Time\PhpTimeConverter
|
|
*/
|
|
class PhpTimeConverterTest extends TestCase
|
|
{
|
|
|
|
public function testCalculateTimeReturnsArrayOfTimeSegments()
|
|
{
|
|
$seconds = 5;
|
|
$microSeconds = 3;
|
|
$calculatedTime = ($seconds * 10000000) + ($microSeconds * 10) + 0x01b21dd213814000;
|
|
$expectedArray = [
|
|
'low' => sprintf('%08x', $calculatedTime & 0xffffffff),
|
|
'mid' => sprintf('%04x', ($calculatedTime >> 32) & 0xffff),
|
|
'hi' => sprintf('%04x', ($calculatedTime >> 48) & 0x0fff)
|
|
];
|
|
|
|
$converter = new PhpTimeConverter();
|
|
$returned = $converter->calculateTime((string) $seconds, (string) $microSeconds);
|
|
$this->assertEquals($expectedArray, $returned);
|
|
}
|
|
}
|