mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 12:05:37 +00:00
Merge remote-tracking branch 'cow/pulls/3.3/check-isset-config' into 3.3
This commit is contained in:
commit
e7c6509196
@ -881,6 +881,7 @@ class Config_ForClass {
|
||||
|
||||
/**
|
||||
* @param string $name
|
||||
* @return mixed
|
||||
*/
|
||||
public function __get($name) {
|
||||
return Config::inst()->get($this->class, $name);
|
||||
@ -894,6 +895,16 @@ class Config_ForClass {
|
||||
return Config::inst()->update($this->class, $name, $val);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $name
|
||||
* @return bool
|
||||
*/
|
||||
public function __isset($name)
|
||||
{
|
||||
$val = $this->__get($name);
|
||||
return isset($val);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $name
|
||||
* @param int $sourceOptions
|
||||
|
@ -82,15 +82,15 @@ class ConfigTest_TestNest extends Object implements TestOnly {
|
||||
}
|
||||
|
||||
class ConfigTest extends SapphireTest {
|
||||
|
||||
|
||||
protected $depSettings = null;
|
||||
|
||||
|
||||
public function setUp() {
|
||||
parent::setUp();
|
||||
$this->depSettings = Deprecation::dump_settings();
|
||||
Deprecation::set_enabled(false);
|
||||
}
|
||||
|
||||
|
||||
public function tearDown() {
|
||||
Deprecation::restore_settings($this->depSettings);
|
||||
parent::tearDown();
|
||||
@ -262,6 +262,19 @@ class ConfigTest extends SapphireTest {
|
||||
$this->assertEquals(Object::static_lookup('ConfigTest_DefinesFooDoesntExtendObject', 'bar'), null);
|
||||
}
|
||||
|
||||
public function testForClass() {
|
||||
$config = ConfigTest_DefinesFoo::config();
|
||||
// Set values
|
||||
$this->assertTrue(isset($config->foo));
|
||||
$this->assertFalse(empty($config->foo));
|
||||
$this->assertEquals(1, $config->foo);
|
||||
|
||||
// Unset values
|
||||
$this->assertFalse(isset($config->bar));
|
||||
$this->assertTrue(empty($config->bar));
|
||||
$this->assertNull($config->bar);
|
||||
}
|
||||
|
||||
public function testFragmentOrder() {
|
||||
$this->markTestIncomplete();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user