tests for getNodeForPath with invalid path
This commit is contained in:
parent
05cecb101d
commit
5a5639ab76
|
@ -11,6 +11,7 @@ namespace Test\OC\Connector\Sabre;
|
||||||
|
|
||||||
use OC\Files\FileInfo;
|
use OC\Files\FileInfo;
|
||||||
use OC\Connector\Sabre\Directory;
|
use OC\Connector\Sabre\Directory;
|
||||||
|
use OC\Files\Storage\Temporary;
|
||||||
|
|
||||||
class TestDoubleFileView extends \OC\Files\View {
|
class TestDoubleFileView extends \OC\Files\View {
|
||||||
|
|
||||||
|
@ -36,7 +37,7 @@ class TestDoubleFileView extends \OC\Files\View {
|
||||||
return $this->canRename;
|
return $this->canRename;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getRelativePath($path){
|
public function getRelativePath($path) {
|
||||||
return $path;
|
return $path;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -122,11 +123,11 @@ class ObjectTree extends \Test\TestCase {
|
||||||
* @dataProvider nodeForPathProvider
|
* @dataProvider nodeForPathProvider
|
||||||
*/
|
*/
|
||||||
public function testGetNodeForPath(
|
public function testGetNodeForPath(
|
||||||
$inputFileName,
|
$inputFileName,
|
||||||
$fileInfoQueryPath,
|
$fileInfoQueryPath,
|
||||||
$outputFileName,
|
$outputFileName,
|
||||||
$type,
|
$type,
|
||||||
$enableChunkingHeader
|
$enableChunkingHeader
|
||||||
) {
|
) {
|
||||||
|
|
||||||
if ($enableChunkingHeader) {
|
if ($enableChunkingHeader) {
|
||||||
|
@ -237,4 +238,53 @@ class ObjectTree extends \Test\TestCase {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @expectedException \OCP\Files\InvalidPathException
|
||||||
|
*/
|
||||||
|
public function testGetNodeForPathInvalidPath() {
|
||||||
|
$path = '/foo\bar';
|
||||||
|
|
||||||
|
|
||||||
|
$storage = new Temporary([]);
|
||||||
|
|
||||||
|
$view = $this->getMock('\OC\Files\View', ['resolvePath']);
|
||||||
|
$view->expects($this->once())
|
||||||
|
->method('resolvePath')
|
||||||
|
->will($this->returnCallback(function($path) use ($storage){
|
||||||
|
return [$storage, ltrim($path, '/')];
|
||||||
|
}));
|
||||||
|
|
||||||
|
$rootNode = $this->getMockBuilder('\OC\Connector\Sabre\Directory')
|
||||||
|
->disableOriginalConstructor()
|
||||||
|
->getMock();
|
||||||
|
$mountManager = $this->getMock('\OC\Files\Mount\Manager');
|
||||||
|
|
||||||
|
$tree = new \OC\Connector\Sabre\ObjectTree();
|
||||||
|
$tree->init($rootNode, $view, $mountManager);
|
||||||
|
|
||||||
|
$tree->getNodeForPath($path);
|
||||||
|
}
|
||||||
|
public function testGetNodeForPathRoot() {
|
||||||
|
$path = '/';
|
||||||
|
|
||||||
|
|
||||||
|
$storage = new Temporary([]);
|
||||||
|
|
||||||
|
$view = $this->getMock('\OC\Files\View', ['resolvePath']);
|
||||||
|
$view->expects($this->any())
|
||||||
|
->method('resolvePath')
|
||||||
|
->will($this->returnCallback(function ($path) use ($storage) {
|
||||||
|
return [$storage, ltrim($path, '/')];
|
||||||
|
}));
|
||||||
|
|
||||||
|
$rootNode = $this->getMockBuilder('\OC\Connector\Sabre\Directory')
|
||||||
|
->disableOriginalConstructor()
|
||||||
|
->getMock();
|
||||||
|
$mountManager = $this->getMock('\OC\Files\Mount\Manager');
|
||||||
|
|
||||||
|
$tree = new \OC\Connector\Sabre\ObjectTree();
|
||||||
|
$tree->init($rootNode, $view, $mountManager);
|
||||||
|
|
||||||
|
$tree->getNodeForPath($path);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue