Skip to content

Commit f8ac3d2

Browse files
committed
MQE-2126: Can't modify DataEntity data
1 parent df94717 commit f8ac3d2

File tree

6 files changed

+48
-6
lines changed

6 files changed

+48
-6
lines changed

dev/tests/functional/tests/MFTF/DevDocs/Data/DeprecatedMessageData.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,7 @@
1111
<entity name="DeprecatedMessageData" deprecated="Entity is deprecated. Please use 'MessageData'.">
1212
<data key="message">Introduction to the Magento Functional Testing Framework</data>
1313
</entity>
14+
<entity name="MessageData">
15+
<data key="justSomeField">Some data</data>
16+
</entity>
1417
</entities>
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright © Magento, Inc. All rights reserved.
5+
* See COPYING.txt for license details.
6+
*/
7+
-->
8+
9+
<entities xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="../../../../../../../src/Magento/FunctionalTestingFramework/DataGenerator/etc/dataProfileSchema.xsd">
11+
<entity name="MessageData">
12+
<array key="numbers">
13+
<item>Something New</item>
14+
</array>
15+
</entity>
16+
</entities>

dev/tests/functional/tests/MFTF/DevDocs/Data/MessageData.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,11 @@
1010
xsi:noNamespaceSchemaLocation="urn:magento:mftf:DataGenerator/etc/dataProfileSchema.xsd">
1111
<entity name="MessageData">
1212
<data key="message">Introduction to the Magento Functional Testing Framework</data>
13+
<array key="numbers">
14+
<item name="zero">0</item>
15+
<item name="one">1</item>
16+
<item name="two">2</item>
17+
<item name="three">3</item>
18+
</array>
1319
</entity>
1420
</entities>

dev/tests/functional/tests/MFTF/DevDocs/Test/DevDocsTest.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,5 +46,6 @@
4646
<argument name="test" value="{{HelperData.entityField}}" />
4747
<argument name="entityTest" value="HelperData" />
4848
</actionGroup>
49+
<comment userInput="{{MessageData.numbers}}" stepKey="outputMergedArray" />
4950
</test>
5051
</tests>

etc/di.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,7 @@
157157
<argument name="idAttributes" xsi:type="array">
158158
<item name="/entities/entity" xsi:type="string">name</item>
159159
<item name="/entities/entity/(data|array)" xsi:type="string">key</item>
160+
<item name="/entities/entity/array/item" xsi:type="string">name</item>
160161
<item name="/entities/entity/requiredEntity" xsi:type="string">type</item>
161162
</argument>
162163
<argument name="mergeablePaths" xsi:type="array">

src/Magento/FunctionalTestingFramework/DataGenerator/etc/dataProfileSchema.xsd

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -118,17 +118,32 @@
118118

119119
<xs:complexType name="arrayType">
120120
<xs:sequence>
121-
<xs:element name="item" type="xs:string" maxOccurs="unbounded" minOccurs="0">
122-
<xs:annotation>
123-
<xs:documentation>
124-
Individual piece of data to be passed in as part of the parrent array type.
125-
</xs:documentation>
126-
</xs:annotation>
121+
<xs:element name="item" type="itemType" maxOccurs="unbounded" minOccurs="0">
122+
<xs:annotation>
123+
<xs:documentation>
124+
Individual piece of data to be passed in as part of the parrent array type.
125+
</xs:documentation>
126+
</xs:annotation>
127127
</xs:element>
128128
</xs:sequence>
129129
<xs:attribute type="xs:string" name="key" use="required"/>
130130
</xs:complexType>
131131

132+
133+
<xs:complexType name="itemType">
134+
<xs:simpleContent>
135+
<xs:extension base="xs:string">
136+
<xs:attribute type="xs:string" name="name" use="optional">
137+
<xs:annotation>
138+
<xs:documentation>
139+
Key attribute of item pair.
140+
</xs:documentation>
141+
</xs:annotation>
142+
</xs:attribute>
143+
</xs:extension>
144+
</xs:simpleContent>
145+
</xs:complexType>
146+
132147
<xs:complexType name="requiredEntityType">
133148
<xs:simpleContent>
134149
<xs:extension base="xs:string">

0 commit comments

Comments
 (0)