Skip to content

Commit cfb142b

Browse files
committed
MQE-779: Default Directory exists for tests not referenced in other suites
- Non-suite tests generate to _generate/default directory - Error is thrown if suite name = default - Manifest.txt and group directories generate under _generated - Verification tests updated MQE-799: Default Directory exists for tests not referenced in other suites - Updated phpDocs - Changed constructor for SingleRunTestManifest.php to call correct parameters for parent DefaultTestManifest and set singleRun config MQE-779: Default Directory exists for tests not referenced in other suites - Added underscore to namespacing for cests in TestGenerator - Removed unncessary manifest path setting in SingleRunManifest which is handled by parent constructor MQE-779: Default Directory exists for tests not referenced in other suites - Fixed static check failures MQE-779: Default Directory exists for tests not referenced in other suites - Updated namespace in verification tests to _default from default to match TestGenerator changes for same.
1 parent 88e6ac5 commit cfb142b

38 files changed

+71
-58
lines changed

dev/tests/verification/Resources/ActionGroupWithDataOverrideTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithDataTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithDefaultArgumentAndStringSelectorParam.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithMultipleParameterSelectorsFromDefaultArgument.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithNoArguments.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithNoDefaultTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithPassedArgumentAndStringSelectorParam.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithPersistedData.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithSimpleDataUsageFromDefaultArgument.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithSimpleDataUsageFromPassedArgument.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithSingleParameterSelectorFromDefaultArgument.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithSingleParameterSelectorFromPassedArgument.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithStepKeyReferences.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ActionGroupWithTopLevelPersistedData.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ArgumentWithSameNameAsElement.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/AssertTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/BasicActionGroupTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/BasicFunctionalTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/BasicMergeTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/CharacterReplacementTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/DataReplacementTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/HookActionsTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/LocatorFunctionTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/MergedActionGroupTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/MergedReferencesTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/MultipleActionGroupsTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/PageReplacementTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/ParameterArrayTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/PersistedReplacementTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/PersistenceCustomFieldsTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Resources/SectionReplacementTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?php
2-
namespace Magento\AcceptanceTest\_generated\Backend;
2+
namespace Magento\AcceptanceTest\_default\Backend;
33

44
use Magento\FunctionalTestingFramework\AcceptanceTester;
55
use Magento\FunctionalTestingFramework\DataGenerator\Handlers\DataObjectHandler;

dev/tests/verification/Tests/SuiteGenerationTest.php

+2-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
namespace tests\verification\Tests;
88

9+
use Magento\Framework\Module\Dir;
910
use Magento\FunctionalTestingFramework\Suite\SuiteGenerator;
1011
use Magento\FunctionalTestingFramework\Util\TestManifest;
1112
use Symfony\Component\Yaml\Yaml;
@@ -79,7 +80,7 @@ public function testSuiteGeneration1()
7980
DIRECTORY_SEPARATOR;
8081

8182
// Validate test manifest contents
82-
$actualManifest = $suiteResultBaseDir . 'testManifest.txt';
83+
$actualManifest = dirname($suiteResultBaseDir). DIRECTORY_SEPARATOR . 'testManifest.txt';
8384
$actualTestReferences = explode(PHP_EOL, file_get_contents($actualManifest));
8485

8586
for ($i = 0; $i < count($actualTestReferences); $i++) {

src/Magento/FunctionalTestingFramework/Suite/Util/SuiteObjectExtractor.php

+3
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,9 @@ public function parseSuiteDataIntoObjects($parsedSuiteData)
4949
// skip non array items parsed from suite (suite objects will always be arrays)
5050
continue;
5151
}
52+
if ($parsedSuite[self::NAME] == 'default') {
53+
throw new XmlException("A Suite can not have the name \"default\"");
54+
}
5255

5356
$suiteHooks = [];
5457

src/Magento/FunctionalTestingFramework/Util/Manifest/DefaultTestManifest.php

+5-5
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,13 @@ class DefaultTestManifest extends BaseTestManifest
2828

2929
/**
3030
* DefaultTestManifest constructor.
31-
* @param string $path
31+
* @param string $manifestPath
32+
* @param string $testPath
3233
*/
33-
public function __construct($path)
34+
public function __construct($manifestPath, $testPath)
3435
{
35-
$this->manifestPath = $path . DIRECTORY_SEPARATOR . 'testManifest.txt';
36-
parent::__construct($path, self::DEFAULT_CONFIG);
37-
36+
$this->manifestPath = $manifestPath . DIRECTORY_SEPARATOR . 'testManifest.txt';
37+
parent::__construct($testPath, self::DEFAULT_CONFIG);
3838
$fileResource = fopen($this->manifestPath, 'w');
3939
fclose($fileResource);
4040
}

src/Magento/FunctionalTestingFramework/Util/Manifest/ParallelTestManifest.php

+5-4
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,13 @@ class ParallelTestManifest extends BaseTestManifest
3131
/**
3232
* TestManifest constructor.
3333
*
34-
* @param string $path
34+
* @param string $manifestPath
35+
* @param string $testPath
3536
*/
36-
public function __construct($path)
37+
public function __construct($manifestPath, $testPath)
3738
{
38-
$this->dirPath = $path . DIRECTORY_SEPARATOR . 'groups';
39-
parent::__construct($path, self::PARALLEL_CONFIG);
39+
$this->dirPath = $manifestPath . DIRECTORY_SEPARATOR . 'groups';
40+
parent::__construct($testPath, self::PARALLEL_CONFIG);
4041
}
4142

4243
/**

src/Magento/FunctionalTestingFramework/Util/Manifest/SingleRunTestManifest.php

+5-5
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@ class SingleRunTestManifest extends DefaultTestManifest
1212

1313
/**
1414
* SingleRunTestManifest constructor.
15-
* @param string $path
15+
* @param string $manifestPath
16+
* @param string $testPath
1617
*/
17-
public function __construct($path)
18+
public function __construct($manifestPath, $testPath)
1819
{
19-
$this->manifestPath = $path . DIRECTORY_SEPARATOR . 'testManifest.txt';
20-
parent::__construct($path, self::SINGLE_RUN_CONFIG);
21-
20+
parent::__construct($manifestPath, $testPath);
21+
$this->runTypeConfig = self::SINGLE_RUN_CONFIG;
2222
$fileResource = fopen($this->manifestPath, 'w');
2323
fclose($fileResource);
2424
}

src/Magento/FunctionalTestingFramework/Util/Manifest/TestManifestFactory.php

+6-5
Original file line numberDiff line numberDiff line change
@@ -19,21 +19,22 @@ private function __construct()
1919
/**
2020
* Static function which takes path and config to return the appropriate manifest output type.
2121
*
22-
* @param String $path
22+
* @param String $manifestPath
23+
* @param String $testPath
2324
* @param String $runConfig
2425
* @return BaseTestManifest
2526
*/
26-
public static function makeManifest($path, $runConfig)
27+
public static function makeManifest($manifestPath, $testPath, $runConfig)
2728
{
2829
switch ($runConfig) {
2930
case 'singleRun':
30-
return new SingleRunTestManifest($path);
31+
return new SingleRunTestManifest($manifestPath, $testPath);
3132

3233
case 'parallel':
33-
return new ParallelTestManifest($path);
34+
return new ParallelTestManifest($manifestPath, $testPath);
3435

3536
default:
36-
return new DefaultTestManifest($path);
37+
return new DefaultTestManifest($manifestPath, $testPath);
3738

3839
}
3940
}

src/Magento/FunctionalTestingFramework/Util/TestGenerator.php

+14-7
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ class TestGenerator
2929
{
3030
const REQUIRED_ENTITY_REFERENCE = 'createDataKey';
3131
const GENERATED_DIR = '_generated';
32+
const DEFAULT_DIR = 'default';
3233

3334
/**
3435
* Path to the export dir.
@@ -60,11 +61,13 @@ class TestGenerator
6061
private function __construct($exportDir, $tests)
6162
{
6263
// private constructor for factory
63-
$this->exportDirName = $exportDir ?? self::GENERATED_DIR;
64-
$this->exportDirectory = rtrim(
65-
TESTS_MODULE_PATH . DIRECTORY_SEPARATOR . self::GENERATED_DIR . DIRECTORY_SEPARATOR . $exportDir,
66-
DIRECTORY_SEPARATOR
67-
);
64+
$this->exportDirName = $exportDir ?? self::DEFAULT_DIR;
65+
$exportDir = $exportDir ?? self::DEFAULT_DIR;
66+
$this->exportDirectory = TESTS_MODULE_PATH
67+
. DIRECTORY_SEPARATOR
68+
. self::GENERATED_DIR
69+
. DIRECTORY_SEPARATOR
70+
. $exportDir;
6871
$this->tests = $tests;
6972
}
7073

@@ -141,7 +144,11 @@ public function createAllTestFiles($runConfig = null, $nodes = null)
141144
DirSetupUtil::createGroupDir($this->exportDirectory);
142145

143146
// create our manifest file here
144-
$testManifest = TestManifestFactory::makeManifest($this->exportDirectory, $runConfig);
147+
$testManifest = TestManifestFactory::makeManifest(
148+
dirname($this->exportDirectory),
149+
$this->exportDirectory,
150+
$runConfig
151+
);
145152
$testPhpArray = $this->assembleAllTestPhp($testManifest, $nodes);
146153

147154
foreach ($testPhpArray as $testPhpFile) {
@@ -172,7 +179,7 @@ private function assembleTestPhp($testObject)
172179
}
173180

174181
$cestPhp = "<?php\n";
175-
$cestPhp .= "namespace Magento\AcceptanceTest\\" . $this->exportDirName . "\Backend;\n\n";
182+
$cestPhp .= "namespace Magento\AcceptanceTest\\_" . $this->exportDirName . "\Backend;\n\n";
176183
$cestPhp .= $usePhp;
177184
$cestPhp .= $classAnnotationsPhp;
178185
$cestPhp .= sprintf("class %s\n", $className);

0 commit comments

Comments
 (0)