<?php namespace tests\Unit\Domain\SourceManagement; use App\Domain\SourceManagement\SourceClassInformationServiceInterface; use App\Domain\SourceManagement\SourceClassInformationService; use PHPUnit\Framework\TestCase; use App\Entity\Source\PureSource; use App\Entity\Source\Complex\AbstractComplexSource; /** * @author kevinfrantz */ class SourceClassInformationServiceTest extends TestCase { /** * @var SourceClassInformationServiceInterface */ private $sourceClassInformationService; public function setUp(): void { $this->sourceClassInformationService = new SourceClassInformationService(); } public function testPureSource(): void { $allClasses = $this->sourceClassInformationService->getAllSourceClasses(); $this->assertTrue(in_array(PureSource::class, $allClasses)); } public function testNotSource(): void { $allClasses = $this->sourceClassInformationService->getAllSourceClasses(); $this->assertFalse(in_array('ALLALALABBBB', $allClasses)); } public function testSubSource(): void { $allClasses = $this->sourceClassInformationService->getAllSubSourceClasses('App\\Entity\\Source\\Complex'); $this->assertFalse(in_array(PureSource::class, $allClasses)); $this->assertTrue(in_array(AbstractComplexSource::class, $allClasses)); } }