<?php

declare(strict_types=1);

namespace Seka\Portal\Modul\Statistiky\Tests\Unit\Entities\Zaznam\Enums;

use Seka\Portal\Modul\Statistiky\Entities\Zaznam\Enums\DruhSubjektuZaznamuEnum;
use Seka\Portal\Modul\Statistiky\Tests\TestCase;

/**
 * Class DruhSubjektuZaznamuEnumTest
 *
 * @package Seka\Portal\Modul\Statistiky\Tests\Unit\Entities\Zaznam\Enums
 */
class DruhSubjektuZaznamuEnumTest extends TestCase
{
    /**
     *
     */
    public function testPOUZIVATEL()
    {
        $this->testing('POUZIVATEL');
    }

    /**
     *
     */
    public function testPRACOVISKO()
    {
        $this->testing('PRACOVISKO');
    }

    /**
     *
     */
    public function testPocetDruhovZaznamu()
    {
        self::assertCount(2, DruhSubjektuZaznamuEnum::toValues());
    }

    /**
     * @param string $value
     */
    private function testing(string $value)
    {
        self::assertStringEndsWith($value, DruhSubjektuZaznamuEnum::$value()->value);
        self::assertStringStartsWith($value, DruhSubjektuZaznamuEnum::$value()->value);
        self::assertTrue(DruhSubjektuZaznamuEnum::$value()->equals(DruhSubjektuZaznamuEnum::from($value)));
    }
}
