/** * Grab a persistent instance of the xPDO class to share connection data * across multiple tests and test suites. * * @param array $options An array of configuration parameters. * @return xPDO An xPDO object instance. */ public static function _getConnection($options = array()) { if (is_object(MODxTestHarness::$modx)) { return MODxTestHarness::$modx; } /* include config.core.php */ $properties = array(); require_once strtr(realpath(dirname(dirname(dirname(__FILE__)))) . '/config.core.php', '\\', '/'); require_once MODX_CORE_PATH . 'config/' . MODX_CONFIG_KEY . '.inc.php'; require_once MODX_CORE_PATH . 'model/modx/modx.class.php'; include_once strtr(realpath(dirname(__FILE__)) . '/properties.inc.php', '\\', '/'); $modx = new modX(null, $properties); $ctx = !empty($options['ctx']) ? $options['ctx'] : 'web'; $modx->initialize($ctx); $debug = !empty($options['debug']); $modx->setDebug($debug); $modx->user = $modx->newObject('modUser'); $modx->user->set('id', $modx->getOption('modx.test.user.id', 1)); $modx->user->set('username', $modx->getOption('modx.test.user.username', 'test')); MODxTestHarness::$modx = $modx; return $modx; }
/** * Grab a persistent instance of the xPDO class to share connection data * across multiple tests and test suites. * * @param array $options An array of configuration parameters. * @return xPDO An xPDO object instance. */ public static function _getConnection($options = array()) { $modx = MODxTestHarness::$modx; if (is_object($modx)) { if (!$modx->request) { $modx->getRequest(); } if (!$modx->error) { $modx->request->loadErrorHandler(); } $modx->error->reset(); MODxTestHarness::$modx = $modx; return MODxTestHarness::$modx; } /* include config.core.php */ $properties = array(); require_once strtr(realpath(dirname(dirname(dirname(__FILE__)))) . '/config.core.php','\\','/'); require_once MODX_CORE_PATH.'config/'.MODX_CONFIG_KEY.'.inc.php'; require_once MODX_CORE_PATH.'model/modx/modx.class.php'; include_once strtr(realpath(dirname(__FILE__)) . '/properties.inc.php','\\','/'); if (!defined('MODX_REQP')) { define('MODX_REQP',false); } $modx = new modX(null,$properties); $ctx = !empty($options['ctx']) ? $options['ctx'] : 'web'; $modx->initialize($ctx); $debug = !empty($options['debug']); $modx->setDebug($debug); if (!empty($properties['logTarget'])) $modx->setLogTarget($properties['logTarget']); if (!empty($properties['logLevel'])) $modx->setLogLevel($properties['logLevel']); $modx->user = $modx->newObject('modUser'); $modx->user->set('id',$modx->getOption('modx.test.user.id',null,1)); $modx->user->set('username',$modx->getOption('modx.test.user.username',null,'test')); $modx->getRequest(); $modx->getParser(); $modx->request->loadErrorHandler(); MODxTestHarness::$modx = $modx; return $modx; }