Merge pull request #6820 from owncloud/phpunit-test-config
Load a separate config (if present) when running unit tests
This commit is contained in:
commit
0f794b6889
14
lib/base.php
14
lib/base.php
|
@ -57,6 +57,9 @@ class OC {
|
||||||
* web path in 'url'
|
* web path in 'url'
|
||||||
*/
|
*/
|
||||||
public static $APPSROOTS = array();
|
public static $APPSROOTS = array();
|
||||||
|
|
||||||
|
public static $configDir;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* requested app
|
* requested app
|
||||||
*/
|
*/
|
||||||
|
@ -100,6 +103,13 @@ class OC {
|
||||||
get_include_path()
|
get_include_path()
|
||||||
);
|
);
|
||||||
|
|
||||||
|
if(defined('PHPUNIT_RUN') and PHPUNIT_RUN and is_dir(OC::$SERVERROOT . '/tests/config/')) {
|
||||||
|
self::$configDir = OC::$SERVERROOT . '/tests/config/';
|
||||||
|
} else {
|
||||||
|
self::$configDir = OC::$SERVERROOT . '/config/';
|
||||||
|
}
|
||||||
|
OC_Config::$object = new \OC\Config(self::$configDir);
|
||||||
|
|
||||||
OC::$SUBURI = str_replace("\\", "/", substr(realpath($_SERVER["SCRIPT_FILENAME"]), strlen(OC::$SERVERROOT)));
|
OC::$SUBURI = str_replace("\\", "/", substr(realpath($_SERVER["SCRIPT_FILENAME"]), strlen(OC::$SERVERROOT)));
|
||||||
$scriptName = OC_Request::scriptName();
|
$scriptName = OC_Request::scriptName();
|
||||||
if (substr($scriptName, -1) == '/') {
|
if (substr($scriptName, -1) == '/') {
|
||||||
|
@ -175,8 +185,8 @@ class OC {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function checkConfig() {
|
public static function checkConfig() {
|
||||||
if (file_exists(OC::$SERVERROOT . "/config/config.php")
|
if (file_exists(self::$configDir . "/config.php")
|
||||||
and !is_writable(OC::$SERVERROOT . "/config/config.php")
|
and !is_writable(self::$configDir . "/config.php")
|
||||||
) {
|
) {
|
||||||
$defaults = new OC_Defaults();
|
$defaults = new OC_Defaults();
|
||||||
if (self::$CLI) {
|
if (self::$CLI) {
|
||||||
|
|
|
@ -50,7 +50,7 @@ class Config {
|
||||||
protected $debugMode;
|
protected $debugMode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param $configDir path to the config dir, needs to end with '/'
|
* @param string $configDir path to the config dir, needs to end with '/'
|
||||||
*/
|
*/
|
||||||
public function __construct($configDir) {
|
public function __construct($configDir) {
|
||||||
$this->configDir = $configDir;
|
$this->configDir = $configDir;
|
||||||
|
|
|
@ -38,7 +38,6 @@
|
||||||
* This class is responsible for reading and writing config.php, the very basic
|
* This class is responsible for reading and writing config.php, the very basic
|
||||||
* configuration file of ownCloud.
|
* configuration file of ownCloud.
|
||||||
*/
|
*/
|
||||||
OC_Config::$object = new \OC\Config(OC::$SERVERROOT.'/config/');
|
|
||||||
class OC_Config {
|
class OC_Config {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -312,7 +312,7 @@ class OC_Util {
|
||||||
.'" target="_blank">giving the webserver write access to the root directory</a>.';
|
.'" target="_blank">giving the webserver write access to the root directory</a>.';
|
||||||
|
|
||||||
// Check if config folder is writable.
|
// Check if config folder is writable.
|
||||||
if(!is_writable(OC::$SERVERROOT."/config/") or !is_readable(OC::$SERVERROOT."/config/")) {
|
if(!is_writable(OC::$configDir) or !is_readable(OC::$configDir)) {
|
||||||
$errors[] = array(
|
$errors[] = array(
|
||||||
'error' => "Can't write into config directory",
|
'error' => "Can't write into config directory",
|
||||||
'hint' => 'This can usually be fixed by '
|
'hint' => 'This can usually be fixed by '
|
||||||
|
|
Loading…
Reference in New Issue