diff options
author | Brett Profitt <brett.profitt@gmail.com> | 2012-01-10 16:54:49 -0800 |
---|---|---|
committer | Brett Profitt <brett.profitt@gmail.com> | 2012-01-10 16:54:49 -0800 |
commit | a3f0353600e749a16abbdab3cbc75b3469d6fd69 (patch) | |
tree | fc534efde38eebc2db7b9b8d5044b9943dc93db2 /engine/tests/api/metadata.php | |
parent | 0fe0f9d6dc6577d39bf0615c0e714c7fa7d2ebf3 (diff) | |
download | elgg-a3f0353600e749a16abbdab3cbc75b3469d6fd69.tar.gz elgg-a3f0353600e749a16abbdab3cbc75b3469d6fd69.tar.bz2 |
Fixes #4269. Not using ElggBatch to delete metadata / annotations. Added unit tests for deleting annotations/md. Fixed an annoying inconsistency with "metastring/s" option in private functions.
Diffstat (limited to 'engine/tests/api/metadata.php')
-rw-r--r-- | engine/tests/api/metadata.php | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/engine/tests/api/metadata.php b/engine/tests/api/metadata.php index f5b615ca8..be8ac269c 100644 --- a/engine/tests/api/metadata.php +++ b/engine/tests/api/metadata.php @@ -99,6 +99,31 @@ class ElggCoreMetadataAPITest extends ElggCoreUnitTest { $this->object->delete(); } + public function testElggDeleteMetadata() { + $e = new ElggObject(); + $e->save(); + + for ($i=0; $i<30; $i++) { + $name = "test_metadata" . rand(0, 10000); + $e->$name = rand(0, 10000); + } + + $options = array( + 'guid' => $e->getGUID(), + 'limit' => 0 + ); + + $md = elgg_get_metadata($options); + $this->assertIdentical(30, count($md)); + + $this->assertTrue(elgg_delete_metadata($options)); + + $md = elgg_get_metadata($options); + $this->assertTrue(empty($md)); + + $e->delete(); + } + protected function create_metastring($string) { global $CONFIG, $METASTRINGS_CACHE, $METASTRINGS_DEADNAME_CACHE; |