9 use Magento\Mtf\Client\Locator;
10 use Magento\Mtf\Client\BrowserInterface;
20 const MCA =
'swagger/';
53 $this->url = $_ENV[
'app_frontend_url'] .
self::MCA;
63 $this->openSwaggerUrl();
64 $this->waitForPageToLoad();
74 $this->browser->closeWindow();
86 return $this->browser->find($selector, $strategy)->isVisible();
100 $serviceSelector =
'#operations-tag-%s';
104 $endpointSelector =
'//H4[@id=\'operations-tag-%s\']/following-sibling::DIV';
105 $serviceSelector = sprintf($serviceSelector, $serviceName);
106 $endpointSelector = sprintf($endpointSelector, $serviceName);
108 $this->browser->find($serviceSelector, Locator::SELECTOR_CSS)->click();
123 $serviceSelector =
'#operations-tag-%s';
127 $serviceSelector = sprintf($serviceSelector, $serviceName);
128 $this->browser->find($serviceSelector, Locator::SELECTOR_CSS)->click();
144 $endpointRefSelector =
'#operations-%s-%s%s > div';
148 $endpointRefSelector = sprintf($endpointRefSelector, $serviceName, $serviceName, $endpoint);
149 $this->browser->find($endpointRefSelector, Locator::SELECTOR_CSS)->click();
166 $endpointRefSelector =
'#operations-%s-%s%s > div';
171 $endpointRefSelector = sprintf($endpointRefSelector, $serviceName, $serviceName, $endpoint);
172 $this->browser->find($endpointRefSelector, Locator::SELECTOR_CSS)->click();
180 private function waitForPageToLoad()
182 $this->waitForElementVisible($this->titleSelector);
192 private function waitForElementVisible($selector, $strategy = Locator::SELECTOR_CSS)
196 function () use (
$browser, $selector, $strategy) {
198 return $element->isVisible() ? true :
null;
211 private function openSwaggerUrl()
221 }
catch (\PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
expandServiceContent($serviceName)
__construct(BrowserInterface $browser)
closeServiceContent($serviceName)
closeEndpointContent($serviceName, $endpoint)
expandEndpointContent($serviceName, $endpoint)
isElementVisible($selector, $strategy=Locator::SELECTOR_CSS)