Skip to content

Commit 686c0e1

Browse files
committed
test(policy): cover collect_metadata provider behavior
Signed-off-by: Vitor Mattos <[email protected]>
1 parent fef7f77 commit 686c0e1

1 file changed

Lines changed: 36 additions & 0 deletions

File tree

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
/**
5+
* SPDX-FileCopyrightText: 2026 LibreCode coop and contributors
6+
* SPDX-License-Identifier: AGPL-3.0-or-later
7+
*/
8+
9+
namespace OCA\Libresign\Tests\Unit\Service\Policy\Provider\CollectMetadata;
10+
11+
use OCA\Libresign\Service\Policy\Model\PolicyContext;
12+
use OCA\Libresign\Service\Policy\Provider\CollectMetadata\CollectMetadataPolicy;
13+
use PHPUnit\Framework\TestCase;
14+
15+
final class CollectMetadataPolicyTest extends TestCase {
16+
public function testProviderBuildsCollectMetadataDefinition(): void {
17+
$provider = new CollectMetadataPolicy();
18+
$this->assertSame([CollectMetadataPolicy::KEY], $provider->keys());
19+
$definition = $provider->get(CollectMetadataPolicy::KEY);
20+
21+
$this->assertSame(CollectMetadataPolicy::KEY, $definition->key());
22+
$this->assertFalse($definition->defaultSystemValue());
23+
$this->assertSame([false, true], $definition->allowedValues(new PolicyContext()));
24+
}
25+
26+
public function testProviderNormalizesCollectMetadataBooleanInputs(): void {
27+
$provider = new CollectMetadataPolicy();
28+
$definition = $provider->get(CollectMetadataPolicy::KEY);
29+
30+
$this->assertTrue($definition->normalizeValue('1'));
31+
$this->assertTrue($definition->normalizeValue('true'));
32+
$this->assertFalse($definition->normalizeValue('0'));
33+
$this->assertFalse($definition->normalizeValue('false'));
34+
$this->assertFalse($definition->normalizeValue('unexpected-value'));
35+
}
36+
}

0 commit comments

Comments
 (0)