summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2015-12-30 16:59:21 +0100
committerFrederic Guillot <fred@kanboard.net>2015-12-30 16:59:35 +0100
commit65f26699a63bd05859208092abb5d9ec1429a53f (patch)
tree02b37a94090d0b3fb8c71bf7cec229dbece5867a
parent9039e27b13c7836dd22cef0a069c8f168e8f2287 (diff)
Add unit test to remove metadata
-rw-r--r--ChangeLog1
-rw-r--r--app/Model/Metadata.php14
-rw-r--r--tests/units/Model/ProjectMetadataTest.php5
-rw-r--r--tests/units/Model/TaskMetadataTest.php5
-rw-r--r--tests/units/Model/UserMetadataTest.php5
5 files changed, 18 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index 857d157a..3b261700 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -6,6 +6,7 @@ New features:
- Added support of user mentions (@username)
- Added report to compare working hours between open and closed tasks
- Added the possiblity to define custom routes from plugins
+- Added new method to remove metadata
Improvements:
diff --git a/app/Model/Metadata.php b/app/Model/Metadata.php
index ae7475c4..690b2265 100644
--- a/app/Model/Metadata.php
+++ b/app/Model/Metadata.php
@@ -101,21 +101,11 @@ abstract class Metadata extends Base
*
* @access public
* @param integer $entity_id
- * @param string $name
+ * @param string $name
* @return bool
*/
public function remove($entity_id, $name)
{
-
- $this->db->startTransaction();
-
- if (! $this->db->table(static::TABLE)->eq($this->getEntityKey(), $entity_id)->eq('name', $name)->remove()) {
- $this->db->cancelTransaction();
- return false;
- }
-
- $this->db->closeTransaction();
-
- return true;
+ return $this->db->table(static::TABLE)->eq($this->getEntityKey(), $entity_id)->eq('name', $name)->remove();
}
}
diff --git a/tests/units/Model/ProjectMetadataTest.php b/tests/units/Model/ProjectMetadataTest.php
index 43d66b7b..5814987d 100644
--- a/tests/units/Model/ProjectMetadataTest.php
+++ b/tests/units/Model/ProjectMetadataTest.php
@@ -30,6 +30,11 @@ class ProjectMetadataTest extends Base
$this->assertEquals(array('key1' => 'value2'), $pm->getAll(1));
$this->assertEquals(array('key1' => 'value1', 'key2' => 'value2'), $pm->getAll(2));
+
+ $this->assertTrue($pm->remove(2, 'key1'));
+ $this->assertFalse($pm->remove(2, 'key1'));
+
+ $this->assertEquals(array('key2' => 'value2'), $pm->getAll(2));
}
public function testAutomaticRemove()
diff --git a/tests/units/Model/TaskMetadataTest.php b/tests/units/Model/TaskMetadataTest.php
index 9ce7d6be..2683c297 100644
--- a/tests/units/Model/TaskMetadataTest.php
+++ b/tests/units/Model/TaskMetadataTest.php
@@ -33,5 +33,10 @@ class TaskMetadataTest extends Base
$this->assertEquals(array('key1' => 'value2'), $tm->getAll(1));
$this->assertEquals(array('key1' => 'value1', 'key2' => 'value2'), $tm->getAll(2));
+
+ $this->assertTrue($tm->remove(2, 'key1'));
+ $this->assertFalse($tm->remove(2, 'key1'));
+
+ $this->assertEquals(array('key2' => 'value2'), $tm->getAll(2));
}
}
diff --git a/tests/units/Model/UserMetadataTest.php b/tests/units/Model/UserMetadataTest.php
index cc1fff12..457f1fb2 100644
--- a/tests/units/Model/UserMetadataTest.php
+++ b/tests/units/Model/UserMetadataTest.php
@@ -29,5 +29,10 @@ class UserMetadataTest extends Base
$this->assertEquals(array('key1' => 'value2'), $m->getAll(1));
$this->assertEquals(array('key1' => 'value1', 'key2' => 'value2'), $m->getAll(2));
+
+ $this->assertTrue($m->remove(2, 'key1'));
+ $this->assertFalse($m->remove(2, 'key1'));
+
+ $this->assertEquals(array('key2' => 'value2'), $m->getAll(2));
}
}