[limb-svn] r6509 - in 3.x/trunk/limb/core: src tests/cases
svn at limb-project.com
svn at limb-project.com
Thu Nov 8 18:09:59 MSK 2007
Author: serega
Date: 2007-11-08 18:09:59 +0300 (Thu, 08 Nov 2007)
New Revision: 6509
URL: http://fisheye.limb-project.com/changelog/limb/?cs=6509
Modified:
3.x/trunk/limb/core/src/lmbSet.class.php
3.x/trunk/limb/core/tests/cases/lmbSetTest.class.php
Log:
-- a bit better version of lmbSet
Modified: 3.x/trunk/limb/core/src/lmbSet.class.php
===================================================================
--- 3.x/trunk/limb/core/src/lmbSet.class.php 2007-11-08 15:00:31 UTC (rev 6508)
+++ 3.x/trunk/limb/core/src/lmbSet.class.php 2007-11-08 15:09:59 UTC (rev 6509)
@@ -98,7 +98,7 @@
function has($name)
{
if(!$this->_isGuarded($name))
- return isset($this->$name);
+ return property_exists($this, $name);
}
function isEmpty()
Modified: 3.x/trunk/limb/core/tests/cases/lmbSetTest.class.php
===================================================================
--- 3.x/trunk/limb/core/tests/cases/lmbSetTest.class.php 2007-11-08 15:00:31 UTC (rev 6508)
+++ 3.x/trunk/limb/core/tests/cases/lmbSetTest.class.php 2007-11-08 15:09:59 UTC (rev 6509)
@@ -170,7 +170,25 @@
$this->assertTrue(isset($ds['foo']));
$this->assertFalse(isset($ds['bar']));
}
+
+ function testImplementsMagicGetSetUnsetMethods()
+ {
+ $ds = new lmbSet();
+ $ds->set('foo', 'Bar');
+ $this->assertEqual($ds->foo, 'Bar');
+
+ $ds->foo = 'Zoo';
+ $this->assertEqual($ds->foo, 'Zoo');
+
+ unset($ds->foo);
+ $this->assertFalse(property_exists($ds, 'foo'));
+
+ $ds->set('foo', 'Bar');
+ $this->assertTrue(isset($ds->foo));
+ $this->assertFalse(isset($ds->bar));
+ }
+
function testImplementsIterator()
{
$ds = new lmbSet($array = array('test1' => 'foo',
More information about the limb-svn
mailing list