TimeGeneratorFactoryTest.php 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. declare(strict_types=1);
  3. namespace Ramsey\Uuid\Test\Generator;
  4. use PHPUnit\Framework\MockObject\MockObject;
  5. use Ramsey\Uuid\Converter\TimeConverterInterface;
  6. use Ramsey\Uuid\Generator\TimeGeneratorFactory;
  7. use Ramsey\Uuid\Generator\TimeGeneratorInterface;
  8. use Ramsey\Uuid\Provider\NodeProviderInterface;
  9. use Ramsey\Uuid\Provider\TimeProviderInterface;
  10. use Ramsey\Uuid\Test\TestCase;
  11. class TimeGeneratorFactoryTest extends TestCase
  12. {
  13. public function testGeneratorReturnsNewGenerator(): void
  14. {
  15. /** @var MockObject & TimeProviderInterface $timeProvider */
  16. $timeProvider = $this->getMockBuilder(TimeProviderInterface::class)->getMock();
  17. /** @var MockObject & NodeProviderInterface $nodeProvider */
  18. $nodeProvider = $this->getMockBuilder(NodeProviderInterface::class)->getMock();
  19. /** @var MockObject & TimeConverterInterface $timeConverter */
  20. $timeConverter = $this->getMockBuilder(TimeConverterInterface::class)->getMock();
  21. $factory = new TimeGeneratorFactory($nodeProvider, $timeConverter, $timeProvider);
  22. $generator = $factory->getGenerator();
  23. $this->assertInstanceOf(TimeGeneratorInterface::class, $generator);
  24. }
  25. }