Browse Source
Revert "feat: Implement Directory Check"
Revert "feat: Implement Directory Check"
This reverts commit feae8ba16a
.
pull/54250/head
No known key found for this signature in database
GPG Key ID: F72FA5B49FFA96B0
7 changed files with 0 additions and 144 deletions
-
1apps/workflowengine/composer/composer/autoload_classmap.php
-
1apps/workflowengine/composer/composer/autoload_static.php
-
58apps/workflowengine/lib/Check/Directory.php
-
2apps/workflowengine/lib/Manager.php
-
13apps/workflowengine/src/components/Checks/file.js
-
68apps/workflowengine/tests/Check/DirectoryTest.php
-
1build/psalm-baseline.xml
@ -1,58 +0,0 @@ |
|||
<?php |
|||
|
|||
declare(strict_types=1); |
|||
|
|||
/** |
|||
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors |
|||
* SPDX-License-Identifier: AGPL-3.0-or-later |
|||
*/ |
|||
namespace OCA\WorkflowEngine\Check; |
|||
|
|||
use OCA\WorkflowEngine\Entity\File; |
|||
use OCP\IL10N; |
|||
use OCP\WorkflowEngine\IFileCheck; |
|||
|
|||
class Directory extends AbstractStringCheck implements IFileCheck { |
|||
use TFileCheck; |
|||
|
|||
/** |
|||
* @param IL10N $l |
|||
*/ |
|||
public function __construct( |
|||
IL10N $l, |
|||
) { |
|||
parent::__construct($l); |
|||
} |
|||
|
|||
/** |
|||
* @return string |
|||
*/ |
|||
protected function getActualValue(): string { |
|||
if ($this->path === null) { |
|||
return ''; |
|||
} |
|||
// files/some/path -> some/path
|
|||
return preg_replace('/^files\//', '', pathinfo($this->path, PATHINFO_DIRNAME)); |
|||
} |
|||
|
|||
/** |
|||
* @param string $operator |
|||
* @param string $checkValue |
|||
* @param string $actualValue |
|||
* @return bool |
|||
*/ |
|||
protected function executeStringCheck($operator, $checkValue, $actualValue) { |
|||
if ($operator === 'is' || $operator === '!is') { |
|||
$checkValue = ltrim(rtrim($checkValue, '/'), '/'); |
|||
} |
|||
return parent::executeStringCheck($operator, $checkValue, $actualValue); |
|||
} |
|||
|
|||
public function supportedEntities(): array { |
|||
return [ File::class ]; |
|||
} |
|||
|
|||
public function isAvailableForScope(int $scope): bool { |
|||
return true; |
|||
} |
|||
} |
@ -1,68 +0,0 @@ |
|||
<?php |
|||
|
|||
declare(strict_types=1); |
|||
/** |
|||
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors |
|||
* SPDX-License-Identifier: AGPL-3.0-or-later |
|||
*/ |
|||
|
|||
namespace OCA\WorkflowEngine\Tests\Check; |
|||
|
|||
use OCA\WorkflowEngine\Check\Directory; |
|||
use OCA\WorkflowEngine\Entity\File; |
|||
use OCP\Files\Storage\IStorage; |
|||
use OCP\IL10N; |
|||
use Test\TestCase; |
|||
|
|||
class DirectoryTest extends TestCase { |
|||
/** @var IL10N */ |
|||
private $l10n; |
|||
|
|||
/** @var IStorage */ |
|||
private $storage; |
|||
|
|||
/** @var Directory */ |
|||
private $directory; |
|||
|
|||
protected function setUp(): void { |
|||
parent::setUp(); |
|||
$this->l10n = $this->createMock(IL10N::class); |
|||
$this->storage = $this->createMock(IStorage::class); |
|||
$this->directory = new Directory($this->l10n); |
|||
} |
|||
|
|||
/** |
|||
* @dataProvider dataProviderCheck |
|||
*/ |
|||
public function testExecuteStringCheck(string $operator, string $configuredDirectoryPath, string $filePath, bool $expectedResult): void { |
|||
$this->directory->setFileInfo($this->storage, $filePath); |
|||
|
|||
$result = $this->directory->executeCheck($operator, $configuredDirectoryPath); |
|||
|
|||
$this->assertEquals($expectedResult, $result); |
|||
} |
|||
|
|||
public function testSupportedEntities(): void { |
|||
$this->assertSame([File::class], $this->directory->supportedEntities()); |
|||
} |
|||
|
|||
public function testIsAvailableForScope(): void { |
|||
$this->assertTrue($this->directory->isAvailableForScope(1)); |
|||
} |
|||
|
|||
public function dataProviderCheck(): array { |
|||
return [ |
|||
['is', 'some/path', 'files/some/path/file.txt', true], |
|||
['is', '/some/path/', 'files/some/path/file.txt', true], |
|||
|
|||
['!is', 'some/path', 'files/some/path/file.txt', false], |
|||
['!is', 'some/path/', 'files/someother/path/file.txt', true], |
|||
|
|||
['matches', '/^some\/path\/.+$/i', 'files/SomE/PATH/subfolder/file.txt', true], |
|||
['matches', '/some\/path\/.*\/sub2/', 'files/some/path/subfolder1/sub2/anotherfile.pdf', true], |
|||
|
|||
['!matches', '/some\/path/', 'files/some/path/file.txt', false], |
|||
['!matches', '/some\/path/', 'files/another/path/file.txt', true], |
|||
]; |
|||
} |
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue