diff options
author | Joas Schilling <coding@schilljs.com> | 2021-05-25 12:07:35 +0300 |
---|---|---|
committer | Joas Schilling <coding@schilljs.com> | 2021-05-25 12:07:35 +0300 |
commit | be033e9f5c8e5a5974ab4691c5807bb519c5c53e (patch) | |
tree | 3bf4c9537c4ea9bbbcc5345a3c355029f29c42f9 /tests | |
parent | adfd6ae79eebbb85c1edeb254de2434940f995a1 (diff) |
Check that configs and capabilities are documented
Signed-off-by: Joas Schilling <coding@schilljs.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/php/CapabilitiesTest.php | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/tests/php/CapabilitiesTest.php b/tests/php/CapabilitiesTest.php index 1246cb9e0..5fc8741c7 100644 --- a/tests/php/CapabilitiesTest.php +++ b/tests/php/CapabilitiesTest.php @@ -192,6 +192,7 @@ class CapabilitiesTest extends TestCase { ]); $this->assertInstanceOf(IPublicCapability::class, $capabilities); + $data = $capabilities->getCapabilities(); $this->assertSame([ 'spreed' => [ 'features' => array_merge( @@ -216,7 +217,22 @@ class CapabilitiesTest extends TestCase { ], ], ], - ], $capabilities->getCapabilities()); + ], $data); + + foreach ($data['spreed']['features'] as $feature) { + $this->assertCapabilityIsDocumented("`$feature`"); + } + + foreach ($data['spreed']['config'] as $feature => $configs) { + foreach ($configs as $config => $data) { + $this->assertCapabilityIsDocumented("`config => $feature => $config`"); + } + } + } + + protected function assertCapabilityIsDocumented(string $capability): void { + $docs = file_get_contents(__DIR__ . '/../../docs/capabilities.md'); + self::assertStringContainsString($capability, $docs, 'Asserting that capability ' . $capability . ' is documented'); } public function testGetCapabilitiesUserDisallowed(): void { |