|
|
|
|
@ -68,6 +68,17 @@ class Encryption extends \Test\Files\Storage\Storage {
|
|
|
|
|
*/
|
|
|
|
|
private $mountManager;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @var \OC\Group\Manager | \PHPUnit_Framework_MockObject_MockObject
|
|
|
|
|
*/
|
|
|
|
|
private $groupManager;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @var \OCP\IConfig | \PHPUnit_Framework_MockObject_MockObject
|
|
|
|
|
*/
|
|
|
|
|
private $config;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** @var integer dummy unencrypted size */
|
|
|
|
|
private $dummySize = -1;
|
|
|
|
|
|
|
|
|
|
@ -84,14 +95,16 @@ class Encryption extends \Test\Files\Storage\Storage {
|
|
|
|
|
->method('getEncryptionModule')
|
|
|
|
|
->willReturn($mockModule);
|
|
|
|
|
|
|
|
|
|
$config = $this->getMockBuilder('\OCP\IConfig')
|
|
|
|
|
$this->config = $this->getMockBuilder('\OCP\IConfig')
|
|
|
|
|
->disableOriginalConstructor()
|
|
|
|
|
->getMock();
|
|
|
|
|
$groupManager = $this->getMockBuilder('\OC\Group\Manager')
|
|
|
|
|
$this->groupManager = $this->getMockBuilder('\OC\Group\Manager')
|
|
|
|
|
->disableOriginalConstructor()
|
|
|
|
|
->getMock();
|
|
|
|
|
|
|
|
|
|
$this->util = $this->getMock('\OC\Encryption\Util', ['getUidAndFilename', 'isFile', 'isExcluded'], [new View(), new \OC\User\Manager(), $groupManager, $config]);
|
|
|
|
|
$this->util = $this->getMock('\OC\Encryption\Util',
|
|
|
|
|
['getUidAndFilename', 'isFile', 'isExcluded'],
|
|
|
|
|
[new View(), new \OC\User\Manager(), $this->groupManager, $this->config]);
|
|
|
|
|
$this->util->expects($this->any())
|
|
|
|
|
->method('getUidAndFilename')
|
|
|
|
|
->willReturnCallback(function ($path) {
|
|
|
|
|
@ -365,4 +378,48 @@ class Encryption extends \Test\Files\Storage\Storage {
|
|
|
|
|
array(false, true),
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @dataProvider dataTestGetHeader
|
|
|
|
|
* @param $path
|
|
|
|
|
* @param $strippedPath
|
|
|
|
|
*/
|
|
|
|
|
public function testGetHeader($path, $strippedPath) {
|
|
|
|
|
|
|
|
|
|
$sourceStorage = $this->getMockBuilder('\OC\Files\Storage\Storage')
|
|
|
|
|
->disableOriginalConstructor()->getMock();
|
|
|
|
|
|
|
|
|
|
$util = $this->getMockBuilder('\OC\Encryption\Util')
|
|
|
|
|
->setConstructorArgs([new View(), new \OC\User\Manager(), $this->groupManager, $this->config])
|
|
|
|
|
->getMock();
|
|
|
|
|
|
|
|
|
|
$instance = $this->getMockBuilder('\OC\Files\Storage\Wrapper\Encryption')
|
|
|
|
|
->setConstructorArgs(
|
|
|
|
|
[
|
|
|
|
|
[
|
|
|
|
|
'storage' => $sourceStorage,
|
|
|
|
|
'root' => 'foo',
|
|
|
|
|
'mountPoint' => '/',
|
|
|
|
|
'mount' => $this->mount
|
|
|
|
|
],
|
|
|
|
|
$this->encryptionManager, $util, $this->logger, $this->file, null, $this->keyStore, $this->update, $this->mountManager
|
|
|
|
|
]
|
|
|
|
|
)
|
|
|
|
|
->getMock();
|
|
|
|
|
|
|
|
|
|
$util->expects($this->once())->method('stripPartialFileExtension')
|
|
|
|
|
->with($path)->willReturn($strippedPath);
|
|
|
|
|
$sourceStorage->expects($this->once())->method('file_exists')
|
|
|
|
|
->with($strippedPath)->willReturn(false);
|
|
|
|
|
|
|
|
|
|
$this->invokePrivate($instance, 'getHeader', [$path]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function dataTestGetHeader() {
|
|
|
|
|
return array(
|
|
|
|
|
array('/foo/bar.txt', '/foo/bar.txt'),
|
|
|
|
|
array('/foo/bar.txt.part', '/foo/bar.txt'),
|
|
|
|
|
array('/foo/bar.txt.ocTransferId7437493.part', '/foo/bar.txt'),
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|