setTempDirectory() public method

Sets path to temporary directory.
public setTempDirectory ( $path ) : self
return self
コード例 #1
0
 /**
  * @return Container
  */
 public function create()
 {
     $configurator = new Configurator();
     $configurator->setTempDirectory(TEMP_DIR);
     $configurator->addConfig(__DIR__ . '/config/default.neon');
     return $configurator->createContainer();
 }
コード例 #2
0
ファイル: TestCase.php プロジェクト: sasule/ThumbnailHelper
 protected function createContainer()
 {
     $configurator = new Configurator();
     $configurator->addParameters(array('wwwDir' => $this->wwwDir));
     $configurator->setTempDirectory(TEMP_DIR);
     $configurator->addConfig(__DIR__ . '/../config.neon');
     return $configurator->createContainer();
 }
コード例 #3
0
 public function create() : Container
 {
     $configurator = new Configurator();
     $configurator->setDebugMode(true);
     $configurator->setTempDirectory($this->createAndReturnTempDir());
     $configurator->addConfig(__DIR__ . '/../config/config.neon');
     return $configurator->createContainer();
 }
コード例 #4
0
ファイル: TestCase.php プロジェクト: kollarovic/navigation
 protected function createContainer()
 {
     $configurator = new Configurator();
     $configurator->setDebugMode(FALSE);
     $configurator->setTempDirectory(TEMP_DIR);
     $configurator->addConfig(__DIR__ . '/../config.neon');
     return $configurator->createContainer();
 }
コード例 #5
0
 /**
  * @return Nette\Configurator
  */
 protected function doCreateConfiguration()
 {
     $config = new Nette\Configurator();
     $config->addParameters(['rootDir' => $rootDir = dirname(dirname(dirname(dirname(__DIR__)))), 'appDir' => $rootDir . '/app', 'wwwDir' => $rootDir . '/www']);
     // shared compiled container for faster tests
     $config->setTempDirectory(dirname(TEMP_DIR));
     return $config;
 }
コード例 #6
0
 /**
  * Create new DI container.
  */
 protected function createContainer()
 {
     // Create bootstrap configurator
     $config = new Configurator();
     $config->setTempDirectory(sys_get_temp_dir());
     $config->addConfig(__DIR__ . '/../Helpers/config.neon');
     // Create DI container
     return $config->createContainer();
 }
コード例 #7
0
 /**
  * @return Configurator
  */
 protected function createConfigurator()
 {
     // /vendor/meridius/tester-extras/src/Meridius/TesterExtras/
     $rootDir = __DIR__ . '/../../../../../..';
     $config = new Configurator();
     $config->addParameters(['rootDir' => $rootDir, 'appDir' => $rootDir . '/app', 'wwwDir' => $rootDir . '/www']);
     // shared compiled container for faster tests
     $config->setTempDirectory(dirname(TEMP_DIR));
     return $config;
 }
コード例 #8
0
 /**
  * @return Container
  */
 public function createContainer()
 {
     $config = new Configurator();
     $config->setTempDirectory($this->temporaryDirectory);
     $config->addParameters($this->parameters);
     foreach ($this->configurationFiles as $file => $section) {
         $config->addConfig($file, $section);
     }
     return $config->createContainer();
 }
コード例 #9
0
 /**
  * @param bool $debugMode
  * @return Nette\DI\Container
  */
 protected function createContainer($debugMode)
 {
     $config = new Nette\Configurator();
     $config->setTempDirectory(TEMP_DIR);
     $config->setDebugMode($debugMode);
     Debugger::$productionMode = !$debugMode;
     QueryPanelExtension::register($config);
     $config->addConfig(__DIR__ . '/config.neon');
     return $config->createContainer();
 }
コード例 #10
0
ファイル: BaseExtension.php プロジェクト: foowie/cron
 /**
  * @return \SystemContainer|\Nette\DI\Container
  */
 protected function createContainer()
 {
     $config = new Configurator();
     $config->setTempDirectory(TEMP_DIR);
     $cronExtension = $this->extension;
     $config->onCompile[] = function ($config, Compiler $compiler) use($cronExtension) {
         $compiler->addExtension('cron', $cronExtension);
     };
     $config->addConfig(__DIR__ . '/config.neon');
     return $config->createContainer();
 }
コード例 #11
0
 /**
  * @return Configurator
  */
 protected function createConfigurator()
 {
     $this->defineConstants();
     $configurator = new Configurator();
     $configurator->setDebugMode($this->debugger);
     $configurator->enableDebugger(LOG_DIR);
     Debugger::$strictMode = FALSE;
     $configurator->setTempDirectory(TEMP_DIR);
     $configurator->createRobotLoader()->addDirectory(APP_DIR)->register();
     return $configurator;
 }
コード例 #12
0
 protected function createContainer()
 {
     $configurator = new Nette\Configurator();
     $configurator->setTempDirectory(dirname(TEMP_DIR));
     // shared container for performance purposes
     $configurator->setDebugMode(FALSE);
     $configurator->addParameters(['appDir' => __DIR__ . '/../../app']);
     $configurator->addConfig(__DIR__ . '/../../app/config/config.neon');
     $configurator->addConfig(__DIR__ . '/../../app/config/' . getenv('DB') . '.neon');
     $configurator->addConfig(__DIR__ . '/../config/tests.neon');
     return $configurator->createContainer();
 }
コード例 #13
0
ファイル: _ContainerTestCase.php プロジェクト: mike227/n-tidy
 /**
  * @param $configFile
  * @return Nette\DI\Container
  */
 public static function createContainer($configFile = NULL)
 {
     $configurator = new Nette\Configurator();
     $configurator->setTempDirectory(TEMP_DIR);
     $configurator->addParameters(array('fixturesDir' => FIXTURES_DIR, 'tempDir' => TEMP_DIR, 'wwwDir' => TEMP_DIR));
     if ($configFile !== NULL) {
         $configurator->addConfig($configFile);
     }
     $extension = new Extension();
     $extension->register($configurator, 'tidy');
     $container = $configurator->createContainer();
     return $container;
 }
コード例 #14
0
ファイル: ORMTestCase.php プロジェクト: librette/doctrine
 /**
  * @return Kdyby\Doctrine\EntityManager
  */
 protected function createMemoryManager()
 {
     $rootDir = __DIR__ . '/../../';
     $config = new Nette\Configurator();
     $container = $config->setTempDirectory(TEMP_DIR)->addConfig(__DIR__ . '/../nette-reset.neon')->addConfig(__DIR__ . '/config/memory.neon')->addParameters(array('appDir' => $rootDir, 'wwwDir' => $rootDir))->createContainer();
     /** @var Nette\DI\Container $container */
     $em = $container->getByType('Kdyby\\Doctrine\\EntityManager');
     /** @var Kdyby\Doctrine\EntityManager $em */
     $schemaTool = new SchemaTool($em);
     $schemaTool->createSchema($em->getMetadataFactory()->getAllMetadata());
     $this->serviceLocator = $container;
     return $em;
 }
コード例 #15
0
 /**
  * @param string|null $customConfig
  * @return \Nette\DI\Container
  */
 protected function createContainer($customConfig = null)
 {
     if (!$this->context) {
         $config = new Configurator();
         $config->setTempDirectory(TEMP_DIR);
         $config->addParameters(['appDir' => __DIR__ . '/app']);
         $config->addConfig(__DIR__ . '/app/config/config.neon');
         if ($customConfig) {
             $config->addConfig(FileMock::create($customConfig, 'neon'));
         }
         $this->context = $config->createContainer();
     }
     return $this->context;
 }
コード例 #16
0
 /**
  * @param $configFile
  * @return Nette\DI\Container
  */
 public static function createContainer($configFile = NULL)
 {
     $configurator = new Nette\Configurator();
     $configurator->setTempDirectory(TEMP_DIR);
     $configurator->addParameters(array('fixturesDir' => FIXTURES_DIR, 'tempDir' => TEMP_DIR, 'wwwDir' => TEMP_DIR));
     if ($configFile !== NULL) {
         $configurator->addConfig($configFile);
     }
     $extension = new Extension();
     $extension->register($configurator, 'assetic');
     $container = $configurator->createContainer();
     /** @var Nette\Http\IRequest $httpRequest */
     $httpRequest = $container->getByType('Nette\\Http\\IRequest');
     $httpRequest->getUrl()->setHost('localhost');
     // with empty host not work properly
     echo "tempDir: " . TEMP_DIR . PHP_EOL;
     return $container;
 }
コード例 #17
0
 /**
  * @param $configFile
  * @return Nette\DI\Container
  */
 public static function createContainer($configFile = NULL)
 {
     $configurator = new Nette\Configurator();
     $configurator->setTempDirectory(TEMP_DIR);
     $configurator->addParameters(array('fixturesDir' => FIXTURES_DIR, 'tempDir' => TEMP_DIR, 'appDir' => __DIR__ . '/../../app', 'wwwDir' => WWW_DIR, 'vendorDir' => __DIR__ . '/../../vendor'));
     $configurator->addConfig(__DIR__ . '/../../app/config/_config.neon');
     $configurator->addConfig(__DIR__ . '/../../app/config/_dev.neon');
     $configurator->addConfig(__DIR__ . '/../config.tests.neon');
     if ($configFile !== NULL) {
         $configurator->addConfig($configFile);
     }
     $extension = new Extension();
     $extension->register($configurator, 'assetic');
     $container = $configurator->createContainer();
     /** @var Nette\Http\IRequest $httpRequest */
     $httpRequest = $container->getByType('Nette\\Http\\IRequest');
     $httpRequest->getUrl()->setHost('localhost');
     // with empty host not work properly
     return $container;
 }
コード例 #18
0
ファイル: _ContainerTestCase.php プロジェクト: mike227/n-ajax
 /**
  * @param null|string $configFile
  * @param bool $defaultConfig
  * @return Nette\DI\Container|\SystemContainer
  */
 public static function createContainer($configFile = NULL, $defaultConfig = TRUE)
 {
     // create temporary directory
     $tempDir = __DIR__ . '/../temp/' . (isset($_SERVER['argv']) ? md5(serialize($_SERVER['argv'])) : getmypid()) . Nette\Utils\Random::generate();
     Tester\Helpers::purge($tempDir);
     $configurator = new Nette\Configurator();
     $configurator->setTempDirectory($tempDir);
     $configurator->addParameters(array('container' => array('class' => 'SystemContainer_' . md5(time())), 'fixturesDir' => FIXTURES_DIR, 'tempDir' => $tempDir, 'wwwDir' => $tempDir));
     $configurator->addConfig(__DIR__ . '/../nette-reset.neon');
     if ($defaultConfig === TRUE) {
         $configurator->addConfig(__DIR__ . '/../config.neon');
     }
     if ($configFile !== NULL) {
         $configurator->addConfig($configFile);
     }
     $container = $configurator->createContainer();
     /** @var Nette\Http\IRequest $httpRequest */
     $httpRequest = $container->getByType('Nette\\Http\\IRequest');
     $httpRequest->getUrl()->setHost('localhost');
     // with empty host not work properly
     $ems = $container->findByType('Doctrine\\ORM\\EntityManager');
     if (count($ems) === 1) {
         /** @var EntityManager $em */
         $em = $container->getService($ems[0]);
         $schemaTool = new SchemaTool($em);
         $schemaTool->createSchema($em->getMetadataFactory()->getAllMetadata());
     }
     $dms = $container->findByType('Doctrine\\ODM\\MongoDB\\DocumentManager');
     if (count($dms) === 1) {
         /** @var DocumentManager $dm */
         $dm = $container->getService($dms[0]);
         $dm->getSchemaManager()->createDatabases();
         $dm->getSchemaManager()->createCollections();
     }
     return $container;
 }
コード例 #19
0
 /**
  * @param Configurator
  * @return void
  */
 protected function setupTemp(Configurator $configurator)
 {
     $configurator->setTempDirectory($this->options->getTempDirectory());
 }
コード例 #20
0
ファイル: AnalyseCommand.php プロジェクト: phpstan/phpstan
 protected function execute(InputInterface $input, OutputInterface $output) : int
 {
     $rootDir = realpath(__DIR__ . '/../..');
     $tmpDir = $rootDir . '/tmp';
     $confDir = $rootDir . '/conf';
     $configurator = new Configurator();
     $configurator->defaultExtensions = [];
     $configurator->setDebugMode(true);
     $configurator->setTempDirectory($tmpDir);
     $configurator->enableDebugger($tmpDir . '/log');
     $projectConfigFile = $input->getOption('configuration');
     $levelOption = $input->getOption(self::OPTION_LEVEL);
     if ($projectConfigFile === null && $levelOption === null) {
         $levelOption = self::DEFAULT_LEVEL;
     }
     $configFiles = [$confDir . '/config.neon'];
     if ($levelOption !== null) {
         $levelConfigFile = sprintf('%s/config.level%s.neon', $confDir, $levelOption);
         if (!is_file($levelConfigFile)) {
             $output->writeln(sprintf('Level config file %s was not found.', $levelConfigFile));
             return 1;
         }
         $configFiles[] = $levelConfigFile;
     }
     if ($projectConfigFile !== null) {
         $projectConfigRealFilePath = realpath($projectConfigFile);
         if (!is_file($projectConfigFile)) {
             $output->writeln(sprintf('Project config file at path %s does not exist.', $projectConfigRealFilePath !== false ? $projectConfigRealFilePath : $projectConfigFile));
             return 1;
         }
         $configFiles[] = $projectConfigRealFilePath;
     }
     foreach ($configFiles as $configFile) {
         $configurator->addConfig($configFile);
     }
     $configurator->addParameters(['rootDir' => $rootDir]);
     $container = $configurator->createContainer();
     if (!isset($container->parameters['customRulesetUsed'])) {
         $output->writeln('');
         $output->writeln('<comment>No rules detected</comment>');
         $output->writeln('');
         $output->writeln('You have the following choices:');
         $output->writeln('');
         $output->writeln('* while running the analyse option, use the <info>--level</info> option to adjust your rule level - the higher the stricter');
         $output->writeln('');
         $output->writeln(sprintf('* create your own <info>custom ruleset</info> by selecting which rules you want to check by copying the service definitions from the built-in config level files in <options=bold>%s</>.', realpath(__DIR__ . '/../../conf')));
         $output->writeln('  * in this case, don\'t forget to define parameter <options=bold>customRulesetUsed</> in your config file.');
         $output->writeln('');
         return 1;
     }
     Debugger::$browser = $container->parameters['debug_cli_browser'];
     foreach ($container->parameters['autoload_files'] as $autoloadFile) {
         require_once $autoloadFile;
     }
     if (count($container->parameters['autoload_directories']) > 0) {
         $robotLoader = new \Nette\Loaders\RobotLoader();
         $robotLoader->setCacheStorage(new \Nette\Caching\Storages\MemoryStorage());
         foreach ($container->parameters['autoload_directories'] as $directory) {
             $robotLoader->addDirectory($directory);
         }
         $robotLoader->register();
     }
     $application = $container->getByType(AnalyseApplication::class);
     return $application->analyse($input->getArgument('paths'), new ErrorsConsoleStyle($input, $output));
 }
コード例 #21
0
ファイル: AnalyseCommand.php プロジェクト: phpstan/phpstan
 protected function execute(InputInterface $input, OutputInterface $output) : int
 {
     $rootDir = realpath(__DIR__ . '/../..');
     $tmpDir = $rootDir . '/tmp';
     $confDir = $rootDir . '/conf';
     $configurator = new Configurator();
     $configurator->defaultExtensions = [];
     $configurator->setDebugMode(true);
     $configurator->setTempDirectory($tmpDir);
     $projectConfigFile = $input->getOption('configuration');
     $levelOption = $input->getOption(self::OPTION_LEVEL);
     $defaultLevelUsed = false;
     if ($projectConfigFile === null && $levelOption === null) {
         $levelOption = self::DEFAULT_LEVEL;
         $defaultLevelUsed = true;
     }
     $configFiles = [$confDir . '/config.neon'];
     if ($levelOption !== null) {
         $levelConfigFile = sprintf('%s/config.level%s.neon', $confDir, $levelOption);
         if (!is_file($levelConfigFile)) {
             $output->writeln(sprintf('Level config file %s was not found.', $levelConfigFile));
             return 1;
         }
         $configFiles[] = $levelConfigFile;
     }
     if ($projectConfigFile !== null) {
         $projectConfigRealFilePath = realpath($projectConfigFile);
         if (!is_file($projectConfigFile)) {
             $output->writeln(sprintf('Project config file at path %s does not exist.', $projectConfigRealFilePath !== false ? $projectConfigRealFilePath : $projectConfigFile));
             return 1;
         }
         $configFiles[] = $projectConfigRealFilePath;
     }
     foreach ($configFiles as $configFile) {
         $configurator->addConfig($configFile);
     }
     $configurator->addParameters(['rootDir' => $rootDir, 'tmpDir' => $tmpDir]);
     $container = $configurator->createContainer();
     $consoleStyle = new ErrorsConsoleStyle($input, $output);
     $memoryLimitFile = $container->parameters['memoryLimitFile'];
     if (file_exists($memoryLimitFile)) {
         $consoleStyle->note(sprintf("PHPStan crashed in the previous run probably because of excessive memory consumption.\nIt consumed around %s of memory.\n\nTo avoid this issue, increase the memory_limit directive in your php.ini file here:\n%s\n\nIf you can't or don't want to change the system-wide memory limit, run PHPStan like this:\n%s", file_get_contents($memoryLimitFile), php_ini_loaded_file(), sprintf('php -d memory_limit=XX %s', implode(' ', $_SERVER['argv']))));
         unlink($memoryLimitFile);
     }
     if (PHP_VERSION_ID >= 70100 && !property_exists(Catch_::class, 'types')) {
         $consoleStyle->note('You\'re running PHP >= 7.1, but you still have PHP-Parser version 2.x. This will lead to parse errors in case you use PHP 7.1 syntax like nullable parameters, iterable and void typehints, union exception types, or class constant visibility. Update to PHP-Parser 3.x to dismiss this message.');
     }
     $this->setUpSignalHandler($consoleStyle, $memoryLimitFile);
     if (!isset($container->parameters['customRulesetUsed'])) {
         $output->writeln('');
         $output->writeln('<comment>No rules detected</comment>');
         $output->writeln('');
         $output->writeln('You have the following choices:');
         $output->writeln('');
         $output->writeln('* while running the analyse option, use the <info>--level</info> option to adjust your rule level - the higher the stricter');
         $output->writeln('');
         $output->writeln(sprintf('* create your own <info>custom ruleset</info> by selecting which rules you want to check by copying the service definitions from the built-in config level files in <options=bold>%s</>.', realpath(__DIR__ . '/../../conf')));
         $output->writeln('  * in this case, don\'t forget to define parameter <options=bold>customRulesetUsed</> in your config file.');
         $output->writeln('');
         return $this->handleReturn(1, $memoryLimitFile);
     } elseif ($container->parameters['customRulesetUsed']) {
         $defaultLevelUsed = false;
     }
     foreach ($container->parameters['autoload_files'] as $autoloadFile) {
         require_once $autoloadFile;
     }
     if (count($container->parameters['autoload_directories']) > 0) {
         $robotLoader = new \Nette\Loaders\RobotLoader();
         $robotLoader->setCacheStorage(new \Nette\Caching\Storages\MemoryStorage());
         foreach ($container->parameters['autoload_directories'] as $directory) {
             $robotLoader->addDirectory($directory);
         }
         $robotLoader->register();
     }
     $application = $container->getByType(AnalyseApplication::class);
     return $this->handleReturn($application->analyse($input->getArgument('paths'), $consoleStyle, $defaultLevelUsed), $memoryLimitFile);
 }
コード例 #22
0
 protected static function createConfigurator()
 {
     $configurator = new Configurator();
     foreach ($configurator->defaultExtensions as $name => $class) {
         // remove extensions from not installed packages
         if (is_array($class)) {
             $class = $class[0];
         }
         if (!class_exists($class)) {
             unset($configurator->defaultExtensions[$name]);
         }
     }
     $configurator->setTempDirectory(static::$tempDir);
     return $configurator;
 }
コード例 #23
0
ファイル: DatabaseTestCase.php プロジェクト: drahak/oauth2
 public function __construct()
 {
     $configurator = new Configurator();
     $this->container = $configurator->setTempDirectory(TEMP_DIR)->addConfig(__DIR__ . '/config.neon')->createContainer();
 }
コード例 #24
0
ファイル: Bootstrapper.php プロジェクト: instante/bootstrap
 /** @return Configurator */
 private function prepareConfigurator()
 {
     $configurator = new Configurator();
     $configurator->addParameters(['appDir' => $this->paths['app'], 'paths' => $this->paths]);
     // Enable Nette Debugger for error visualisation & logging
     $configurator->setDebugMode($this->debugMode);
     if (class_exists(Debugger::class)) {
         $configurator->enableDebugger($this->paths['log']);
     }
     // Specify folder for cache
     $configurator->setTempDirectory($this->paths['temp']);
     return $configurator;
 }
コード例 #25
0
<?php

namespace NetteAddons;

use Nette\Configurator;
// Load Nette Framework or autoloader generated by Composer
require __DIR__ . '/../vendor/autoload.php';
$configurator = new Configurator();
// Enable Nette Debugger for error visualisation & logging
//$configurator->setDebugMode(TRUE);
$configurator->enableDebugger(__DIR__ . '/../log');
// Specify folder for cache
$configurator->setTempDirectory(__DIR__ . '/../temp');
// Enable RobotLoader - this will load all classes automatically
$configurator->createRobotLoader()->addDirectory(__DIR__)->register();
// Create Dependency Injection container from config.neon file
$configurator->addConfig(__DIR__ . '/config/config.neon');
$configurator->addConfig(__DIR__ . '/config/config.local.neon');
$container = $configurator->createContainer();
return $container;
コード例 #26
0
 protected function createConfigurator()
 {
     $configurator = new Configurator();
     // Fix incorrectly initialized appDir
     $configurator->addParameters(['appDir' => $this->appDir]);
     // Add root dir
     $configurator->addParameters(['rootDir' => $this->rootDir]);
     // Add temp dir
     $configurator->addParameters(['tempDir' => $this->tempDir]);
     $configurator->setTempDirectory($this->tempDir);
     if ($this->debug && $this->isDebugger()) {
         $configurator->setDebugMode($this->debuggers);
     } else {
         $configurator->setDebugMode(FALSE);
     }
     if ($this->enableLog) {
         $configurator->enableDebugger($this->tempDir . '/log', $this->debugEmails);
     }
     // Load app
     $loader = $configurator->createRobotLoader()->addDirectory($this->appDir);
     // Load additional paths specified in index.php
     foreach ($this->loaderPaths as $path) {
         $loader->addDirectory($path);
     }
     $loader->register();
     return $configurator;
 }
コード例 #27
0
ファイル: bootstrap.php プロジェクト: MartinStepar/skeleton
<?php

/**
 * init test dependent on nette container
 */
use Nette\Configurator;
require_once __DIR__ . '/../unit/bootstrap.php';
$rootDir = __DIR__ . '/../../';
$configDir = $rootDir . 'app/config';
$paths = ['root' => $rootDir, 'log' => $rootDir . '/log'];
$configurator = new Configurator();
$configurator->addParameters(['appDir' => __DIR__ . '/../../app']);
$configurator->setTempDirectory(TEMP_DIR);
$configurator->addConfig("{$configDir}/default.neon");
if (file_exists("{$configDir}/local.neon")) {
    $configurator->addConfig("{$configDir}/local.neon", $configurator::NONE);
}
$configurator->addConfig(['doctrine' => ['dbname' => '%database.dbname_test%']]);
$configurator->addParameters(['paths' => $paths]);
return $configurator->createContainer();