aboutsummaryrefslogtreecommitdiffstats
path: root/tests/lib/Config/TestLexicon_E.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/Config/TestLexicon_E.php')
-rw-r--r--tests/lib/Config/TestLexicon_E.php49
1 files changed, 49 insertions, 0 deletions
diff --git a/tests/lib/Config/TestLexicon_E.php b/tests/lib/Config/TestLexicon_E.php
new file mode 100644
index 00000000000..ccdc8cdd037
--- /dev/null
+++ b/tests/lib/Config/TestLexicon_E.php
@@ -0,0 +1,49 @@
+<?php
+
+declare(strict_types=1);
+/**
+ * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-only
+ */
+
+namespace Tests\lib\Config;
+
+use OCP\Config\IUserConfig;
+use OCP\Config\Lexicon\Entry;
+use OCP\Config\Lexicon\ILexicon;
+use OCP\Config\Lexicon\Preset;
+use OCP\Config\Lexicon\Strictness;
+use OCP\Config\ValueType;
+use OCP\IAppConfig;
+
+class TestLexicon_E implements ILexicon {
+ public const APPID = 'lexicon_test_e';
+
+ public function getStrictness(): Strictness {
+ return Strictness::EXCEPTION;
+ }
+
+ public function getAppConfigs(): array {
+ return [
+ new Entry('key1', ValueType::STRING, 'abcde', 'test key', true, IAppConfig::FLAG_SENSITIVE),
+ new Entry('key2', ValueType::INT, 12345, 'test key', false),
+ new Entry('key3', ValueType::STRING, fn (Preset $p): string => match ($p) {
+ Preset::FAMILY => 'family',
+ Preset::CLUB, Preset::MEDIUM => 'club+medium',
+ default => 'none',
+ }, 'test key'),
+ ];
+ }
+
+ public function getUserConfigs(): array {
+ return [
+ new Entry('key1', ValueType::STRING, 'abcde', 'test key', true, IUserConfig::FLAG_SENSITIVE),
+ new Entry('key2', ValueType::INT, 12345, 'test key', false),
+ new Entry('key3', ValueType::STRING, fn (Preset $p): string => match ($p) {
+ Preset::FAMILY => 'family',
+ Preset::CLUB, Preset::MEDIUM => 'club+medium',
+ default => 'none',
+ }, 'test key'),
+ ];
+ }
+}