Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
AssertSuccessInstall.php
Go to the documentation of this file.
1 <?php
8 
10 use Magento\Install\Test\Page\Install;
11 use Magento\Mtf\Constraint\AbstractConstraint;
12 use Magento\Install\Test\Fixture\Install as InstallConfig;
13 
17 class AssertSuccessInstall extends AbstractConstraint
18 {
24  protected $adminFieldsList = [
25  ['pageData' => 'username', 'fixture' => 'username'],
26  ['pageData' => 'email', 'fixture' => 'email'],
27  ['pageData' => 'your_store_address', 'fixture' => 'baseUrl'],
28  ['pageData' => 'magento_admin_address', 'fixture' => 'admin']
29  ];
30 
36  protected $dbFieldsList = [
37  ['pageData' => 'database_name', 'fixture' => 'dbName'],
38  ['pageData' => 'username', 'fixture' => 'dbUser']
39  ];
40 
49  public function processAssert(Install $installPage, InstallConfig $installConfig, User $user)
50  {
51  //TODO Nginx server does't make redirect after installation (random fail)
52  sleep(5);
53  if ($installPage->getInstallBlock()->isInstallationCompleted()) {
54  return;
55  }
56  $adminData = $installPage->getInstallBlock()->getAdminInfo();
57  $dbData = $installPage->getInstallBlock()->getDbInfo();
58 
59  $allData = array_merge($user->getData(), $installConfig->getData());
60 
61  foreach ($installConfig->getData() as $key => $value) {
62  $allData[$key] = isset($value['value']) ? $value['value'] : $value;
63  }
64 
65  $allData['baseUrl'] = (isset($allData['https']) ? $allData['https'] : $allData['baseUrl']);
66  $allData['admin'] = $allData['baseUrl'] . $allData['admin'] . '/';
67 
68  $this->checkInstallData($allData, $adminData, $dbData);
69  }
70 
79  private function checkInstallData(array $allData, array $adminData, array $dbData)
80  {
81  foreach ($this->adminFieldsList as $field) {
82  \PHPUnit\Framework\Assert::assertEquals(
83  $allData[$field['fixture']],
84  $adminData[$field['pageData']],
85  'Wrong admin information is displayed.'
86  );
87  }
88  foreach ($this->dbFieldsList as $field) {
89  \PHPUnit\Framework\Assert::assertEquals(
90  $allData[$field['fixture']],
91  $dbData[$field['pageData']],
92  'Wrong database information is displayed.'
93  );
94  }
95  }
96 
102  public function toString()
103  {
104  return "Install successfully finished.";
105  }
106 }
processAssert(Install $installPage, InstallConfig $installConfig, User $user)
$value
Definition: gender.phtml:16
$user
Definition: dummy_user.php:13