![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/dev/tests/integration/testsuite/Magento/Webapi/ |
<?php /** * Test services for name collisions. * * Let we have two service interfaces called Foo\Bar\Service\SomeBazV1Interface and Foo\Bar\Service\Some\BazV1Interface. * Given current name generation logic both are going to be translated to BarSomeBazV1. This test checks such things * are not going to happen. * * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Webapi; use Magento\Webapi\Model\Config\Converter; class ServiceNameCollisionTest extends \PHPUnit\Framework\TestCase { /** * Test there are no collisions between service names. * * @see \Magento\Webapi\Model\Soap\Config::getServiceName() * @SuppressWarnings(PHPMD.UnusedLocalVariable) */ public function testServiceNameCollisions() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); /** @var \Magento\Webapi\Model\ServiceMetadata $serviceMetadata */ $serviceMetadata = $objectManager->get(\Magento\Webapi\Model\ServiceMetadata::class); /** @var \Magento\Webapi\Model\Config $webapiConfig */ $webapiConfig = $objectManager->get(\Magento\Webapi\Model\Config::class); $serviceNames = []; foreach ($webapiConfig->getServices()[Converter::KEY_SERVICES] as $serviceClassName => $serviceVersionData) { foreach ($serviceVersionData as $version => $serviceData) { $newServiceName = $serviceMetadata->getServiceName($serviceClassName, $version); $this->assertFalse(in_array($newServiceName, $serviceNames)); $serviceNames[] = $newServiceName; } } } }