Remote Context::root() usage

This commit is contained in:
Guilhem Niot 2022-04-30 20:13:55 +02:00
parent 5d747aefc3
commit cb03d99c97
2 changed files with 12 additions and 1 deletions

View File

@ -13,6 +13,7 @@ namespace Nelmio\ApiDocBundle\Tests\Functional;
use Nelmio\ApiDocBundle\OpenApiPhp\Util;
use OpenApi\Analysis;
use OpenApi\Context;
class SwaggerPHPApiComplianceTest extends WebTestCase
{
@ -25,12 +26,21 @@ class SwaggerPHPApiComplianceTest extends WebTestCase
public function testAllContextsHaveSameRoot()
{
// zircote/swagger-php < 4.2 support
$getRootContext = \Closure::bind(function (Context $context) use (&$getRootContext) {
if (null !== $context->_parent) {
return $getRootContext($context->_parent);
}
return $context;
}, null, Context::class);
$openApi = $this->getOpenApiDefinition();
$root = $openApi->_context;
$counter = 0;
foreach ((new Analysis([$openApi], Util::createContext()))->annotations as $annotation) {
$this->assertSame($annotation->_context->root(), $root);
$this->assertSame($getRootContext($annotation->_context), $root);
}
}
}

View File

@ -823,6 +823,7 @@ class UtilTest extends TestCase
public function assertContextIsConnectedToRootContext(Context $context)
{
// zircote/swagger-php < 4.2 support
$getRootContext = \Closure::bind(function (Context $context) use (&$getRootContext) {
if (null !== $context->_parent) {
return $getRootContext($context->_parent);