diff options
| author | cash <cash.costello@gmail.com> | 2012-01-04 20:13:05 -0500 | 
|---|---|---|
| committer | cash <cash.costello@gmail.com> | 2012-01-04 20:22:33 -0500 | 
| commit | 4befaea34c2617e0ae8b246bb42f582af6f100e4 (patch) | |
| tree | 65b3a77962c0ab64ed6af4a7a5bf41ad554b3bbf /engine | |
| parent | a92b300af8103e4168dc2091e2e8505f756cacf6 (diff) | |
| download | elgg-4befaea34c2617e0ae8b246bb42f582af6f100e4.tar.gz elgg-4befaea34c2617e0ae8b246bb42f582af6f100e4.tar.bz2  | |
added a unit test for recursive enabling/disabling
Diffstat (limited to 'engine')
| -rw-r--r-- | engine/tests/objects/entities.php | 33 | 
1 files changed, 33 insertions, 0 deletions
diff --git a/engine/tests/objects/entities.php b/engine/tests/objects/entities.php index 1772f7c1a..a4dc7946c 100644 --- a/engine/tests/objects/entities.php +++ b/engine/tests/objects/entities.php @@ -226,6 +226,39 @@ class ElggCoreEntityTest extends ElggCoreUnitTest {  		$this->assertTrue($this->entity->delete());  	} +	public function testElggEntityRecursiveDisableAndEnable() { +		global $CONFIG; + +		$this->save_entity(); +		$obj1 = new ElggObject(); +		$obj1->container_guid = $this->entity->getGUID(); +		$obj1->save(); +		$obj2 = new ElggObject(); +		$obj2->container_guid = $this->entity->getGUID(); +		$obj2->save(); + +		// disable $obj2 before disabling the container +		$this->assertTrue($obj2->disable()); + +		// disable entities container by $this->entity +		$this->assertTrue($this->entity->disable()); +		$entity = get_data_row("SELECT * FROM {$CONFIG->dbprefix}entities WHERE guid = '{$obj1->guid}'"); +		$this->assertIdentical($entity->enabled, 'no'); + +		// enable entities that were disabled with the container (but not $obj2) +		$this->assertTrue($this->entity->enable()); +		$entity = get_data_row("SELECT * FROM {$CONFIG->dbprefix}entities WHERE guid = '{$obj1->guid}'"); +		$this->assertIdentical($entity->enabled, 'yes'); +		$entity = get_data_row("SELECT * FROM {$CONFIG->dbprefix}entities WHERE guid = '{$obj2->guid}'"); +		$this->assertIdentical($entity->enabled, 'no'); + +		// cleanup +		$this->assertTrue($obj2->enable()); +		$this->assertTrue($obj2->delete()); +		$this->assertTrue($obj1->delete()); +		$this->assertTrue($this->entity->delete()); +	} +  	public function testElggEntityMetadata() {  		// let's delete a non-existent metadata  		$this->assertFalse($this->entity->deleteMetadata('important'));  | 
