* @author Joas Schilling * @author Morris Jobke * @author Robin Appelman * @author Roeland Jago Douma * @author Thomas Müller * * @license AGPL-3.0 * * This code is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License, version 3, * as published by the Free Software Foundation. * * This program 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, version 3, * along with this program. If not, see * */ namespace OCA\Files_Sharing\Tests; /** * Class UnshareChildrenTest * * @group DB * * @package OCA\Files_Sharing\Tests */ class UnshareChildrenTest extends TestCase { protected $subsubfolder; const TEST_FOLDER_NAME = '/folder_share_api_test'; private static $tempStorage; protected function setUp() { parent::setUp(); \OCP\Util::connectHook('OC_Filesystem', 'post_delete', '\OCA\Files_Sharing\Hooks', 'unshareChildren'); $this->folder = self::TEST_FOLDER_NAME; $this->subfolder = '/subfolder_share_api_test'; $this->subsubfolder = '/subsubfolder_share_api_test'; $this->filename = '/share-api-test'; // save file with content $this->view->mkdir($this->folder); $this->view->mkdir($this->folder . $this->subfolder); $this->view->mkdir($this->folder . $this->subfolder . $this->subsubfolder); $this->view->file_put_contents($this->folder . $this->filename, $this->data); $this->view->file_put_contents($this->folder . $this->subfolder . $this->filename, $this->data); } protected function tearDown() { if ($this->view) { $this->view->deleteAll($this->folder); } self::$tempStorage = null; parent::tearDown(); } /** * @medium */ public function testUnshareChildren() { $fileInfo2 = \OC\Files\Filesystem::getFileInfo($this->folder); $this->share( \OCP\Share::SHARE_TYPE_USER, $this->folder, self::TEST_FILES_SHARING_API_USER1, self::TEST_FILES_SHARING_API_USER2, \OCP\Constants::PERMISSION_ALL ); self::loginHelper(self::TEST_FILES_SHARING_API_USER2); // one folder should be shared with the user $shares = $this->shareManager->getSharedWith(self::TEST_FILES_SHARING_API_USER2, \OCP\Share::SHARE_TYPE_USER); $this->assertCount(1, $shares); // move shared folder to 'localDir' \OC\Files\Filesystem::mkdir('localDir'); $result = \OC\Files\Filesystem::rename($this->folder, '/localDir/' . $this->folder); $this->assertTrue($result); \OC\Files\Filesystem::unlink('localDir'); self::loginHelper(self::TEST_FILES_SHARING_API_USER2); // after the parent directory was deleted the share should be unshared $shares = $this->shareManager->getSharedWith(self::TEST_FILES_SHARING_API_USER2, \OCP\Share::SHARE_TYPE_USER); $this->assertEmpty($shares); self::loginHelper(self::TEST_FILES_SHARING_API_USER1); // the folder for the owner should still exists $this->assertTrue(\OC\Files\Filesystem::file_exists($this->folder)); } } Nextcloud server, a safe home for all your data: https://github.com/nextcloud/serverwww-data
summaryrefslogtreecommitdiffstats
blob: 919098f2ad8e44382cc11b838e7e2ed8704db258 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{ "translations": {
    "Deleted files" : "Избришани датотеки",
    "restored" : "повратени",
    "Restore" : "Поврати",
    "Delete" : "Избриши",
    "Delete permanently" : "Трајно избришани",
    "This operation is forbidden" : "Операцијата не е дозволена",
    "No entries found in this folder" : "Нема ништо во оваа папка",
    "Select all" : "Избери се",
    "Name" : "Име",
    "Deleted" : "Избришан",
    "Couldn't delete %s permanently" : "Не можеше трајно да се избрише %s",
    "Couldn't restore %s" : "Не можеше да се поврати %s",
    "Error" : "Грешка"
},"pluralForm" :"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"
}