Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
test(files_sharing): Test if recent files result use actual share tar…
…get name

Signed-off-by: Julius Härtl <[email protected]>
  • Loading branch information
juliusknorr committed Oct 18, 2023
commit f3ae617bde99f8babddca634edb1f1f632b69191
37 changes: 37 additions & 0 deletions apps/files_sharing/tests/CacheTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@ protected function setUp(): void {
$this->view->file_put_contents('container/shareddir/subdir/another.txt', $textData);
$this->view->file_put_contents('container/shareddir/subdir/another too.txt', $textData);
$this->view->file_put_contents('container/shareddir/subdir/not a text file.xml', '<xml></xml>');
$this->view->file_put_contents('simplefile.txt', $textData);

[$this->ownerStorage,] = $this->view->resolvePath('');
$this->ownerCache = $this->ownerStorage->getCache();
Expand Down Expand Up @@ -302,6 +303,42 @@ public function testGetFolderContentsInSubdir() {
);
}

/**
* This covers a bug where the share owners name was propagated
* to the recipient in the recent files API response where the
* share recipient has a different target set
*
* https://github.com/nextcloud/server/issues/39879
*/
public function testShareRenameOriginalFileInRecentResults() {
self::loginHelper(self::TEST_FILES_SHARING_API_USER1);

$rootFolder = \OC::$server->getUserFolder(self::TEST_FILES_SHARING_API_USER1);
$node = $rootFolder->get('simplefile.txt');
$share = $this->shareManager->newShare();
$share->setNode($node)
->setShareType(IShare::TYPE_USER)
->setSharedWith(self::TEST_FILES_SHARING_API_USER3)
->setSharedBy(self::TEST_FILES_SHARING_API_USER1)
->setPermissions(\OCP\Constants::PERMISSION_READ);
$share = $this->shareManager->createShare($share);
$share->setStatus(IShare::STATUS_ACCEPTED);
$this->shareManager->updateShare($share);

self::loginHelper(self::TEST_FILES_SHARING_API_USER1);
$node->move(self::TEST_FILES_SHARING_API_USER1 . '/files/simplefile2.txt');

self::loginHelper(self::TEST_FILES_SHARING_API_USER3);
$rootFolder = \OC::$server->getUserFolder(self::TEST_FILES_SHARING_API_USER3);
$recents = $rootFolder->getRecent(10);
self::assertEquals([
'welcome.txt',
'simplefile.txt'
], array_map(function($node) {
return $node->getFileInfo()['name'];
}, $recents));
}

public function testGetFolderContentsWhenSubSubdirShared() {
self::loginHelper(self::TEST_FILES_SHARING_API_USER1);

Expand Down