Skip to content

Commit ca6c384

Browse files
authored
Merge pull request #134 from magento-commerce/MQE-2669_alex
MQE-2669: Seprated a run:failed command to generate:failed and run:fa…
2 parents 9fb3fdc + 68e0ee8 commit ca6c384

File tree

82 files changed

+620
-57
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+620
-57
lines changed
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
<?php
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
7+
namespace tests\unit\Magento\FunctionalTestFramework\Console;
8+
9+
use Magento\FunctionalTestingFramework\Console\RunTestFailedCommand;
10+
11+
class RunTestFailedCommandTest extends BaseGenerateCommandTest
12+
{
13+
/**
14+
* @throws \ReflectionException
15+
*/
16+
public function testMultipleTests(): void
17+
{
18+
$testFailedFile = [
19+
"tests/functional/tests/MFTF/_generated/default/SingleTestNoSuiteTest.php:SingleTestNoSuiteTest",
20+
"tests/functional/tests/MFTF/_generated/SomeSpecificSuite/FirstTestSuiteTest.php:SingleTestSuiteTest",
21+
"tests/functional/tests/MFTF/_generated/SomeSpecificSuite/SecondTestNoSuiteTest.php:SingleTestNoSuiteTest",
22+
"tests/functional/tests/MFTF/_generated/SomeOtherSuite/SecondTestNoSuiteTest.php:SingleTestNoSuiteTest",
23+
];
24+
25+
$expectedResult = [
26+
"tests/functional/tests/MFTF/_generated/default/SingleTestNoSuiteTest.php",
27+
"-g SomeSpecificSuite",
28+
"-g SomeOtherSuite",
29+
];
30+
31+
$runFailed = new RunTestFailedCommand('run:failed');
32+
$filter = $this->invokePrivateMethod($runFailed, 'filterTestsForExecution', [$testFailedFile]);
33+
$this->assertEquals($expectedResult, $filter);
34+
}
35+
36+
/**
37+
* Invoking private method to be able to test it.
38+
* NOTE: Bad practice don't repeat it.
39+
*
40+
* @param $object
41+
* @param $methodName
42+
* @param array $parameters
43+
* @return mixed
44+
* @throws \ReflectionException
45+
*/
46+
private function invokePrivateMethod(&$object, $methodName, array $parameters = [])
47+
{
48+
$reflection = new \ReflectionClass(get_class($object));
49+
$method = $reflection->getMethod($methodName);
50+
$method->setAccessible(true);
51+
return $method->invokeArgs($object, $parameters);
52+
}
53+
}

dev/tests/verification/Resources/ActionGroupContainsStepKeyInArgText.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,10 @@ class ActionGroupContainsStepKeyInArgTextCest
4141
$I->see("arg1", ".selector"); // stepKey: arg1ActionGroup
4242
$I->comment("Exiting Action Group [actionGroup] actionGroupContainsStepKeyInArgValue");
4343
}
44+
45+
public function _passed(AcceptanceTester $I)
46+
{
47+
// Deleting itself so that we can rerun only failed tests.
48+
unlink(__FILE__);
49+
}
4450
}

dev/tests/verification/Resources/ActionGroupMergedViaInsertAfter.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,10 @@ class ActionGroupMergedViaInsertAfterCest
3535
$I->fillField("#baz", "baz"); // stepKey: fillField3Keyone
3636
$I->comment("Exiting Action Group [keyone] FunctionalActionGroupForMassMergeAfter");
3737
}
38+
39+
public function _passed(AcceptanceTester $I)
40+
{
41+
// Deleting itself so that we can rerun only failed tests.
42+
unlink(__FILE__);
43+
}
3844
}

dev/tests/verification/Resources/ActionGroupMergedViaInsertBefore.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,10 @@ class ActionGroupMergedViaInsertBeforeCest
3535
$I->fillField("#baz", "baz"); // stepKey: fillField3Keyone
3636
$I->comment("Exiting Action Group [keyone] FunctionalActionGroupForMassMergeBefore");
3737
}
38+
39+
public function _passed(AcceptanceTester $I)
40+
{
41+
// Deleting itself so that we can rerun only failed tests.
42+
unlink(__FILE__);
43+
}
3844
}

dev/tests/verification/Resources/ActionGroupReturningValueTest.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,4 +72,10 @@ class ActionGroupReturningValueTestCest
7272
$I->see($actionGroupWithReturnValue1, "#element .{$actionGroupWithReturnValue1}"); // stepKey: see1ActionGroupWithStringUsage1
7373
$I->comment("Exiting Action Group [actionGroupWithStringUsage1] actionGroupWithStringUsage");
7474
}
75+
76+
public function _passed(AcceptanceTester $I)
77+
{
78+
// Deleting itself so that we can rerun only failed tests.
79+
unlink(__FILE__);
80+
}
7581
}

dev/tests/verification/Resources/ActionGroupToExtend.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,10 @@ class ActionGroupToExtendCest
3131
$I->assertCount(99, $grabProductsActionGroup); // stepKey: assertCountActionGroup
3232
$I->comment("Exiting Action Group [actionGroup] ActionGroupToExtend");
3333
}
34+
35+
public function _passed(AcceptanceTester $I)
36+
{
37+
// Deleting itself so that we can rerun only failed tests.
38+
unlink(__FILE__);
39+
}
3440
}

dev/tests/verification/Resources/ActionGroupUsingCreateData.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,4 +39,10 @@ class ActionGroupUsingCreateDataCest
3939
public function ActionGroupUsingCreateData(AcceptanceTester $I)
4040
{
4141
}
42+
43+
public function _passed(AcceptanceTester $I)
44+
{
45+
// Deleting itself so that we can rerun only failed tests.
46+
unlink(__FILE__);
47+
}
4248
}

dev/tests/verification/Resources/ActionGroupUsingNestedArgument.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,10 @@ class ActionGroupUsingNestedArgumentCest
3131
$I->assertCount(99, $grabProductsActionGroup); // stepKey: assertCountActionGroup
3232
$I->comment("Exiting Action Group [actionGroup] ActionGroupToExtend");
3333
}
34+
35+
public function _passed(AcceptanceTester $I)
36+
{
37+
// Deleting itself so that we can rerun only failed tests.
38+
unlink(__FILE__);
39+
}
3440
}

dev/tests/verification/Resources/ActionGroupWithDataOverrideTest.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,4 +73,10 @@ class ActionGroupWithDataOverrideTestCest
7373
$I->comment("Exiting Action Group [actionGroupWithDataOverride1] FunctionalActionGroupWithData");
7474
$I->click("loginButton"); // stepKey: step6
7575
}
76+
77+
public function _passed(AcceptanceTester $I)
78+
{
79+
// Deleting itself so that we can rerun only failed tests.
80+
unlink(__FILE__);
81+
}
7682
}

dev/tests/verification/Resources/ActionGroupWithDataTest.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,4 +73,10 @@ class ActionGroupWithDataTestCest
7373
$I->comment("Exiting Action Group [actionGroupWithData1] FunctionalActionGroupWithData");
7474
$I->click("loginButton"); // stepKey: step6
7575
}
76+
77+
public function _passed(AcceptanceTester $I)
78+
{
79+
// Deleting itself so that we can rerun only failed tests.
80+
unlink(__FILE__);
81+
}
7682
}

0 commit comments

Comments
 (0)