Skip to content
Snippets Groups Projects
Commit 176fba83 authored by Robin Appelman's avatar Robin Appelman
Browse files

Setup the filesystem in the expire command

parent ddd6a67d
No related branches found
No related tags found
No related merge requests found
......@@ -11,6 +11,7 @@ namespace OCA\Files_Versions\Command;
use OC\Command\FileAccess;
use OCA\Files_Versions\Storage;
use OCP\Command\ICommand;
use OCP\IUser;
class Expire implements ICommand {
use FileAccess;
......@@ -31,11 +32,18 @@ class Expire implements ICommand {
private $neededSpace = 0;
/**
* @var int
*/
private $user;
/**
* @param IUser $user
* @param string $fileName
* @param int|null $versionsSize
* @param int $neededSpace
*/
function __construct($fileName, $versionsSize = null, $neededSpace = 0) {
function __construct(IUser $user, $fileName, $versionsSize = null, $neededSpace = 0) {
$this->user = $user;
$this->fileName = $fileName;
$this->versionsSize = $versionsSize;
$this->neededSpace = $neededSpace;
......@@ -43,6 +51,7 @@ class Expire implements ICommand {
public function handle() {
$this->setupFS($this->user);
Storage::expire($this->fileName, $this->versionsSize, $this->neededSpace);
}
}
......@@ -483,7 +483,7 @@ class Storage {
* @param int $neededSpace
*/
private static function scheduleExpire($fileName, $versionsSize = null, $neededSpace = 0) {
$command = new Expire($fileName, $versionsSize, $neededSpace);
$command = new Expire(\OC::$server->getUserSession()->getUser(), $fileName, $versionsSize, $neededSpace);
\OC::$server->getCommandBus()->push($command);
}
......
......@@ -243,6 +243,8 @@ class Test_Files_Versioning extends \Test\TestCase {
// execute rename hook of versions app
\OC\Files\Filesystem::rename("test.txt", "test2.txt");
$this->runCommands();
$this->assertFalse($this->rootView->file_exists($v1));
$this->assertFalse($this->rootView->file_exists($v2));
......@@ -285,8 +287,11 @@ class Test_Files_Versioning extends \Test\TestCase {
// execute rename hook of versions app
\OC\Files\Filesystem::rename('/folder1/test.txt', '/folder1/folder2/test.txt');
self::loginHelper(self::TEST_VERSIONS_USER2);
$this->runCommands();
$this->assertFalse($this->rootView->file_exists($v1));
$this->assertFalse($this->rootView->file_exists($v2));
......@@ -330,6 +335,8 @@ class Test_Files_Versioning extends \Test\TestCase {
self::loginHelper(self::TEST_VERSIONS_USER);
$this->runCommands();
$this->assertTrue($this->rootView->file_exists($v1));
$this->assertTrue($this->rootView->file_exists($v2));
......@@ -361,6 +368,8 @@ class Test_Files_Versioning extends \Test\TestCase {
// execute copy hook of versions app
\OC\Files\Filesystem::copy("test.txt", "test2.txt");
$this->runCommands();
$this->assertTrue($this->rootView->file_exists($v1));
$this->assertTrue($this->rootView->file_exists($v2));
......@@ -414,7 +423,9 @@ class Test_Files_Versioning extends \Test\TestCase {
public static function loginHelper($user, $create = false) {
if ($create) {
\OC_User::createUser($user, $user);
$backend = new \OC_User_Dummy();
$backend->createUser($user, $user);
\OC::$server->getUserManager()->registerBackend($backend);
}
\OC_Util::tearDownFS();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment