Merge pull request #24629 from nextcloud/enh/noid/optional-before-required
Make $vars and $secureRandom required.
This commit is contained in:
commit
820f9f4f63
|
@ -29,17 +29,20 @@
|
||||||
|
|
||||||
namespace OCA\DAV\Tests\unit\Connector\Sabre;
|
namespace OCA\DAV\Tests\unit\Connector\Sabre;
|
||||||
|
|
||||||
|
use OC\AppFramework\Http\Request;
|
||||||
use OC\Files\Filesystem;
|
use OC\Files\Filesystem;
|
||||||
use OC\Files\Storage\Local;
|
use OC\Files\Storage\Local;
|
||||||
use OC\Files\Storage\Temporary;
|
use OC\Files\Storage\Temporary;
|
||||||
use OC\Files\Storage\Wrapper\PermissionsMask;
|
use OC\Files\Storage\Wrapper\PermissionsMask;
|
||||||
use OC\Files\View;
|
use OC\Files\View;
|
||||||
|
use OC\Security\SecureRandom;
|
||||||
use OCA\DAV\Connector\Sabre\File;
|
use OCA\DAV\Connector\Sabre\File;
|
||||||
use OCP\Constants;
|
use OCP\Constants;
|
||||||
use OCP\Files\ForbiddenException;
|
use OCP\Files\ForbiddenException;
|
||||||
use OCP\Files\Storage;
|
use OCP\Files\Storage;
|
||||||
use OCP\IConfig;
|
use OCP\IConfig;
|
||||||
use OCP\Lock\ILockingProvider;
|
use OCP\Lock\ILockingProvider;
|
||||||
|
use OCP\Security\ISecureRandom;
|
||||||
use Test\HookHelper;
|
use Test\HookHelper;
|
||||||
use Test\TestCase;
|
use Test\TestCase;
|
||||||
use Test\Traits\MountProviderTrait;
|
use Test\Traits\MountProviderTrait;
|
||||||
|
@ -64,6 +67,9 @@ class FileTest extends TestCase {
|
||||||
/** @var IConfig | \PHPUnit\Framework\MockObject\MockObject */
|
/** @var IConfig | \PHPUnit\Framework\MockObject\MockObject */
|
||||||
protected $config;
|
protected $config;
|
||||||
|
|
||||||
|
/** @var ISecureRandom */
|
||||||
|
protected $secureRandom;
|
||||||
|
|
||||||
protected function setUp(): void {
|
protected function setUp(): void {
|
||||||
parent::setUp();
|
parent::setUp();
|
||||||
unset($_SERVER['HTTP_OC_CHUNKED']);
|
unset($_SERVER['HTTP_OC_CHUNKED']);
|
||||||
|
@ -78,6 +84,7 @@ class FileTest extends TestCase {
|
||||||
$this->loginAsUser($this->user);
|
$this->loginAsUser($this->user);
|
||||||
|
|
||||||
$this->config = $this->getMockBuilder('\OCP\IConfig')->getMock();
|
$this->config = $this->getMockBuilder('\OCP\IConfig')->getMock();
|
||||||
|
$this->secureRandom = new SecureRandom();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function tearDown(): void {
|
protected function tearDown(): void {
|
||||||
|
@ -303,11 +310,11 @@ class FileTest extends TestCase {
|
||||||
*
|
*
|
||||||
* @param string $path path to put the file into
|
* @param string $path path to put the file into
|
||||||
* @param string $viewRoot root to use for the view
|
* @param string $viewRoot root to use for the view
|
||||||
* @param null|\OC\AppFramework\Http\Request $request the HTTP request
|
* @param null|Request $request the HTTP request
|
||||||
*
|
*
|
||||||
* @return null|string of the PUT operaiton which is usually the etag
|
* @return null|string of the PUT operaiton which is usually the etag
|
||||||
*/
|
*/
|
||||||
private function doPut($path, $viewRoot = null, \OC\AppFramework\Http\Request $request = null) {
|
private function doPut($path, $viewRoot = null, Request $request = null) {
|
||||||
$view = \OC\Files\Filesystem::getView();
|
$view = \OC\Files\Filesystem::getView();
|
||||||
if (!is_null($viewRoot)) {
|
if (!is_null($viewRoot)) {
|
||||||
$view = new \OC\Files\View($viewRoot);
|
$view = new \OC\Files\View($viewRoot);
|
||||||
|
@ -405,11 +412,11 @@ class FileTest extends TestCase {
|
||||||
* @dataProvider legalMtimeProvider
|
* @dataProvider legalMtimeProvider
|
||||||
*/
|
*/
|
||||||
public function testPutSingleFileLegalMtime($requestMtime, $resultMtime) {
|
public function testPutSingleFileLegalMtime($requestMtime, $resultMtime) {
|
||||||
$request = new \OC\AppFramework\Http\Request([
|
$request = new Request([
|
||||||
'server' => [
|
'server' => [
|
||||||
'HTTP_X_OC_MTIME' => $requestMtime,
|
'HTTP_X_OC_MTIME' => $requestMtime,
|
||||||
]
|
]
|
||||||
], null, $this->config, null);
|
], $this->secureRandom, $this->config, null);
|
||||||
$file = 'foo.txt';
|
$file = 'foo.txt';
|
||||||
|
|
||||||
if ($resultMtime === null) {
|
if ($resultMtime === null) {
|
||||||
|
@ -429,11 +436,11 @@ class FileTest extends TestCase {
|
||||||
* @dataProvider legalMtimeProvider
|
* @dataProvider legalMtimeProvider
|
||||||
*/
|
*/
|
||||||
public function testChunkedPutLegalMtime($requestMtime, $resultMtime) {
|
public function testChunkedPutLegalMtime($requestMtime, $resultMtime) {
|
||||||
$request = new \OC\AppFramework\Http\Request([
|
$request = new Request([
|
||||||
'server' => [
|
'server' => [
|
||||||
'HTTP_X_OC_MTIME' => $requestMtime,
|
'HTTP_X_OC_MTIME' => $requestMtime,
|
||||||
]
|
]
|
||||||
], null, $this->config, null);
|
], $this->secureRandom, $this->config, null);
|
||||||
|
|
||||||
$_SERVER['HTTP_OC_CHUNKED'] = true;
|
$_SERVER['HTTP_OC_CHUNKED'] = true;
|
||||||
$file = 'foo.txt';
|
$file = 'foo.txt';
|
||||||
|
|
|
@ -159,7 +159,7 @@ class OC {
|
||||||
'SCRIPT_FILENAME' => $_SERVER['SCRIPT_FILENAME'],
|
'SCRIPT_FILENAME' => $_SERVER['SCRIPT_FILENAME'],
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
$fakeRequest = new \OC\AppFramework\Http\Request($params, null, new \OC\AllConfig(new \OC\SystemConfig(self::$config)));
|
$fakeRequest = new \OC\AppFramework\Http\Request($params, new \OC\Security\SecureRandom(), new \OC\AllConfig(new \OC\SystemConfig(self::$config)));
|
||||||
$scriptName = $fakeRequest->getScriptName();
|
$scriptName = $fakeRequest->getScriptName();
|
||||||
if (substr($scriptName, -1) == '/') {
|
if (substr($scriptName, -1) == '/') {
|
||||||
$scriptName .= 'index.php';
|
$scriptName .= 'index.php';
|
||||||
|
|
|
@ -136,8 +136,8 @@ class Request implements \ArrayAccess, \Countable, IRequest {
|
||||||
* @param string $stream
|
* @param string $stream
|
||||||
* @see http://www.php.net/manual/en/reserved.variables.php
|
* @see http://www.php.net/manual/en/reserved.variables.php
|
||||||
*/
|
*/
|
||||||
public function __construct(array $vars = [],
|
public function __construct(array $vars,
|
||||||
ISecureRandom $secureRandom = null,
|
ISecureRandom $secureRandom,
|
||||||
IConfig $config,
|
IConfig $config,
|
||||||
CsrfTokenManager $csrfTokenManager = null,
|
CsrfTokenManager $csrfTokenManager = null,
|
||||||
string $stream = 'php://input') {
|
string $stream = 'php://input') {
|
||||||
|
|
Loading…
Reference in New Issue