From 97b722f97def3de43bee65f6119a42c8128fc233 Mon Sep 17 00:00:00 2001 From: Guilhem Niot Date: Sat, 6 Oct 2018 14:42:47 +0200 Subject: [PATCH] Last fixes --- DependencyInjection/NelmioApiDocExtension.php | 2 +- .../DependencyInjection/ConfigurationTest.php | 6 ++-- Tests/Functional/FunctionalTest.php | 3 +- Tests/Functional/SwaggerUiTest.php | 1 + Tests/Functional/TestKernel.php | 31 +------------------ Tests/Functional/WebTestCase.php | 4 +-- 6 files changed, 10 insertions(+), 37 deletions(-) diff --git a/DependencyInjection/NelmioApiDocExtension.php b/DependencyInjection/NelmioApiDocExtension.php index 7a3c23b..0bcb69d 100644 --- a/DependencyInjection/NelmioApiDocExtension.php +++ b/DependencyInjection/NelmioApiDocExtension.php @@ -65,7 +65,7 @@ final class NelmioApiDocExtension extends Extension implements PrependExtensionI $nameAliases = $this->findNameAliases($config['models']['names'], $area); $container->register(sprintf('nelmio_api_doc.generator.%s', $area), ApiDocGenerator::class) - ->setPublic(false) + ->setPublic(true) ->addMethodCall('setAlternativeNames', [$nameAliases]) ->setArguments([ new TaggedIteratorArgument(sprintf('nelmio_api_doc.describer.%s', $area)), diff --git a/Tests/DependencyInjection/ConfigurationTest.php b/Tests/DependencyInjection/ConfigurationTest.php index 9297412..76d67f5 100644 --- a/Tests/DependencyInjection/ConfigurationTest.php +++ b/Tests/DependencyInjection/ConfigurationTest.php @@ -29,9 +29,9 @@ class ConfigurationTest extends TestCase { $processor = new Processor(); $config = $processor->processConfiguration(new Configuration(), [['areas' => $areas = [ - 'default' => ['path_patterns' => ['/foo'], 'documentation' => []], - 'internal' => ['path_patterns' => ['/internal'], 'host_patterns' => ['^swagger\.']], - 'commercial' => ['path_patterns' => ['/internal'], 'host_patterns' => []], + 'default' => ['path_patterns' => ['/foo'], 'host_patterns' => [], 'documentation' => []], + 'internal' => ['path_patterns' => ['/internal'], 'host_patterns' => ['^swagger\.'], 'documentation' => []], + 'commercial' => ['path_patterns' => ['/internal'], 'host_patterns' => [], 'documentation' => []], ]]]); $this->assertSame($areas, $config['areas']); diff --git a/Tests/Functional/FunctionalTest.php b/Tests/Functional/FunctionalTest.php index 97823e4..dcb6453 100644 --- a/Tests/Functional/FunctionalTest.php +++ b/Tests/Functional/FunctionalTest.php @@ -19,7 +19,8 @@ class FunctionalTest extends WebTestCase { public function testConfiguredDocumentation() { - $this->assertEquals('My Test App', $this->getSwaggerDefinition()->getInfo()->getTitle()); + $this->assertEquals('My Default App', $this->getSwaggerDefinition()->getInfo()->getTitle()); + $this->assertEquals('My Test App', $this->getSwaggerDefinition('test')->getInfo()->getTitle()); } public function testUndocumentedAction() diff --git a/Tests/Functional/SwaggerUiTest.php b/Tests/Functional/SwaggerUiTest.php index 798980d..67f97a9 100644 --- a/Tests/Functional/SwaggerUiTest.php +++ b/Tests/Functional/SwaggerUiTest.php @@ -41,6 +41,7 @@ class SwaggerUiTest extends WebTestCase yield ['/docs', 'default', $expected]; // Api-platform documentation + $expected['info']['title'] = 'My Test App'; $expected['paths'] = [ '/api/dummies' => $expected['paths']['/api/dummies'], '/api/foo' => $expected['paths']['/api/foo'], diff --git a/Tests/Functional/TestKernel.php b/Tests/Functional/TestKernel.php index 2d687c6..133cb57 100644 --- a/Tests/Functional/TestKernel.php +++ b/Tests/Functional/TestKernel.php @@ -119,7 +119,7 @@ class TestKernel extends Kernel $c->loadFromExtension('nelmio_api_doc', [ 'documentation' => [ 'info' => [ - 'title' => 'My Test App', + 'title' => 'My Default App', ], 'definitions' => [ 'Test' => [ @@ -138,23 +138,6 @@ class TestKernel extends Kernel 'default' => [ 'path_patterns' => ['^/api(?!/admin)'], 'host_patterns' => ['^api\.'], - 'documentation' => [ - 'info' => [ - 'title' => 'My Test App', - ], - 'definitions' => [ - 'Test' => [ - 'type' => 'string', - ], - ], - 'parameters' => [ - 'test' => [ - 'name' => 'id', - 'in' => 'path', - 'required' => true, - ], - ], - ], ], 'test' => [ 'path_patterns' => ['^/test'], @@ -163,18 +146,6 @@ class TestKernel extends Kernel 'info' => [ 'title' => 'My Test App', ], - 'definitions' => [ - 'Test' => [ - 'type' => 'string', - ], - ], - 'parameters' => [ - 'test' => [ - 'name' => 'id', - 'in' => 'path', - 'required' => true, - ], - ], ], ], ], diff --git a/Tests/Functional/WebTestCase.php b/Tests/Functional/WebTestCase.php index 045a7b1..14c2e5d 100644 --- a/Tests/Functional/WebTestCase.php +++ b/Tests/Functional/WebTestCase.php @@ -22,11 +22,11 @@ class WebTestCase extends BaseWebTestCase return new TestKernel(); } - protected function getSwaggerDefinition() + protected function getSwaggerDefinition($area = 'default') { static::createClient([], ['HTTP_HOST' => 'api.example.com']); - return static::$kernel->getContainer()->get('nelmio_api_doc.generator')->generate(); + return static::$kernel->getContainer()->get(sprintf('nelmio_api_doc.generator.%s', $area))->generate(); } protected function getModel($name): Schema