31 lines
1015 B
PHP
31 lines
1015 B
PHP
<?php
|
|
|
|
namespace Tests\Unit\Enums;
|
|
|
|
use App\Enums\DocumentModalityEnum;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
class DocumentModalityEnumTest extends TestCase
|
|
{
|
|
public function test_price_per_modality(): void
|
|
{
|
|
$this->assertSame(1000000, DocumentModalityEnum::CtScan->price());
|
|
$this->assertSame(1200000, DocumentModalityEnum::Mri->price());
|
|
$this->assertSame(500000, DocumentModalityEnum::Sonography->price());
|
|
$this->assertSame(700000, DocumentModalityEnum::Echo->price());
|
|
$this->assertSame(400000, DocumentModalityEnum::Radiology->price());
|
|
}
|
|
|
|
public function test_every_case_has_a_positive_price(): void
|
|
{
|
|
foreach (DocumentModalityEnum::cases() as $modality) {
|
|
$this->assertGreaterThan(0, $modality->price(), $modality->name);
|
|
}
|
|
}
|
|
|
|
public function test_values_are_slugs_used_by_forms(): void
|
|
{
|
|
$this->assertSame(['ct-scan', 'mri', 'sonography', 'echo', 'radiology'], DocumentModalityEnum::values());
|
|
}
|
|
}
|