protected function setUp() { $this->_shell = new \Magento\Framework\Shell(new \Magento\Framework\Shell\CommandRenderer()); $basePath = Files::init()->getPathToSource(); $basePath = str_replace('\\', '/', $basePath); $this->_tmpDir = realpath(__DIR__) . '/tmp'; $this->_generationDir = $this->_tmpDir . '/generation'; if (!file_exists($this->_generationDir)) { mkdir($this->_generationDir, 0770, true); } $this->_compilationDir = $this->_tmpDir . '/di'; if (!file_exists($this->_compilationDir)) { mkdir($this->_compilationDir, 0770, true); } $this->_command = 'php ' . $basePath . '/bin/magento setup:di:compile-multi-tenant --generation=%s --di=%s'; $booleanUtils = new \Magento\Framework\Stdlib\BooleanUtils(); $constInterpreter = new \Magento\Framework\Data\Argument\Interpreter\Constant(); $argumentInterpreter = new \Magento\Framework\Data\Argument\Interpreter\Composite(['boolean' => new \Magento\Framework\Data\Argument\Interpreter\Boolean($booleanUtils), 'string' => new \Magento\Framework\Data\Argument\Interpreter\StringUtils($booleanUtils), 'number' => new \Magento\Framework\Data\Argument\Interpreter\Number(), 'null' => new \Magento\Framework\Data\Argument\Interpreter\NullType(), 'object' => new \Magento\Framework\Data\Argument\Interpreter\DataObject($booleanUtils), 'const' => $constInterpreter, 'init_parameter' => new \Magento\Framework\App\Arguments\ArgumentInterpreter($constInterpreter)], \Magento\Framework\ObjectManager\Config\Reader\Dom::TYPE_ATTRIBUTE); // Add interpreters that reference the composite $argumentInterpreter->addInterpreter('array', new \Magento\Framework\Data\Argument\Interpreter\ArrayType($argumentInterpreter)); $this->_mapper = new \Magento\Framework\ObjectManager\Config\Mapper\Dom($argumentInterpreter, $booleanUtils, new \Magento\Framework\ObjectManager\Config\Mapper\ArgumentParser()); $this->_validator = new \Magento\Framework\Code\Validator(); $this->_validator->add(new \Magento\Framework\Code\Validator\ConstructorIntegrity()); $this->_validator->add(new \Magento\Framework\Code\Validator\ContextAggregation()); $this->_validator->add(new \Magento\Framework\Code\Validator\TypeDuplication()); $this->_validator->add(new \Magento\Framework\Code\Validator\ArgumentSequence()); $this->_validator->add(new \Magento\Framework\Code\Validator\ConstructorArgumentTypes()); $this->pluginValidator = new \Magento\Framework\Interception\Code\InterfaceValidator(); }
/** * Return newly created instance on an argument interpreter, suitable for processing DI arguments * * @return \Magento\Framework\Data\Argument\InterpreterInterface */ protected function createArgumentInterpreter() { $booleanUtils = new \Magento\Framework\Stdlib\BooleanUtils(); $constInterpreter = new \Magento\Framework\Data\Argument\Interpreter\Constant(); $result = new \Magento\Framework\Data\Argument\Interpreter\Composite(['boolean' => new \Magento\Framework\Data\Argument\Interpreter\Boolean($booleanUtils), 'string' => new \Magento\Framework\Data\Argument\Interpreter\String($booleanUtils), 'number' => new \Magento\Framework\Data\Argument\Interpreter\Number(), 'null' => new \Magento\Framework\Data\Argument\Interpreter\NullType(), 'object' => new \Magento\Framework\Data\Argument\Interpreter\Object($booleanUtils), 'const' => $constInterpreter, 'init_parameter' => new \Magento\Framework\App\Arguments\ArgumentInterpreter($constInterpreter)], \Magento\Framework\ObjectManager\Config\Reader\Dom::TYPE_ATTRIBUTE); // Add interpreters that reference the composite $result->addInterpreter('array', new \Magento\Framework\Data\Argument\Interpreter\ArrayType($result)); return $result; }
protected function setUp() { $this->_shell = new \Magento\Framework\Shell(new \Magento\Framework\Shell\CommandRenderer()); $basePath = \Magento\TestFramework\Utility\Files::init()->getPathToSource(); $basePath = str_replace('\\', '/', $basePath); $this->_tmpDir = realpath(__DIR__) . '/tmp'; $this->_generationDir = $this->_tmpDir . '/generation'; $this->_compilationDir = $this->_tmpDir . '/di'; (new \Magento\Framework\Autoload\IncludePath())->addIncludePath(array($basePath . '/app/code', $basePath . '/lib/internal', $this->_generationDir)); $this->_command = 'php ' . $basePath . '/dev/tools/Magento/Tools/Di/compiler.php --generation=%s --di=%s'; $booleanUtils = new \Magento\Framework\Stdlib\BooleanUtils(); $constInterpreter = new \Magento\Framework\Data\Argument\Interpreter\Constant(); $argumentInterpreter = new \Magento\Framework\Data\Argument\Interpreter\Composite(['boolean' => new \Magento\Framework\Data\Argument\Interpreter\Boolean($booleanUtils), 'string' => new \Magento\Framework\Data\Argument\Interpreter\String($booleanUtils), 'number' => new \Magento\Framework\Data\Argument\Interpreter\Number(), 'null' => new \Magento\Framework\Data\Argument\Interpreter\NullType(), 'object' => new \Magento\Framework\Data\Argument\Interpreter\Object($booleanUtils), 'const' => $constInterpreter, 'init_parameter' => new \Magento\Framework\App\Arguments\ArgumentInterpreter($constInterpreter)], \Magento\Framework\ObjectManager\Config\Reader\Dom::TYPE_ATTRIBUTE); // Add interpreters that reference the composite $argumentInterpreter->addInterpreter('array', new \Magento\Framework\Data\Argument\Interpreter\ArrayType($argumentInterpreter)); $this->_mapper = new \Magento\Framework\ObjectManager\Config\Mapper\Dom($argumentInterpreter, $booleanUtils, new \Magento\Framework\ObjectManager\Config\Mapper\ArgumentParser()); $this->_validator = new \Magento\Framework\Code\Validator(); $this->_validator->add(new \Magento\Framework\Code\Validator\ConstructorIntegrity()); $this->_validator->add(new \Magento\Framework\Code\Validator\ContextAggregation()); $this->_validator->add(new \Magento\Framework\Code\Validator\TypeDuplication()); $this->_validator->add(new \Magento\Framework\Code\Validator\ArgumentSequence()); $this->pluginValidator = new \Magento\Framework\Interception\Code\InterfaceValidator(); }
protected function setUp() { $this->_shell = new \Magento\Framework\Shell(new \Magento\Framework\Shell\CommandRenderer()); $basePath = BP; $basePath = str_replace('\\', '/', $basePath); $directoryList = new DirectoryList($basePath); $this->_generationDir = $directoryList->getPath(DirectoryList::GENERATION); $this->_compilationDir = $directoryList->getPath(DirectoryList::DI); $this->_command = 'php ' . $basePath . '/bin/magento setup:di:compile'; $booleanUtils = new \Magento\Framework\Stdlib\BooleanUtils(); $constInterpreter = new \Magento\Framework\Data\Argument\Interpreter\Constant(); $argumentInterpreter = new \Magento\Framework\Data\Argument\Interpreter\Composite(['boolean' => new \Magento\Framework\Data\Argument\Interpreter\Boolean($booleanUtils), 'string' => new \Magento\Framework\Data\Argument\Interpreter\StringUtils($booleanUtils), 'number' => new \Magento\Framework\Data\Argument\Interpreter\Number(), 'null' => new \Magento\Framework\Data\Argument\Interpreter\NullType(), 'object' => new \Magento\Framework\Data\Argument\Interpreter\DataObject($booleanUtils), 'const' => $constInterpreter, 'init_parameter' => new \Magento\Framework\App\Arguments\ArgumentInterpreter($constInterpreter)], \Magento\Framework\ObjectManager\Config\Reader\Dom::TYPE_ATTRIBUTE); // Add interpreters that reference the composite $argumentInterpreter->addInterpreter('array', new \Magento\Framework\Data\Argument\Interpreter\ArrayType($argumentInterpreter)); $this->_mapper = new \Magento\Framework\ObjectManager\Config\Mapper\Dom($argumentInterpreter, $booleanUtils, new \Magento\Framework\ObjectManager\Config\Mapper\ArgumentParser()); $this->_validator = new \Magento\Framework\Code\Validator(); $this->_validator->add(new \Magento\Framework\Code\Validator\ConstructorIntegrity()); $this->_validator->add(new \Magento\Framework\Code\Validator\ContextAggregation()); $this->_validator->add(new \Magento\Framework\Code\Validator\TypeDuplication()); $this->_validator->add(new \Magento\Framework\Code\Validator\ArgumentSequence()); $this->_validator->add(new \Magento\Framework\Code\Validator\ConstructorArgumentTypes()); $this->pluginValidator = new \Magento\Framework\Interception\Code\InterfaceValidator(); }