public function detectChangesEmitsFilesHaveChangedSignalIfFilesHaveChanged()
{
$mockSystemLogger = $this->createMock(SystemLoggerInterface::class);
$monitoredFiles = [__FILE__ . '1', __FILE__ . '2', __FILE__ . '3'];
$expectedChangedFiles = [];
$expectedChangedFiles[$this->unixStylePathAndFilename . '1'] = ChangeDetectionStrategyInterface::STATUS_CREATED;
$expectedChangedFiles[$this->unixStylePathAndFilename . '3'] = ChangeDetectionStrategyInterface::STATUS_DELETED;
$mockMonitor = $this->getAccessibleMock(FileMonitor::class, ['loadDetectedDirectoriesAndFiles', 'detectChangedFiles', 'emitFilesHaveChanged'], ['Flow_Test'], '', true, true);
$mockMonitor->expects($this->once())->method('detectChangedFiles')->with($monitoredFiles)->will($this->returnValue($expectedChangedFiles));
$mockMonitor->expects($this->once())->method('emitFilesHaveChanged')->with('Flow_Test', $expectedChangedFiles);
$mockMonitor->injectSystemLogger($mockSystemLogger);
$mockMonitor->_set('monitoredFiles', $monitoredFiles);
$mockMonitor->detectChanges();
}