Commit 39295795b3bd02a545ddab6cb8c6e6f73e391535

Authored by Neil Blakey-Milner
1 parent c1030e88

Add testing support - if the kt_test global variable is set, set up the

testing environment.


git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@5390 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing 1 changed file with 31 additions and 6 deletions
config/dmsDefaults.php
@@ -154,13 +154,15 @@ class KTInit { @@ -154,13 +154,15 @@ class KTInit {
154 // KTEntity is the database-backed base class 154 // KTEntity is the database-backed base class
155 require_once(KT_LIB_DIR . '/ktentity.inc'); 155 require_once(KT_LIB_DIR . '/ktentity.inc');
156 156
  157 + $oKTConfig =& KTConfig::getSingleton();
  158 +
157 $dsn = array( 159 $dsn = array(
158 - 'phptype' => $default->dbType,  
159 - 'username' => $default->dbUser,  
160 - 'password' => $default->dbPass,  
161 - 'hostspec' => $default->dbHost,  
162 - 'database' => $default->dbName,  
163 - 'port' => $default->dbPort, 160 + 'phptype' => $oKTConfig->get('db/dbType'),
  161 + 'username' => $oKTConfig->get('db/dbUser'),
  162 + 'password' => $oKTConfig->get('db/dbPass'),
  163 + 'hostspec' => $oKTConfig->get('db/dbHost'),
  164 + 'database' => $oKTConfig->get('db/dbName'),
  165 + 'port' => $oKTConfig->get('db/dbPort'),
164 ); 166 );
165 167
166 $options = array( 168 $options = array(
@@ -457,6 +459,24 @@ class KTInit { @@ -457,6 +459,24 @@ class KTInit {
457 } 459 }
458 } 460 }
459 // }}} 461 // }}}
  462 +
  463 + // {{{ initTesting
  464 + function initTesting() {
  465 + $oKTConfig =& KTConfig::getSingleton();
  466 + $sConfigFile = trim(@file_get_contents(KT_DIR . "/config/test-config-path"));
  467 + if (empty($sConfigFile)) {
  468 + $sConfigFile = 'config/test.ini';
  469 + }
  470 + if (!KTUtil::isAbsolutePath($sConfigFile)) {
  471 + $sConfigFile = sprintf("%s/%s", KT_DIR, $sConfigFile);
  472 + }
  473 + if (!file_exists($sConfigFile)) {
  474 + $this->handleInitError(PEAR::raiseError('Test infrastructure not configured'));
  475 + exit(0);
  476 + }
  477 + $oKTConfig->loadFile($sConfigFile);
  478 + }
  479 + // }}}
460 } 480 }
461 // }}} 481 // }}}
462 482
@@ -464,6 +484,7 @@ $KTInit = new KTInit(); @@ -464,6 +484,7 @@ $KTInit = new KTInit();
464 484
465 $KTInit->prependPath(KT_DIR . '/thirdparty/pear'); 485 $KTInit->prependPath(KT_DIR . '/thirdparty/pear');
466 $KTInit->prependPath(KT_DIR . '/thirdparty/Smarty'); 486 $KTInit->prependPath(KT_DIR . '/thirdparty/Smarty');
  487 +$KTInit->prependPath(KT_DIR . '/thirdparty/simpletest');
467 require_once('PEAR.php'); 488 require_once('PEAR.php');
468 489
469 // Give everyone access to legacy PHP functions 490 // Give everyone access to legacy PHP functions
@@ -480,6 +501,10 @@ $KTInit->initConfig(); @@ -480,6 +501,10 @@ $KTInit->initConfig();
480 501
481 $KTInit->setupI18n(); 502 $KTInit->setupI18n();
482 503
  504 +if ($GLOBALS['kt_test']) {
  505 + $KTInit->initTesting();
  506 +}
  507 +
483 $oKTConfig =& KTConfig::getSingleton(); 508 $oKTConfig =& KTConfig::getSingleton();
484 $KTInit->setupServerVariables(); 509 $KTInit->setupServerVariables();
485 510