Fix share permission related unit tests
This commit is contained in:
parent
5f7b3a4dbe
commit
eef5851a67
|
@ -199,7 +199,7 @@ class Test_Files_Sharing_Storage extends OCA\Files_sharing\Tests\TestCase {
|
||||||
$this->assertTrue($result);
|
$this->assertTrue($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
function testFopenWithReadOnlyPermission() {
|
public function testFopenWithReadOnlyPermission() {
|
||||||
$this->view->file_put_contents($this->folder . '/existing.txt', 'foo');
|
$this->view->file_put_contents($this->folder . '/existing.txt', 'foo');
|
||||||
$fileinfoFolder = $this->view->getFileInfo($this->folder);
|
$fileinfoFolder = $this->view->getFileInfo($this->folder);
|
||||||
$result = \OCP\Share::shareItem('folder', $fileinfoFolder['fileid'], \OCP\Share::SHARE_TYPE_USER,
|
$result = \OCP\Share::shareItem('folder', $fileinfoFolder['fileid'], \OCP\Share::SHARE_TYPE_USER,
|
||||||
|
@ -230,7 +230,7 @@ class Test_Files_Sharing_Storage extends OCA\Files_sharing\Tests\TestCase {
|
||||||
$this->assertTrue($result);
|
$this->assertTrue($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
function testFopenWithCreateOnlyPermission() {
|
public function testFopenWithCreateOnlyPermission() {
|
||||||
$this->view->file_put_contents($this->folder . '/existing.txt', 'foo');
|
$this->view->file_put_contents($this->folder . '/existing.txt', 'foo');
|
||||||
$fileinfoFolder = $this->view->getFileInfo($this->folder);
|
$fileinfoFolder = $this->view->getFileInfo($this->folder);
|
||||||
$result = \OCP\Share::shareItem('folder', $fileinfoFolder['fileid'], \OCP\Share::SHARE_TYPE_USER,
|
$result = \OCP\Share::shareItem('folder', $fileinfoFolder['fileid'], \OCP\Share::SHARE_TYPE_USER,
|
||||||
|
@ -250,9 +250,9 @@ class Test_Files_Sharing_Storage extends OCA\Files_sharing\Tests\TestCase {
|
||||||
$this->assertNotFalse($handle);
|
$this->assertNotFalse($handle);
|
||||||
fclose($handle);
|
fclose($handle);
|
||||||
|
|
||||||
// rename file allowed as long as target did not exist
|
// rename file never allowed
|
||||||
$this->assertTrue($user2View->rename($this->folder . '/test-create.txt', $this->folder . '/newtarget.txt'));
|
$this->assertFalse($user2View->rename($this->folder . '/test-create.txt', $this->folder . '/newtarget.txt'));
|
||||||
$this->assertTrue($user2View->file_exists($this->folder . '/newtarget.txt'));
|
$this->assertFalse($user2View->file_exists($this->folder . '/newtarget.txt'));
|
||||||
|
|
||||||
// rename file not allowed if target exists
|
// rename file not allowed if target exists
|
||||||
$this->assertFalse($user2View->rename($this->folder . '/newtarget.txt', $this->folder . '/existing.txt'));
|
$this->assertFalse($user2View->rename($this->folder . '/newtarget.txt', $this->folder . '/existing.txt'));
|
||||||
|
@ -274,7 +274,7 @@ class Test_Files_Sharing_Storage extends OCA\Files_sharing\Tests\TestCase {
|
||||||
$this->assertTrue($result);
|
$this->assertTrue($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
function testFopenWithUpdateOnlyPermission() {
|
public function testFopenWithUpdateOnlyPermission() {
|
||||||
$this->view->file_put_contents($this->folder . '/existing.txt', 'foo');
|
$this->view->file_put_contents($this->folder . '/existing.txt', 'foo');
|
||||||
$fileinfoFolder = $this->view->getFileInfo($this->folder);
|
$fileinfoFolder = $this->view->getFileInfo($this->folder);
|
||||||
|
|
||||||
|
@ -301,13 +301,17 @@ class Test_Files_Sharing_Storage extends OCA\Files_sharing\Tests\TestCase {
|
||||||
$this->assertTrue($user2View->rename($this->folder . '/test.txt.part', $this->folder . '/existing.txt'));
|
$this->assertTrue($user2View->rename($this->folder . '/test.txt.part', $this->folder . '/existing.txt'));
|
||||||
$this->assertTrue($user2View->file_exists($this->folder . '/existing.txt'));
|
$this->assertTrue($user2View->file_exists($this->folder . '/existing.txt'));
|
||||||
|
|
||||||
|
// rename regular file allowed
|
||||||
|
$this->assertTrue($user2View->rename($this->folder . '/existing.txt', $this->folder . '/existing-renamed.txt'));
|
||||||
|
$this->assertTrue($user2View->file_exists($this->folder . '/existing-renamed.txt'));
|
||||||
|
|
||||||
// overwriting file directly is allowed
|
// overwriting file directly is allowed
|
||||||
$handle = $user2View->fopen($this->folder . '/existing.txt', 'w');
|
$handle = $user2View->fopen($this->folder . '/existing-renamed.txt', 'w');
|
||||||
$this->assertNotFalse($handle);
|
$this->assertNotFalse($handle);
|
||||||
fclose($handle);
|
fclose($handle);
|
||||||
|
|
||||||
// delete forbidden
|
// delete forbidden
|
||||||
$this->assertFalse($user2View->unlink($this->folder . '/existing.txt'));
|
$this->assertFalse($user2View->unlink($this->folder . '/existing-renamed.txt'));
|
||||||
|
|
||||||
//cleanup
|
//cleanup
|
||||||
self::loginHelper(self::TEST_FILES_SHARING_API_USER1);
|
self::loginHelper(self::TEST_FILES_SHARING_API_USER1);
|
||||||
|
@ -316,7 +320,7 @@ class Test_Files_Sharing_Storage extends OCA\Files_sharing\Tests\TestCase {
|
||||||
$this->assertTrue($result);
|
$this->assertTrue($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
function testFopenWithDeleteOnlyPermission() {
|
public function testFopenWithDeleteOnlyPermission() {
|
||||||
$this->view->file_put_contents($this->folder . '/existing.txt', 'foo');
|
$this->view->file_put_contents($this->folder . '/existing.txt', 'foo');
|
||||||
$fileinfoFolder = $this->view->getFileInfo($this->folder);
|
$fileinfoFolder = $this->view->getFileInfo($this->folder);
|
||||||
$result = \OCP\Share::shareItem('folder', $fileinfoFolder['fileid'], \OCP\Share::SHARE_TYPE_USER,
|
$result = \OCP\Share::shareItem('folder', $fileinfoFolder['fileid'], \OCP\Share::SHARE_TYPE_USER,
|
||||||
|
|
|
@ -69,7 +69,7 @@ class ObjectTree extends \Test\TestCase {
|
||||||
|
|
||||||
function moveFailedInvalidCharsProvider() {
|
function moveFailedInvalidCharsProvider() {
|
||||||
return array(
|
return array(
|
||||||
array('a/b', 'a/*', array('a' => false, 'a/b' => true, 'a/c*' => false), array()),
|
array('a/b', 'a/*', array('a' => true, 'a/b' => true, 'a/c*' => false), array()),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -80,12 +80,12 @@ class ObjectTree extends \Test\TestCase {
|
||||||
array('a/b', 'b/b', array('a' => false, 'a/b' => true, 'b' => false, 'b/b' => false), array()),
|
array('a/b', 'b/b', array('a' => false, 'a/b' => true, 'b' => false, 'b/b' => false), array()),
|
||||||
array('a/b', 'b/b', array('a' => true, 'a/b' => true, 'b' => false, 'b/b' => false), array()),
|
array('a/b', 'b/b', array('a' => true, 'a/b' => true, 'b' => false, 'b/b' => false), array()),
|
||||||
array('a/b', 'b/b', array('a' => true, 'a/b' => true, 'b' => true, 'b/b' => false), array('a/b' => false)),
|
array('a/b', 'b/b', array('a' => true, 'a/b' => true, 'b' => true, 'b/b' => false), array('a/b' => false)),
|
||||||
|
array('a/b', 'a/c', array('a' => false, 'a/b' => true, 'a/c' => false), array()),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function moveSuccessProvider() {
|
function moveSuccessProvider() {
|
||||||
return array(
|
return array(
|
||||||
array('a/b', 'a/c', array('a' => false, 'a/b' => true, 'a/c' => false), array()),
|
|
||||||
array('a/b', 'b/b', array('a' => true, 'a/b' => true, 'b' => true, 'b/b' => false), array('a/b' => true)),
|
array('a/b', 'b/b', array('a' => true, 'a/b' => true, 'b' => true, 'b/b' => false), array('a/b' => true)),
|
||||||
// older files with special chars can still be renamed to valid names
|
// older files with special chars can still be renamed to valid names
|
||||||
array('a/b*', 'b/b', array('a' => true, 'a/b*' => true, 'b' => true, 'b/b' => false), array('a/b*' => true)),
|
array('a/b*', 'b/b', array('a' => true, 'a/b*' => true, 'b' => true, 'b/b' => false), array('a/b*' => true)),
|
||||||
|
|
Loading…
Reference in New Issue