misc_pterodactyl-panel/tests/Traits/MocksUuids.php

37 lines
760 B
PHP
Raw Permalink Normal View History

2017-10-08 04:29:08 +00:00
<?php
namespace Pterodactyl\Tests\Traits;
2017-10-08 04:29:08 +00:00
use Mockery as m;
use Ramsey\Uuid\Uuid;
use Ramsey\Uuid\UuidFactory;
2017-10-08 20:29:46 +00:00
trait MocksUuids
2017-10-08 04:29:08 +00:00
{
/**
* The known UUID string.
*/
protected string $knownUuid = 'ffb5c3a6-ab17-43ab-97f0-8ff37ccd7f5f';
2017-10-08 04:29:08 +00:00
/**
* Setup a factory mock to produce the same UUID whenever called.
*/
public function setKnownUuidFactory(): void
2017-10-08 04:29:08 +00:00
{
$uuid = Uuid::fromString($this->getKnownUuid());
$factoryMock = m::mock(UuidFactory::class . '[uuid4]', [
'uuid4' => $uuid,
]);
Uuid::setFactory($factoryMock);
}
/**
* Returns the known UUID for tests to use.
*/
public function getKnownUuid(): string
{
return $this->knownUuid;
}
}