mirror of
https://github.com/Pathduck/gallery3.git
synced 2026-07-31 20:20:36 -04:00
Rename item name and slug if necessary to avoid a conflict when we
move photos. Fixes ticket #957.
This commit is contained in:
@@ -19,6 +19,10 @@
|
||||
*/
|
||||
class Item_Helper_Test extends Gallery_Unit_Test_Case {
|
||||
|
||||
public function setup() {
|
||||
identity::set_active_user(identity::admin_user());
|
||||
}
|
||||
|
||||
public function viewable_test() {
|
||||
$album = test::random_album();
|
||||
$item = test::random_photo($album);
|
||||
@@ -44,7 +48,6 @@ class Item_Helper_Test extends Gallery_Unit_Test_Case {
|
||||
}
|
||||
|
||||
public function move_test() {
|
||||
identity::set_active_user(identity::admin_user());
|
||||
$photo = test::random_photo(item::root());
|
||||
$dst_album = test::random_album();
|
||||
|
||||
@@ -54,8 +57,6 @@ class Item_Helper_Test extends Gallery_Unit_Test_Case {
|
||||
|
||||
|
||||
public function move_updates_album_covers_test() {
|
||||
identity::set_active_user(identity::admin_user());
|
||||
|
||||
// 2 photos in the source album
|
||||
$src_album = test::random_album();
|
||||
$photo1 = test::random_photo($src_album);
|
||||
@@ -78,8 +79,6 @@ class Item_Helper_Test extends Gallery_Unit_Test_Case {
|
||||
}
|
||||
|
||||
public function move_leaves_empty_album_with_no_album_cover_test() {
|
||||
identity::set_active_user(identity::admin_user());
|
||||
|
||||
$src_album = test::random_album();
|
||||
$photo = test::random_photo($src_album);
|
||||
|
||||
@@ -89,4 +88,23 @@ class Item_Helper_Test extends Gallery_Unit_Test_Case {
|
||||
$this->assert_false($src_album->album_cover_item_id);
|
||||
}
|
||||
|
||||
public function move_conflicts_result_in_a_rename_test() {
|
||||
$rand = rand();
|
||||
$photo1 = test::random_photo_unsaved(item::root());
|
||||
$photo1->name = "{$rand}.jpg";
|
||||
$photo1->slug = (string)$rand;
|
||||
$photo1->save();
|
||||
|
||||
$src_album = test::random_album();
|
||||
$photo2 = test::random_photo_unsaved($src_album);
|
||||
$photo2->name = "{$rand}.jpg";
|
||||
$photo2->slug = (string)$rand;
|
||||
$photo2->save();
|
||||
|
||||
item::move($photo2, item::root());
|
||||
|
||||
$this->assert_same(item::root()->id, $photo2->parent_id);
|
||||
$this->assert_not_same("{$rand}.jpg", $photo2->name);
|
||||
$this->assert_not_same($rand, $photo2->slug);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user