Skip to content

Commit 8f6fe5b

Browse files
author
olysenko
committed
MAGETWO-63737: [FT] Analytics Subscription Tests are failing on CI
1 parent 444f226 commit 8f6fe5b

File tree

7 files changed

+213
-23
lines changed

7 files changed

+213
-23
lines changed

dev/tests/functional/tests/app/Magento/Analytics/Test/Constraint/AssertConfigAnalyticsDisabled.php

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,25 +18,28 @@ class AssertConfigAnalyticsDisabled extends AbstractConstraint
1818
/**
1919
* Assert Analytics is disabled in Stores > Configuration > General > Analytics menu.
2020
*
21+
* @param ConfigAnalytics $configAnalytics
2122
* @param Dashboard $dashboard
2223
* @param SystemConfigEdit $systemConfigPage
23-
* @param ConfigAnalytics $configAnalytics
2424
* @return void
2525
*/
2626
public function processAssert(
27+
ConfigAnalytics $configAnalytics,
2728
Dashboard $dashboard,
28-
SystemConfigEdit $systemConfigPage,
29-
ConfigAnalytics $configAnalytics
29+
SystemConfigEdit $systemConfigPage
3030
) {
31-
$dashboard->open();
32-
$dashboard->getMenuBlock()->navigate('Stores > Configuration');
33-
$systemConfigPage->getForm()->getGroup('analytics', 'general');
31+
$this->objectManager->create(
32+
\Magento\Analytics\Test\TestStep\OpenAnalyticsConfigStep::class,
33+
[
34+
'dashboard' => $dashboard,
35+
'systemConfigPage' => $systemConfigPage
36+
]
37+
)->run();
3438

3539
\PHPUnit_Framework_Assert::assertFalse(
3640
(bool)$configAnalytics->getAnalyticsForm()->isAnalyticsEnabled(),
3741
'Magento Analytics is not disabled'
3842
);
39-
4043
\PHPUnit_Framework_Assert::assertEquals(
4144
$configAnalytics->getAnalyticsForm()->getAnalyticsStatus(),
4245
'Subscription status: Disabled',
@@ -51,6 +54,7 @@ public function processAssert(
5154
*/
5255
public function toString()
5356
{
54-
return 'Magento Analytics is disabled in Stores > Configuration > General > Analytics > General menu.';
57+
return 'Magento Analytics is disabled in Stores > Configuration > General > Analytics > General menu
58+
and has disabled status';
5559
}
5660
}

dev/tests/functional/tests/app/Magento/Analytics/Test/Constraint/AssertConfigAnalyticsEnabled.php

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,24 @@ class AssertConfigAnalyticsEnabled extends AbstractConstraint
1818
/**
1919
* Assert Analytics is enabled in Stores > Configuration > General > Analytics menu.
2020
*
21+
* @param ConfigAnalytics $configAnalytics
2122
* @param Dashboard $dashboard
2223
* @param SystemConfigEdit $systemConfigPage
23-
* @param ConfigAnalytics $configAnalytics
24+
* @return void
2425
*/
2526
public function processAssert(
27+
ConfigAnalytics $configAnalytics,
2628
Dashboard $dashboard,
27-
SystemConfigEdit $systemConfigPage,
28-
ConfigAnalytics $configAnalytics
29+
SystemConfigEdit $systemConfigPage
2930
) {
30-
$dashboard->open();
31-
$dashboard->getMenuBlock()->navigate('Stores > Configuration');
32-
$systemConfigPage->getForm()->getGroup('analytics', 'general');
33-
34-
\PHPUnit_Framework_Assert::assertFalse(
31+
$this->objectManager->create(
32+
\Magento\Analytics\Test\TestStep\OpenAnalyticsConfigStep::class,
33+
[
34+
'dashboard' => $dashboard,
35+
'systemConfigPage' => $systemConfigPage
36+
]
37+
)->run();
38+
\PHPUnit_Framework_Assert::assertTrue(
3539
(bool)$configAnalytics->getAnalyticsForm()->isAnalyticsEnabled(),
3640
'Magento Analytics is not enabled'
3741
);
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
<?php
2+
/**
3+
* Copyright © 2013-2017 Magento. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
namespace Magento\Analytics\Test\Constraint;
7+
8+
use Magento\Mtf\Constraint\AbstractConstraint;
9+
use Magento\Analytics\Test\Page\Adminhtml\ConfigAnalytics;
10+
use Magento\Backend\Test\Page\Adminhtml\Dashboard;
11+
use Magento\Backend\Test\Page\Adminhtml\SystemConfigEdit;
12+
13+
/**
14+
* Assert sending data to the Analytics is restored.
15+
*/
16+
class AssertConfigAnalyticsRestored extends AbstractConstraint
17+
{
18+
/**
19+
* Assert Analytics sending data to the Analytics is restored.
20+
*
21+
* @param ConfigAnalytics $configAnalytics
22+
* @param Dashboard $dashboard
23+
* @param SystemConfigEdit $systemConfigPage
24+
* @param string $vertical
25+
* @return void
26+
*/
27+
public function processAssert(
28+
ConfigAnalytics $configAnalytics,
29+
Dashboard $dashboard,
30+
SystemConfigEdit $systemConfigPage,
31+
$vertical
32+
) {
33+
$this->objectManager->create(
34+
\Magento\Analytics\Test\TestStep\OpenAnalyticsConfigStep::class,
35+
[
36+
'dashboard' => $dashboard,
37+
'systemConfigPage' => $systemConfigPage
38+
]
39+
)->run();
40+
41+
$configAnalytics->getAnalyticsForm()->enableAnalytics();
42+
$configAnalytics->getAnalyticsForm()->setAnalyticsVertical($vertical);
43+
$configAnalytics->getAnalyticsForm()->saveConfig();
44+
45+
\PHPUnit_Framework_Assert::assertTrue(
46+
$systemConfigPage->getMessagesBlock()->assertSuccessMessage(),
47+
'Magento Analytics settings are not saved'
48+
);
49+
}
50+
51+
/**
52+
* Returns a string representation of the object.
53+
*
54+
* @return string
55+
*/
56+
public function toString()
57+
{
58+
return 'Magento Analytics setting are saved';
59+
}
60+
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
<?php
2+
/**
3+
* Copyright © 2013-2017 Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
namespace Magento\Analytics\Test\Constraint;
7+
8+
use Magento\Backend\Test\Page\Adminhtml\Dashboard;
9+
use Magento\Mtf\Constraint\AbstractConstraint;
10+
11+
/**
12+
* Verify that admin user chose to skip subscription in Analytics pop-up.
13+
*/
14+
class AssertSkipSubscriptionPopup extends AbstractConstraint
15+
{
16+
/**
17+
* Verify that admin user chose to skip subscription in Analytics pop-up.
18+
*
19+
* @param Dashboard $dashboard
20+
* @return void
21+
*/
22+
public function processAssert(Dashboard $dashboard)
23+
{
24+
$dashboard->open();
25+
$dashboard->getSubscriptionBlock()->disableCheckbox();
26+
$dashboard->getModalBlock()->dismissWarning();
27+
\PHPUnit_Framework_Assert::assertFalse(
28+
$dashboard->getSubscriptionBlock()->isVisible(),
29+
'Subscription pop-up was not skipped'
30+
);
31+
}
32+
33+
/**
34+
* Returns success message if equals to expected message.
35+
*
36+
* @return string
37+
*/
38+
public function toString()
39+
{
40+
return 'Subscription pop-up was skipped';
41+
}
42+
}
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
<?php
2+
/**
3+
* Copyright © 2013-2017 Magento. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
namespace Magento\Analytics\Test\TestStep;
7+
8+
use Magento\Backend\Test\Page\Adminhtml\Dashboard;
9+
use Magento\Mtf\TestStep\TestStepInterface;
10+
use Magento\Backend\Test\Page\Adminhtml\SystemConfigEdit;
11+
12+
/**
13+
* Steps:
14+
* 1. Log in to backend.
15+
* 2. Navigate to Stores->Configuration->General->Analytics->General menu.
16+
*/
17+
class OpenAnalyticsConfigStep implements TestStepInterface
18+
{
19+
/**
20+
* Dashboard page.
21+
*
22+
* @var Dashboard
23+
*/
24+
private $dashboard;
25+
26+
/**
27+
* System Config page.
28+
*
29+
* @var SystemConfigEdit
30+
*/
31+
private $systemConfigPage;
32+
33+
/**
34+
* AcceptSubscriptionStep constructor.
35+
*
36+
* @param Dashboard $dashboard
37+
* @param SystemConfigEdit $systemConfigPage
38+
*/
39+
public function __construct(Dashboard $dashboard, SystemConfigEdit $systemConfigPage)
40+
{
41+
$this->dashboard = $dashboard;
42+
$this->systemConfigPage = $systemConfigPage;
43+
}
44+
45+
/**
46+
* Navigate to Stores->Configuration->General->Analytics->General menu.
47+
*
48+
* @return void
49+
*/
50+
public function run()
51+
{
52+
$this->dashboard->open();
53+
$this->dashboard->getMenuBlock()->navigate('Stores > Configuration');
54+
$this->systemConfigPage->getForm()->getGroup('analytics', 'general');
55+
}
56+
}

dev/tests/functional/tests/app/Magento/Analytics/Test/TestStep/RestoreConfigAnalyticsStep.php

Lines changed: 27 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,10 @@
55
*/
66
namespace Magento\Analytics\Test\TestStep;
77

8-
use Magento\Analytics\Test\Page\Adminhtml\ConfigAnalytics;
8+
use Magento\Backend\Test\Page\Adminhtml\Dashboard;
99
use Magento\Mtf\TestStep\TestStepInterface;
10+
use Magento\Backend\Test\Page\Adminhtml\SystemConfigEdit;
11+
use Magento\Analytics\Test\Page\Adminhtml\ConfigAnalytics;
1012

1113
/**
1214
* Navigate to menu Stores > Configuration > General > Analytics > General
@@ -22,12 +24,27 @@ class RestoreConfigAnalyticsStep implements TestStepInterface
2224
private $configAnalytics;
2325

2426
/**
25-
* @param ConfigAnalytics $configAnalytics
27+
* Dashboard page.
28+
*
29+
* @var Dashboard
2630
*/
27-
public function __construct(
28-
ConfigAnalytics $configAnalytics
29-
) {
30-
$this->configAnalytics = $configAnalytics;
31+
private $dashboard;
32+
33+
/**
34+
* System Config page.
35+
*
36+
* @var SystemConfigEdit
37+
*/
38+
private $systemConfigPage;
39+
40+
/**
41+
* @param Dashboard $dashboard
42+
* @param SystemConfigEdit $systemConfigPage
43+
*/
44+
public function __construct(Dashboard $dashboard, SystemConfigEdit $systemConfigPage)
45+
{
46+
$this->dashboard = $dashboard;
47+
$this->systemConfigPage = $systemConfigPage;
3148
}
3249

3350
/**
@@ -37,8 +54,11 @@ public function __construct(
3754
*/
3855
public function run()
3956
{
40-
$this->configAnalytics->open();
57+
$this->dashboard->open();
58+
$this->dashboard->getMenuBlock()->navigate('Stores > Configuration');
59+
$this->systemConfigPage->getForm()->getGroup('analytics', 'general');
4160
$this->configAnalytics->getAnalyticsForm()->enableAnalytics();
4261
$this->configAnalytics->getAnalyticsForm()->saveConfig();
62+
$this->dashboard->getMessagesBlock()->assertSuccessMessage();
4363
}
4464
}

dev/tests/functional/tests/app/Magento/Install/Test/TestCase/InstallTest.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,12 @@
1010
<variation name="InstallTestVariation1" summary="Install with custom admin path">
1111
<data name="user/dataset" xsi:type="string">default</data>
1212
<data name="install/admin" xsi:type="string">custom</data>
13+
<data name="vertical" xsi:type="string">Apps and Games</data>
1314
<constraint name="Magento\Install\Test\Constraint\AssertSuccessInstall" />
1415
<constraint name="Magento\User\Test\Constraint\AssertUserSuccessLogin" />
16+
<constraint name="Magento\Analytics\Test\Constraint\AssertSkipSubscriptionPopup" />
17+
<constraint name="Magento\Analytics\Test\Constraint\AssertConfigAnalyticsRestored" />
18+
<constraint name="Magento\Analytics\Test\Constraint\AssertConfigAnalyticsEnabled" />
1519
</variation>
1620
<variation name="InstallTestVariation2" summary="Install with custom encryption key and changed currency and locale">
1721
<data name="user/dataset" xsi:type="string">default</data>

0 commit comments

Comments
 (0)