public function setUp() { $package1 = $this->getMock('TYPO3\\Flow\\Package\\PackageInterface'); $package1->expects($this->any())->method('getPackageKey')->will($this->returnValue('Foo.Package1')); $package1->expects($this->any())->method('getConfigurationPath')->will($this->returnValue(__DIR__ . '/../Fixture/Roles/Foo.Package1/')); $package2 = $this->getMock('TYPO3\\Flow\\Package\\PackageInterface'); $package2->expects($this->any())->method('getPackageKey')->will($this->returnValue('Package2')); $package2->expects($this->any())->method('getConfigurationPath')->will($this->returnValue(__DIR__ . '/../Fixture/Roles/Package2/')); $this->configurationManager = new \TYPO3\Flow\Configuration\ConfigurationManager(new \TYPO3\Flow\Core\ApplicationContext('Testing')); $this->configurationManager->setPackages(array($package1->getPackageKey() => $package1, $package2->getPackageKey() => $package2)); $this->configurationManager->injectConfigurationSource(new \TYPO3\Flow\Configuration\Source\YamlSource()); $mockEnvironment = $this->getMock('TYPO3\\Flow\\Utility\\Environment', array(), array(), '', FALSE); $this->configurationManager->injectEnvironment($mockEnvironment); $this->policyService = $this->getAccessibleMock('TYPO3\\Flow\\Security\\Policy\\PolicyService', array('setAclsForEverybodyRole'), array(), '', FALSE); $this->policyService->injectConfigurationManager($this->configurationManager); $this->policyService->_set('policy', $this->configurationManager->getConfiguration(\TYPO3\Flow\Configuration\ConfigurationManager::CONFIGURATION_TYPE_POLICY)); }
/** * @param \Mrimann\CoMo\Domain\Model\Repository $repository * @return string path to the cache directory for this repository */ protected function getCachePath(\Mrimann\CoMo\Domain\Model\Repository $repository) { $applicationContext = new \TYPO3\Flow\Core\ApplicationContext('Development'); $environment = new \TYPO3\Flow\Utility\Environment($applicationContext); // Fiddle out the path to the temporary directory, depending on the Flow-Context $this->configurationManager->injectEnvironment($environment); $this->settings = $this->configurationManager->getConfiguration('Settings', 'Mrimann.CoMo'); $environment->setTemporaryDirectoryBase($this->settings['cacheBasePath']); $workingBaseDirectory = $environment->getPathToTemporaryDirectory(); // Create the working directory for this repository $workingDirectory = $workingBaseDirectory . 'Mrimann.CoMo/' . $repository->getIdentity(); if (!is_dir($workingDirectory)) { mkdir($workingDirectory, 0777, TRUE); } return $workingDirectory; }