public function testLocateIdentifiersByTypeAggregatesSource()
{
$identifierType = new IdentifierType();
$locator1 = $this->createMock(SourceLocator::class);
$locator2 = $this->createMock(SourceLocator::class);
$locator3 = $this->createMock(SourceLocator::class);
$locator4 = $this->createMock(SourceLocator::class);
$source2 = $this->createMock(ReflectionClass::class);
$source3 = $this->createMock(ReflectionClass::class);
$locator1->expects($this->once())->method('locateIdentifiersByType')->willReturn([]);
$locator2->expects($this->once())->method('locateIdentifiersByType')->willReturn([$source2]);
$locator3->expects($this->once())->method('locateIdentifiersByType')->willReturn([$source3]);
$locator4->expects($this->once())->method('locateIdentifiersByType')->willReturn([]);
$this->assertSame([$source2, $source3], (new AggregateSourceLocator([$locator1, $locator2, $locator3, $locator4]))->locateIdentifiersByType($this->getMockReflector(), $identifierType));
}