shlink/module/Rest/test-db/ApiKey/Repository/ApiKeyRepositoryTest.php

33 lines
1.1 KiB
PHP
Raw Normal View History

2022-09-11 05:18:04 -05:00
<?php
declare(strict_types=1);
namespace ShlinkioDbTest\Shlink\Rest\ApiKey\Repository;
use PHPUnit\Framework\Attributes\Test;
2022-09-11 05:18:04 -05:00
use Shlinkio\Shlink\Rest\ApiKey\Repository\ApiKeyRepository;
use Shlinkio\Shlink\Rest\Entity\ApiKey;
use Shlinkio\Shlink\TestUtils\DbTest\DatabaseTestCase;
class ApiKeyRepositoryTest extends DatabaseTestCase
{
private ApiKeyRepository $repo;
protected function setUp(): void
{
$this->repo = $this->getEntityManager()->getRepository(ApiKey::class);
}
#[Test]
2022-09-11 05:18:04 -05:00
public function initialApiKeyIsCreatedOnlyOfNoApiKeysExistYet(): void
{
self::assertCount(0, $this->repo->findAll());
self::assertNotNull($this->repo->createInitialApiKey('initial_value'));
2022-09-11 05:18:04 -05:00
self::assertCount(1, $this->repo->findAll());
self::assertCount(1, $this->repo->findBy(['key' => ApiKey::hashKey('initial_value')]));
self::assertNull($this->repo->createInitialApiKey('another_one'));
2022-09-11 05:18:04 -05:00
self::assertCount(1, $this->repo->findAll());
self::assertCount(0, $this->repo->findBy(['key' => ApiKey::hashKey('another_one')]));
2022-09-11 05:18:04 -05:00
}
}