summaryrefslogtreecommitdiff
path: root/modules/tag/tests
diff options
context:
space:
mode:
authorChad Parry <github@chad.parry.org>2011-04-24 08:28:39 -0600
committerChad Parry <github@chad.parry.org>2011-04-24 08:28:39 -0600
commit26585fed03236f0f70a75959e1d3002025f4e15e (patch)
tree33a89567f40dbbdb8affcbe76baa27b242bc6d75 /modules/tag/tests
parent809567f12850f59bdeb47a2963f6968b99b5a201 (diff)
parentc8f90e861b866d0caa86343a6c7213e923023d39 (diff)
Merge branch 'master' of https://github.com/gallery/gallery3 into rawphoto
Diffstat (limited to 'modules/tag/tests')
-rw-r--r--modules/tag/tests/Tag_Test.php50
1 files changed, 46 insertions, 4 deletions
diff --git a/modules/tag/tests/Tag_Test.php b/modules/tag/tests/Tag_Test.php
index f5ccb3a2..9e10fa4a 100644
--- a/modules/tag/tests/Tag_Test.php
+++ b/modules/tag/tests/Tag_Test.php
@@ -18,18 +18,60 @@
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
*/
class Tag_Test extends Gallery_Unit_Test_Case {
+ public function teardown() {
+ ORM::factory("tag")->delete_all();
+ }
+
public function create_tag_test() {
$album = test::random_album();
tag::add($album, "tag1");
$tag = ORM::factory("tag")->where("name", "=", "tag1")->find();
- $this->assert_true(1, $tag->count);
+ $this->assert_equal(1, $tag->count);
// Make sure adding the tag again doesn't increase the count
tag::add($album, "tag1");
- $this->assert_true(1, $tag->reload()->count);
+ $this->assert_equal(1, $tag->reload()->count);
tag::add(test::random_album(), "tag1");
- $this->assert_true(2, $tag->reload()->count);
+ $this->assert_equal(2, $tag->reload()->count);
+ }
+
+ public function rename_merge_tag_test() {
+ $album1 = test::random_album();
+ $album2 = test::random_album();
+
+ tag::add($album1, "tag1");
+ tag::add($album2, "tag2");
+
+ $tag1 = ORM::factory("tag")->where("name", "=", "tag1")->find();
+ $tag1->name = "tag2";
+ $tag1->save();
+
+ // Tags should be merged; $tag2 should be deleted
+ $tag1->reload();
+
+ $this->assert_equal(2, $tag1->count);
+ $this->assert_true($tag1->has($album1));
+ $this->assert_true($tag1->has($album2));
+ $this->assert_equal(1, ORM::factory("tag")->count_all());
+ }
+
+ public function rename_merge_tag_with_same_items_test() {
+ $album = test::random_album();
+
+ tag::add($album, "tag1");
+ tag::add($album, "tag2");
+
+ $tag1 = ORM::factory("tag")->where("name", "=", "tag1")->find();
+ $tag1->name = "tag2";
+ $tag1->save();
+
+ // Tags should be merged
+ $tag1->reload();
+
+ $this->assert_equal(1, $tag1->count);
+ $this->assert_true($tag1->has($album));
+ $this->assert_equal(1, ORM::factory("tag")->count_all());
}
-} \ No newline at end of file
+}