From c25915cde477c31c18a08dd61128f68a4190f49f Mon Sep 17 00:00:00 2001 From: Bjoern Schiessle Date: Thu, 14 Aug 2014 13:08:58 +0200 Subject: [PATCH] update unit tests with configurable share folder --- apps/files_sharing/tests/helper.php | 41 +++++++++++++++++++++++++++++ apps/files_sharing/tests/share.php | 30 +++++++++++++++++++++ apps/files_sharing/tests/update.php | 5 ++++ 3 files changed, 76 insertions(+) create mode 100644 apps/files_sharing/tests/helper.php diff --git a/apps/files_sharing/tests/helper.php b/apps/files_sharing/tests/helper.php new file mode 100644 index 00000000000..b4d5ebb90a6 --- /dev/null +++ b/apps/files_sharing/tests/helper.php @@ -0,0 +1,41 @@ + + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see . + * + */ +require_once __DIR__ . '/base.php'; + +class Test_Files_Sharing_Helper extends Test_Files_Sharing_Base { + + /** + * test set and get share folder + */ + function testSetGetShareFolder() { + $this->assertSame('/', \OCA\Files_Sharing\Helper::getShareFolder()); + + \OCA\Files_Sharing\Helper::setShareFolder('/Shared'); + + $this->assertSame('/Shared', \OCA\Files_Sharing\Helper::getShareFolder()); + + // cleanup + \OCP\Config::deleteSystemValue('share_folder'); + + } + +} diff --git a/apps/files_sharing/tests/share.php b/apps/files_sharing/tests/share.php index d3ca1816c75..31246c5df44 100644 --- a/apps/files_sharing/tests/share.php +++ b/apps/files_sharing/tests/share.php @@ -125,6 +125,36 @@ class Test_Files_Sharing extends Test_Files_Sharing_Base { } + function testShareWithDifferentShareFolder() { + + $fileinfo = $this->view->getFileInfo($this->filename); + $folderinfo = $this->view->getFileInfo($this->folder); + + $fileShare = \OCP\Share::shareItem('file', $fileinfo['fileid'], \OCP\Share::SHARE_TYPE_USER, + self::TEST_FILES_SHARING_API_USER2, 31); + $this->assertTrue($fileShare); + + \OCA\Files_Sharing\Helper::setShareFolder('/Shared/subfolder'); + + $folderShare = \OCP\Share::shareItem('folder', $folderinfo['fileid'], \OCP\Share::SHARE_TYPE_USER, + self::TEST_FILES_SHARING_API_USER2, 31); + $this->assertTrue($folderShare); + + self::loginHelper(self::TEST_FILES_SHARING_API_USER2); + + $this->assertTrue(\OC\Files\Filesystem::file_exists($this->filename)); + $this->assertTrue(\OC\Files\Filesystem::file_exists('/Shared/subfolder/' . $this->folder)); + + //cleanup + self::loginHelper(self::TEST_FILES_SHARING_API_USER1); + \OCP\Share::unshare('file', $fileinfo['fileid'], \OCP\Share::SHARE_TYPE_USER, + self::TEST_FILES_SHARING_API_USER2); + \OCP\Share::unshare('folder', $folderinfo['fileid'], \OCP\Share::SHARE_TYPE_USER, + self::TEST_FILES_SHARING_API_USER2); + + \OCP\Config::deleteSystemValue('share_folder'); + } + /** * shared files should never have delete permissions * @dataProvider DataProviderTestFileSharePermissions diff --git a/apps/files_sharing/tests/update.php b/apps/files_sharing/tests/update.php index d3555cc2ee3..be29c38acc3 100644 --- a/apps/files_sharing/tests/update.php +++ b/apps/files_sharing/tests/update.php @@ -152,8 +152,13 @@ class Test_Files_Sharing_Update_Routine extends Test_Files_Sharing_Base { } } + $shareFolder = \OCP\Config::getSystemValue('share_folder', '/'); + + $this->assertSame('/Shared', $shareFolder); + // cleanup $this->cleanupSharedTable(); + \OCP\Config::deleteSystemValue('share_folder'); } -- 2.39.5