Skip to content

Commit d8c77f3

Browse files
MC-33192: Ability to use abstract classes in overrides
1 parent eceb5d9 commit d8c77f3

File tree

6 files changed

+98
-88
lines changed
  • dev/tests
    • api-functional
    • integration
      • _files/Magento
      • testsuite/Magento/TestModuleOverrideConfig/Inheritance/Fixtures

6 files changed

+98
-88
lines changed

dev/tests/api-functional/_files/Magento/TestModuleOverrideConfig2/Test/Api/_files/overrides.xml

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -147,42 +147,4 @@
147147
<dataSet name="first_data_set" skip="true"/>
148148
</method>
149149
</test>
150-
<test class="Magento\TestModuleOverrideConfig\Inheritance\Fixtures\FixturesInterface">
151-
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_1" value="overridden config fixture value for class"/>
152-
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php"/>
153-
<method name="testInterfaceInheritance">
154-
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_2" newValue="overridden config fixture value for method"/>
155-
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture2_second_module.php" />
156-
<dataSet name="second_data_set">
157-
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_3" remove="true"/>
158-
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php" remove="true"/>
159-
</dataSet>
160-
</method>
161-
</test>
162-
<test class="Magento\TestModuleOverrideConfig\Inheritance\Fixtures\FixturesAbstractClass">
163-
<method name="testAbstractInheritance">
164-
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_2" remove="true"/>
165-
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" remove="true"/>
166-
<dataSet name="first_data_set">
167-
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_3" value="overridden config fixture value for data set from abstract"/>
168-
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php"/>
169-
</dataSet>
170-
<dataSet name="second_data_set">
171-
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_1" newValue="overridden config fixture value for data set from abstract"/>
172-
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture1_second_module.php" />
173-
</dataSet>
174-
</method>
175-
</test>
176-
<test class="Magento\TestModuleOverrideConfig\Inheritance\Skip\SkipAbstractClass">
177-
<method name="testAbstractSkip" skip="true"/>
178-
<method name="testSkipDataSet">
179-
<dataSet name="first_data_set" skip="true"/>
180-
</method>
181-
</test>
182-
<test class="Magento\TestModuleOverrideConfig\Inheritance\Skip\SkipInterface">
183-
<method name="testInterfaceSkip" skip="true"/>
184-
<method name="testSkipDataSet">
185-
<dataSet name="second_data_set" skip="true"/>
186-
</method>
187-
</test>
188150
</overrides>

dev/tests/api-functional/_files/Magento/TestModuleOverrideConfig3/Test/Api/_files/overrides.xml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,44 @@
4343
</dataSet>
4444
</method>
4545
</test>
46+
<test class="Magento\TestModuleOverrideConfig\Inheritance\Fixtures\FixturesInterface">
47+
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_1" value="overridden config fixture value for class"/>
48+
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php"/>
49+
<method name="testInterfaceInheritance">
50+
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_2" newValue="overridden config fixture value for method"/>
51+
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture2_second_module.php" />
52+
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module_rollback.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture2_second_module_rollback.php" />
53+
<dataSet name="second_data_set">
54+
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_3" remove="true"/>
55+
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php" remove="true"/>
56+
</dataSet>
57+
</method>
58+
</test>
59+
<test class="Magento\TestModuleOverrideConfig\Inheritance\Fixtures\FixturesAbstractClass">
60+
<method name="testAbstractInheritance">
61+
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_2" remove="true"/>
62+
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" remove="true"/>
63+
<dataSet name="first_data_set">
64+
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_3" value="overridden config fixture value for data set from abstract"/>
65+
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php"/>
66+
</dataSet>
67+
<dataSet name="second_data_set">
68+
<magentoConfigFixture scopeType="store" scopeCode="default" path="test_section/test_group/field_1" newValue="overridden config fixture value for data set from abstract"/>
69+
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture1_second_module.php" />
70+
<magentoApiDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module_rollback.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture1_second_module_rollback.php" />
71+
</dataSet>
72+
</method>
73+
</test>
74+
<test class="Magento\TestModuleOverrideConfig\Inheritance\Skip\SkipAbstractClass">
75+
<method name="testAbstractSkip" skip="true"/>
76+
<method name="testSkipDataSet">
77+
<dataSet name="first_data_set" skip="true"/>
78+
</method>
79+
</test>
80+
<test class="Magento\TestModuleOverrideConfig\Inheritance\Skip\SkipInterface">
81+
<method name="testInterfaceSkip" skip="true"/>
82+
<method name="testSkipDataSet">
83+
<dataSet name="second_data_set" skip="true"/>
84+
</method>
85+
</test>
4686
</overrides>

dev/tests/api-functional/testsuite/Magento/TestModuleOverrideConfig/Inheritance/Fixtures/FixturesTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,7 @@ public function abstractDataProvider(): array
193193
*
194194
* @param array $configs
195195
* @param string $scope
196+
* @return void
196197
*/
197198
private function assertConfigFieldValues(
198199
array $configs,
@@ -217,6 +218,7 @@ private function assertConfigFieldValues(
217218
* Asserts count of used fixtures.
218219
*
219220
* @param array $fixtures
221+
* @return void
220222
*/
221223
private function assertUsedFixturesCount(array $fixtures): void
222224
{

dev/tests/integration/_files/Magento/TestModuleOverrideConfig2/Test/Integration/_files/overrides.xml

Lines changed: 0 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -204,54 +204,4 @@
204204
<dataSet name="first_data_set" skip="true"/>
205205
</method>
206206
</test>
207-
<test class="Magento\TestModuleOverrideConfig\Inheritance\Fixtures\FixturesInterface">
208-
<magentoAdminConfigFixture path="test_section/test_group/field_1" value="overridden config fixture value for class"/>
209-
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_1" value="overridden config fixture value for class"/>
210-
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php"/>
211-
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php"/>
212-
<method name="testInterfaceInheritance">
213-
<magentoAdminConfigFixture path="test_section/test_group/field_2" newValue="overridden config fixture value for method"/>
214-
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_2" newValue="overridden config fixture value for method"/>
215-
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture2_second_module.php" />
216-
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture2_second_module.php" />
217-
<dataSet name="second_data_set">
218-
<magentoAdminConfigFixture path="test_section/test_group/field_3" remove="true"/>
219-
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_3" remove="true"/>
220-
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php" remove="true"/>
221-
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php" remove="true"/>
222-
</dataSet>
223-
</method>
224-
</test>
225-
<test class="Magento\TestModuleOverrideConfig\Inheritance\Fixtures\FixturesAbstractClass">
226-
<method name="testAbstractInheritance">
227-
<magentoAdminConfigFixture path="test_section/test_group/field_2" remove="true"/>
228-
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_2" remove="true"/>
229-
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" remove="true"/>
230-
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" remove="true"/>
231-
<dataSet name="first_data_set">
232-
<magentoAdminConfigFixture path="test_section/test_group/field_3" value="overridden config fixture value for data set from abstract"/>
233-
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_3" value="overridden config fixture value for data set from abstract"/>
234-
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php"/>
235-
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php"/>
236-
</dataSet>
237-
<dataSet name="second_data_set">
238-
<magentoAdminConfigFixture path="test_section/test_group/field_1" newValue="overridden config fixture value for data set from abstract"/>
239-
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_1" newValue="overridden config fixture value for data set from abstract"/>
240-
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture1_second_module.php" />
241-
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture1_second_module.php" />
242-
</dataSet>
243-
</method>
244-
</test>
245-
<test class="Magento\TestModuleOverrideConfig\Inheritance\Skip\SkipAbstractClass">
246-
<method name="testAbstractSkip" skip="true"/>
247-
<method name="testSkipDataSet">
248-
<dataSet name="first_data_set" skip="true"/>
249-
</method>
250-
</test>
251-
<test class="Magento\TestModuleOverrideConfig\Inheritance\Skip\SkipInterface">
252-
<method name="testInterfaceSkip" skip="true"/>
253-
<method name="testSkipDataSet">
254-
<dataSet name="second_data_set" skip="true"/>
255-
</method>
256-
</test>
257207
</overrides>

dev/tests/integration/_files/Magento/TestModuleOverrideConfig3/Test/Integration/_files/overrides.xml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,58 @@
5353
</dataSet>
5454
</method>
5555
</test>
56+
<test class="Magento\TestModuleOverrideConfig\Inheritance\Fixtures\FixturesInterface">
57+
<magentoAdminConfigFixture path="test_section/test_group/field_1" value="overridden config fixture value for class"/>
58+
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_1" value="overridden config fixture value for class"/>
59+
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php"/>
60+
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php"/>
61+
<method name="testInterfaceInheritance">
62+
<magentoAdminConfigFixture path="test_section/test_group/field_2" newValue="overridden config fixture value for method"/>
63+
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_2" newValue="overridden config fixture value for method"/>
64+
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture2_second_module.php" />
65+
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module_rollback.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture2_second_module_rollback.php" />
66+
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture2_second_module.php" />
67+
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module_rollback.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture2_second_module_rollback.php" />
68+
<dataSet name="second_data_set">
69+
<magentoAdminConfigFixture path="test_section/test_group/field_3" remove="true"/>
70+
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_3" remove="true"/>
71+
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php" remove="true"/>
72+
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php" remove="true"/>
73+
</dataSet>
74+
</method>
75+
</test>
76+
<test class="Magento\TestModuleOverrideConfig\Inheritance\Fixtures\FixturesAbstractClass">
77+
<method name="testAbstractInheritance">
78+
<magentoAdminConfigFixture path="test_section/test_group/field_2" remove="true"/>
79+
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_2" remove="true"/>
80+
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" remove="true"/>
81+
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture2_first_module.php" remove="true"/>
82+
<dataSet name="first_data_set">
83+
<magentoAdminConfigFixture path="test_section/test_group/field_3" value="overridden config fixture value for data set from abstract"/>
84+
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_3" value="overridden config fixture value for data set from abstract"/>
85+
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php"/>
86+
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture3_first_module.php"/>
87+
</dataSet>
88+
<dataSet name="second_data_set">
89+
<magentoAdminConfigFixture path="test_section/test_group/field_1" newValue="overridden config fixture value for data set from abstract"/>
90+
<magentoConfigFixture scopeType="store" scopeCode="current" path="test_section/test_group/field_1" newValue="overridden config fixture value for data set from abstract"/>
91+
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture1_second_module.php" />
92+
<magentoDataFixture path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module_rollback.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture1_second_module_rollback.php" />
93+
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture1_second_module.php" />
94+
<magentoDataFixtureBeforeTransaction path="Magento/TestModuleOverrideConfig/_files/fixture1_first_module_rollback.php" newPath="Magento/TestModuleOverrideConfig2/_files/fixture1_second_module_rollback.php" />
95+
</dataSet>
96+
</method>
97+
</test>
98+
<test class="Magento\TestModuleOverrideConfig\Inheritance\Skip\SkipAbstractClass">
99+
<method name="testAbstractSkip" skip="true"/>
100+
<method name="testSkipDataSet">
101+
<dataSet name="first_data_set" skip="true"/>
102+
</method>
103+
</test>
104+
<test class="Magento\TestModuleOverrideConfig\Inheritance\Skip\SkipInterface">
105+
<method name="testInterfaceSkip" skip="true"/>
106+
<method name="testSkipDataSet">
107+
<dataSet name="second_data_set" skip="true"/>
108+
</method>
109+
</test>
56110
</overrides>

dev/tests/integration/testsuite/Magento/TestModuleOverrideConfig/Inheritance/Fixtures/FixturesTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,7 @@ public function abstractDataProvider(): array
182182
*
183183
* @param array $configs
184184
* @param string $scope
185+
* @return void
185186
*/
186187
private function assertConfigFieldValues(
187188
array $configs,
@@ -196,6 +197,7 @@ private function assertConfigFieldValues(
196197
* Asserts count of used fixtures.
197198
*
198199
* @param array $fixtures
200+
* @return void
199201
*/
200202
private function assertUsedFixturesCount(array $fixtures): void
201203
{

0 commit comments

Comments
 (0)