Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
InstallGrid.php
Go to the documentation of this file.
1 <?php
8 
9 use Magento\Mtf\Client\Locator;
10 use Magento\Setup\Test\Fixture\Extension;
11 
16 {
22  protected $extensionInstall = "//tr[td/*[contains(text(), '%s')]]//*[contains(@class, 'action-wrap')]//button";
23 
29  protected $extensionSelectVersion = "//tr[td/*[contains(text(), '%s')]]//*[contains(@id, 'selectedVersion')]";
30 
36  protected $installAllButton = "[ng-click*='installAll']";
37 
44  public function install(Extension $extension)
45  {
46  $select = $this->_rootElement->find(
47  sprintf($this->extensionSelectVersion, $extension->getExtensionName()),
48  Locator::SELECTOR_XPATH,
49  'strictselect'
50  );
51 
52  if ($select->isVisible()) {
53  $select->setValue('Version ' . $extension->getVersion());
54  }
55 
56  $this->_rootElement->find(
57  sprintf($this->extensionInstall, $extension->getExtensionName()),
58  Locator::SELECTOR_XPATH
59  )->click();
60  }
61 
67  public function clickInstallAll()
68  {
69  $this->_rootElement->find($this->installAllButton, Locator::SELECTOR_CSS)->click();
70  }
71 }