/** * @param CoverageData $coverage * @param string $file * @return bool */ public function hasModifiedTestFiles(CoverageData $coverage, $file) { $tests = $coverage->getAllTestClasses($file); $testFiles = []; foreach ($tests as $test) { $tfile = $this->container->getAdapter()->getClassFile($test, $this->container); $this->testCollector->collect($tfile); $testFiles[] = $tfile; } foreach ($testFiles as $testFile) { if (!$this->cachedTestCollection->hasFile($testFile)) { return true; } $currentHash = $this->testCollector->getCollection()->getFileHash($testFile); $previousHash = $this->cachedTestCollection->getFileHash($testFile); if ($currentHash !== $previousHash) { return true; } } return false; }
public function __construct(Container $container) { $this->adapter = $container->getAdapter(); $this->container = $container; }