AsseticBundleTest\Service::testWriteAssetIfNotUpdated PHP Méthode

testWriteAssetIfNotUpdated() public méthode

    public function testWriteAssetIfNotUpdated()
    {
        $this->configuration->setBuildOnRequest(true);
        $this->configuration->setWriteIfChanged(true);
        $this->object->build();
        $manager = $this->object->getAssetManager();
        $factory = $this->object->createAssetFactory($this->configuration->getModule('test_application'));
        $assets = $manager->get('base_css')->all();
        /** @var \Assetic\Asset\AssetInterface $asset */
        $asset = $assets[0];
        $asset->setTargetPath($manager->get('base_css')->getTargetPath());
        $targetFile = $this->configuration->getWebPath($asset->getTargetPath());
        if (is_file($targetFile)) {
            unlink($targetFile);
        }
        $this->assertFileNotExists($targetFile);
        $this->object->writeAsset($asset, $factory);
        $this->assertFileExists($targetFile);
        $sourceFile = $asset->getSourceRoot() . '/' . $asset->getSourcePath();
        $targetMTime = filemtime($targetFile);
        sleep(2);
        $modifiedAsset = new FileAsset($sourceFile);
        $modifiedAsset->setTargetPath($targetFile);
        $this->object->writeAsset($modifiedAsset, $factory);
        clearstatcache(true, $targetFile);
        $targetMTimeNotModified = filemtime($targetFile);
        $this->assertLessThanOrEqual($targetMTime, $targetMTimeNotModified);
    }