Add FileAccess trait for commands
This commit is contained in:
parent
8213f8d67d
commit
a39c7bf464
|
@ -0,0 +1,18 @@
|
||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Copyright (c) 2015 Robin Appelman <icewind@owncloud.com>
|
||||||
|
* This file is licensed under the Affero General Public License version 3 or
|
||||||
|
* later.
|
||||||
|
* See the COPYING-README file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace OC\Command;
|
||||||
|
|
||||||
|
use OCP\IUser;
|
||||||
|
|
||||||
|
trait FileAccess {
|
||||||
|
protected function getUserFolder(IUser $user) {
|
||||||
|
\OC_Util::setupFS($user->getUID());
|
||||||
|
return \OC::$server->getUserFolder($user->getUID());
|
||||||
|
}
|
||||||
|
}
|
|
@ -9,6 +9,7 @@
|
||||||
|
|
||||||
namespace Test\Command;
|
namespace Test\Command;
|
||||||
|
|
||||||
|
use OC\Command\FileAccess;
|
||||||
use OCP\Command\ICommand;
|
use OCP\Command\ICommand;
|
||||||
use Test\BackgroundJob\DummyJobList;
|
use Test\BackgroundJob\DummyJobList;
|
||||||
use Test\TestCase;
|
use Test\TestCase;
|
||||||
|
@ -31,6 +32,14 @@ class StateFullCommand implements ICommand {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class FilesystemCommand implements ICommand {
|
||||||
|
use FileAccess;
|
||||||
|
|
||||||
|
public function handle() {
|
||||||
|
AsyncBus::$lastCommand = 'FileAccess';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function basicFunction() {
|
function basicFunction() {
|
||||||
AsyncBus::$lastCommand = 'function';
|
AsyncBus::$lastCommand = 'function';
|
||||||
}
|
}
|
||||||
|
@ -133,6 +142,22 @@ class AsyncBus extends TestCase {
|
||||||
$this->assertEquals('closure-bar', self::$lastCommand);
|
$this->assertEquals('closure-bar', self::$lastCommand);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testFileFileAccessCommand() {
|
||||||
|
$this->bus->push(new FilesystemCommand());
|
||||||
|
$this->assertEquals('', self::$lastCommand);
|
||||||
|
$this->runJobs();
|
||||||
|
$this->assertEquals('FileAccess', self::$lastCommand);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testFileFileAccessCommandSync() {
|
||||||
|
$this->bus->requireSync('\OC\Command\FileAccess');
|
||||||
|
$this->bus->push(new FilesystemCommand());
|
||||||
|
$this->assertEquals('FileAccess', self::$lastCommand);
|
||||||
|
self::$lastCommand = '';
|
||||||
|
$this->runJobs();
|
||||||
|
$this->assertEquals('', self::$lastCommand);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private function runJobs() {
|
private function runJobs() {
|
||||||
$jobs = $this->jobList->getAll();
|
$jobs = $this->jobList->getAll();
|
||||||
|
|
Loading…
Reference in New Issue