![]() 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/api-functional/testsuite/Magento/Analytics/Api/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Analytics\Api; use Magento\Analytics\Model\FileInfoManager; use Magento\Framework\UrlInterface; use Magento\Framework\Webapi\Rest\Request; use Magento\Store\Model\StoreManagerInterface; use Magento\TestFramework\Helper\Bootstrap; use Magento\TestFramework\TestCase\WebapiAbstract; /** * Class LinkProviderTest. * * Checks that api for providing link to encrypted archive works. */ class LinkProviderTest extends WebapiAbstract { const SERVICE_VERSION = 'V1'; const SERVICE_NAME = 'analyticsLinkProviderV1'; const RESOURCE_PATH = '/V1/analytics/link'; /** * @var \Magento\TestFramework\ObjectManager */ protected $objectManager; /** * @return void */ protected function setUp(): void { $this->objectManager = Bootstrap::getObjectManager(); } /** * @magentoApiDataFixture Magento/Analytics/_files/create_link.php */ public function testGetAll() { $objectManager = Bootstrap::getObjectManager(); /** * @var $fileInfoManager FileInfoManager */ $fileInfoManager = $objectManager->create(FileInfoManager::class); $storeManager = $objectManager->create(StoreManagerInterface::class); $fileInfo = $fileInfoManager->load(); $serviceInfo = [ 'rest' => [ 'resourcePath' => static::RESOURCE_PATH, 'httpMethod' => Request::HTTP_METHOD_GET, ], 'soap' => [ 'service' => static::SERVICE_NAME, 'serviceVersion' => static::SERVICE_VERSION, 'operation' => static::SERVICE_NAME . 'Get', ], ]; if (!$this->isTestBaseUrlSecure()) { try { $this->_webApiCall($serviceInfo); } catch (\Exception $e) { $this->assertStringContainsString( 'Operation allowed only in HTTPS', $e->getMessage() ); return; } $this->fail("Exception 'Operation allowed only in HTTPS' should be thrown"); } else { $response = $this->_webApiCall($serviceInfo); $this->assertCount(2, $response); $this->assertEquals( base64_encode($fileInfo->getInitializationVector()), $response['initialization_vector'] ); $this->assertEquals( $storeManager->getStore()->getBaseUrl( UrlInterface::URL_TYPE_MEDIA ) . $fileInfo->getPath(), $response['url'] ); } } /** * @return bool */ private function isTestBaseUrlSecure() { return strpos(TESTS_BASE_URL, 'https://') !== false; } }