<?php

declare(strict_types=1);

namespace Seka\Vzdelavanie\Models\Testovanie;

/**
 * Enum DruhSpravnejOdpovedeEnum
 *
 * @package Seka\Vzdelavanie\Models\Testovanie
 */
enum DruhSpravnejOdpovedeEnum: string
{
    case ZIADNA = 'ZIADNA';
    case JEDNA = 'JEDNA';
    case MINIMALNE_JEDNA = 'MINIMALNE_JEDNA';
    case DVE = 'DVE';
    case TRI = 'TRI';

    /**
     * @return string
     */
    public function label(): string
    {
        return match ($this) {
            self::ZIADNA => 'žiadna správna odpoveď',
            self::JEDNA => 'jedna správna odpoveď',
            self::MINIMALNE_JEDNA => 'minimálne jedna správna odpoveď',
            self::DVE => 'dve správne odpovede',
            self::TRI => 'tri správne odpovede',
        };
    }

    /**
     * @param \Seka\Vzdelavanie\Models\Testovanie\DruhSpravnejOdpovedeEnum $other
     *
     * @return bool
     */
    public function equal(self $other): bool
    {
        return $this === $other;
    }
}
