aboutsummaryrefslogtreecommitdiff
path: root/engine/tests/core/entities.php
diff options
context:
space:
mode:
Diffstat (limited to 'engine/tests/core/entities.php')
-rw-r--r--engine/tests/core/entities.php65
1 files changed, 43 insertions, 22 deletions
diff --git a/engine/tests/core/entities.php b/engine/tests/core/entities.php
index e8013b1fc..37960c3af 100644
--- a/engine/tests/core/entities.php
+++ b/engine/tests/core/entities.php
@@ -1,52 +1,73 @@
<?php
/**
* Elgg Test ElggEntities
- *
+ *
* @package Elgg
* @subpackage Test
* @author Curverider Ltd
* @link http://elgg.org/
*/
class ElggCoreEntityTest extends ElggCoreUnitTest {
-
- /**
- * Called before each test object.
- */
- public function __construct() {
-
- }
-
/**
* Called before each test method.
*/
public function setUp() {
-
-
+ $this->entity = new ElggEntityTest();
}
/**
* Called after each test method.
*/
public function tearDown() {
-
-
+ unset($this->entity);
}
/**
- * Called after each test object.
+ * Tests the protected attributes
*/
- public function __destruct() {
-
+ public function testElggEntityAttributes() {
+ $test_attributes = array();
+ $test_attributes['guid'] = '';
+ $test_attributes['type'] = '';
+ $test_attributes['subtype'] = '';
+ $test_attributes['owner_guid'] = get_loggedin_userid();
+ $test_attributes['container_guid'] = get_loggedin_userid();
+ $test_attributes['site_guid'] = 0;
+ $test_attributes['access_id'] = ACCESS_PRIVATE;
+ $test_attributes['time_created'] = '';
+ $test_attributes['time_updated'] = '';
+ $test_attributes['enabled'] = 'yes';
+ $test_attributes['tables_split'] = 1;
+ $test_attributes['tables_loaded'] = 0;
+ $this->assertIdentical($this->entity->expose_attributes(), $test_attributes);
}
- /**
- * A basic test that will be called and fail.
- */
- public function testElggEntityConstructor() {
- $this->assertTrue(FALSE);
+ public function testElggEntityGetAndSet() {
+ $this->assertIdentical($this->entity->get('access_id'), ACCESS_PRIVATE);
+ $this->assertTrue($this->entity->set('access_id', ACCESS_PUBLIC));
+ $this->assertIdentical($this->entity->get('access_id'), ACCESS_PUBLIC);
+ $this->assertIdentical($this->entity->access_id, ACCESS_PUBLIC);
+ unset($this->entity->access_id);
+ $this->assertIdentical($this->entity->access_id, '');
+
+ $this->assertFalse($this->entity->set('guid', 'error'));
+
+ $this->assertNull($this->entity->get('non_existent'));
+ $this->assertFalse(isset($this->entity->non_existent));
+ $this->assertTrue($this->entity->non_existent = 'test');
+ $this->assertTrue(isset($this->entity->non_existent));
+ $this->assertIdentical($this->entity->non_existent, 'test');
}
}
// ElggEntity is an abstract class with no abstact methods.
-class ElggEntityTest extends ElggEntity { }
+class ElggEntityTest extends ElggEntity {
+ public function __construct() {
+ $this->initialise_attributes();
+ }
+
+ public function expose_attributes() {
+ return $this->attributes;
+ }
+}