Inject Config into SystemConfig
This commit is contained in:
parent
82bf99c0cf
commit
0a09004d39
5 changed files with 32 additions and 15 deletions
|
@ -142,7 +142,7 @@ class OC {
|
|||
'SCRIPT_FILENAME' => $_SERVER['SCRIPT_FILENAME'],
|
||||
],
|
||||
];
|
||||
$fakeRequest = new \OC\AppFramework\Http\Request($params, null, new \OC\AllConfig(new \OC\SystemConfig()));
|
||||
$fakeRequest = new \OC\AppFramework\Http\Request($params, null, new \OC\AllConfig(new \OC\SystemConfig(self::$config)));
|
||||
$scriptName = $fakeRequest->getScriptName();
|
||||
if (substr($scriptName, -1) == '/') {
|
||||
$scriptName .= 'index.php';
|
||||
|
@ -522,7 +522,7 @@ class OC {
|
|||
}
|
||||
|
||||
// setup the basic server
|
||||
self::$server = new \OC\Server(\OC::$WEBROOT);
|
||||
self::$server = new \OC\Server(\OC::$WEBROOT, self::$config);
|
||||
\OC::$server->getEventLogger()->log('autoloader', 'Autoloader', $loaderStart, $loaderEnd);
|
||||
\OC::$server->getEventLogger()->start('boot', 'Initialize');
|
||||
|
||||
|
|
|
@ -84,8 +84,9 @@ class Server extends SimpleContainer implements IServerContainer {
|
|||
|
||||
/**
|
||||
* @param string $webRoot
|
||||
* @param \OC\Config $config
|
||||
*/
|
||||
public function __construct($webRoot) {
|
||||
public function __construct($webRoot, \OC\Config $config) {
|
||||
parent::__construct();
|
||||
$this->webRoot = $webRoot;
|
||||
|
||||
|
@ -238,8 +239,8 @@ class Server extends SimpleContainer implements IServerContainer {
|
|||
$c->getSystemConfig()
|
||||
);
|
||||
});
|
||||
$this->registerService('SystemConfig', function ($c) {
|
||||
return new \OC\SystemConfig();
|
||||
$this->registerService('SystemConfig', function ($c) use ($config) {
|
||||
return new \OC\SystemConfig($config);
|
||||
});
|
||||
$this->registerService('AppConfig', function ($c) {
|
||||
return new \OC\AppConfig(\OC_DB::getConnection());
|
||||
|
|
|
@ -44,12 +44,19 @@ class SystemConfig {
|
|||
'objectstore' => ['arguments' => ['password' => true]],
|
||||
];
|
||||
|
||||
/** @var Config */
|
||||
private $config;
|
||||
|
||||
public function __construct(Config $config) {
|
||||
$this->config = $config;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lists all available config keys
|
||||
* @return array an array of key names
|
||||
*/
|
||||
public function getKeys() {
|
||||
return \OC::$config->getKeys();
|
||||
return $this->config->getKeys();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -59,7 +66,7 @@ class SystemConfig {
|
|||
* @param mixed $value the value that should be stored
|
||||
*/
|
||||
public function setValue($key, $value) {
|
||||
\OC::$config->setValue($key, $value);
|
||||
$this->config->setValue($key, $value);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -69,7 +76,7 @@ class SystemConfig {
|
|||
* If value is null, the config key will be deleted
|
||||
*/
|
||||
public function setValues(array $configs) {
|
||||
\OC::$config->setValues($configs);
|
||||
$this->config->setValues($configs);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -80,7 +87,7 @@ class SystemConfig {
|
|||
* @return mixed the value or $default
|
||||
*/
|
||||
public function getValue($key, $default = '') {
|
||||
return \OC::$config->getValue($key, $default);
|
||||
return $this->config->getValue($key, $default);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -106,7 +113,7 @@ class SystemConfig {
|
|||
* @param string $key the key of the value, under which it was saved
|
||||
*/
|
||||
public function deleteValue($key) {
|
||||
\OC::$config->deleteKey($key);
|
||||
$this->config->deleteKey($key);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -28,7 +28,9 @@ class TestAllConfig extends \Test\TestCase {
|
|||
$connection = $this->connection;
|
||||
}
|
||||
if($systemConfig === null) {
|
||||
$systemConfig = $this->getMock('\OC\SystemConfig');
|
||||
$systemConfig = $this->getMockBuilder('\OC\SystemConfig')
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
}
|
||||
return new \OC\AllConfig($systemConfig, $connection);
|
||||
}
|
||||
|
@ -89,7 +91,9 @@ class TestAllConfig extends \Test\TestCase {
|
|||
|
||||
public function testSetUserValueWithPreCondition() {
|
||||
// mock the check for the database to run the correct SQL statements for each database type
|
||||
$systemConfig = $this->getMock('\OC\SystemConfig');
|
||||
$systemConfig = $this->getMockBuilder('\OC\SystemConfig')
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
$systemConfig->expects($this->once())
|
||||
->method('getValue')
|
||||
->with($this->equalTo('dbtype'),
|
||||
|
@ -133,7 +137,9 @@ class TestAllConfig extends \Test\TestCase {
|
|||
*/
|
||||
public function testSetUserValueWithPreConditionFailure() {
|
||||
// mock the check for the database to run the correct SQL statements for each database type
|
||||
$systemConfig = $this->getMock('\OC\SystemConfig');
|
||||
$systemConfig = $this->getMockBuilder('\OC\SystemConfig')
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
$systemConfig->expects($this->once())
|
||||
->method('getValue')
|
||||
->with($this->equalTo('dbtype'),
|
||||
|
@ -394,7 +400,9 @@ class TestAllConfig extends \Test\TestCase {
|
|||
|
||||
public function testGetUsersForUserValue() {
|
||||
// mock the check for the database to run the correct SQL statements for each database type
|
||||
$systemConfig = $this->getMock('\OC\SystemConfig');
|
||||
$systemConfig = $this->getMockBuilder('\OC\SystemConfig')
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
$systemConfig->expects($this->once())
|
||||
->method('getValue')
|
||||
->with($this->equalTo('dbtype'),
|
||||
|
|
|
@ -38,7 +38,8 @@ class Server extends \Test\TestCase {
|
|||
|
||||
public function setUp() {
|
||||
parent::setUp();
|
||||
$this->server = new \OC\Server('');
|
||||
$config = new \OC\Config(\OC::$configDir);
|
||||
$this->server = new \OC\Server('', $config);
|
||||
}
|
||||
|
||||
public function dataTestQuery() {
|
||||
|
|
Loading…
Reference in a new issue