The PHP local is also initialized if it is used.
Call this at the very start of your script and always before getOptions() and initialize().
public startup ( ) |
/** * Constructor * * Additional valid settings for $settings : * - injected-settings : INI settings override * * @param array $settings Settings to pass to eZScript constructor. * @param \eZ\Publish\Core\MVC\Symfony\SiteAccess $siteAccess * @param \Symfony\Component\DependencyInjection\ContainerInterface $container */ public function __construct(array $settings = array(), SiteAccess $siteAccess = null, ContainerInterface $container = null) { $this->container = $container; if (isset($settings['injected-settings'])) { $injectedSettings = array(); foreach ($settings['injected-settings'] as $keySetting => $injectedSetting) { list($file, $section, $setting) = explode('/', $keySetting); $injectedSettings[$file][$section][$setting] = $injectedSetting; } // Those settings override anything else in local .ini files and their overrides eZINI::injectSettings($injectedSettings); unset($settings['injected-settings']); } if (isset($settings['injected-merge-settings'])) { $injectedSettings = array(); foreach ($settings['injected-merge-settings'] as $keySetting => $injectedSetting) { list($file, $section, $setting) = explode('/', $keySetting); $injectedSettings[$file][$section][$setting] = $injectedSetting; } // Those settings override anything else in local .ini files and their overrides eZINI::injectMergeSettings($injectedSettings); unset($settings['injected-merge-settings']); } if (isset($settings['session'])) { $this->sessionSettings = $settings['session']; } $this->script = eZScript::instance($settings); $this->script->startup(); if (isset($siteAccess)) { $this->script->setUseSiteAccess($siteAccess->name); } }
public function __construct($theClass = '', $name = '') { parent::__construct($theClass, $name); if (!self::$script instanceof eZScript) { self::$script = eZScript::instance(array('description' => "eZ Publish Test Runner\n\nsets up an eZ Publish testing environment\n", 'use-session' => false, 'use-modules' => true, 'use-extensions' => true)); // Override INI override folder from settings/override to // tests/settings to not read local override settings $ini = eZINI::instance(); $ini->setOverrideDirs(array(array('tests/settings', true)), 'override'); $ini->loadCache(); // Be sure to have clean content language data eZContentLanguage::expireCache(); self::$script->startup(); self::$script->initialize(); // Avoids Fatal error: eZ Publish did not finish its request if die() is used. eZExecution::setCleanExit(); } }