Skip to content

Commit 86edb00

Browse files
committed
MC-18945: Reading deprecated annotation in schema
- Addressed the review comments from the api-tests
1 parent 65e970a commit 86edb00

File tree

3 files changed

+41
-47
lines changed

3 files changed

+41
-47
lines changed

dev/tests/api-functional/testsuite/Magento/GraphQl/IntrospectionQueryTest.php

Lines changed: 36 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@ public function testIntrospectionQuery()
5353
defaultValue
5454
}
5555
QUERY;
56-
5756
$this->assertArrayHasKey('__schema', $this->graphQlQuery($query));
5857
}
5958

@@ -92,62 +91,56 @@ enumValues(includeDeprecated: true) {
9291
}
9392
9493
QUERY;
95-
96-
$this->assertArrayHasKey('__schema', $this->graphQlQuery($query));
9794
$response = $this->graphQlQuery($query);
95+
$this->assertArrayHasKey('__schema', $response);
9896
$schemaResponseFields = $response['__schema']['types'];
9997
$enumValueReasonArray = $this->getEnumValueDeprecatedReason($schemaResponseFields);
10098
$fieldsValueReasonArray = $this->getFieldsValueDeprecatedReason($schemaResponseFields);
10199
$expectedOutput = require __DIR__ . '/_files/schema_response_sdl_deprecated_annotation.php';
102100

103101
// checking field values deprecated reason
104-
if (!empty($fieldsValueReasonArray)) {
105-
$fieldDeprecatedReason = [];
106-
$fieldsArray = $expectedOutput[0]['fields'];
107-
foreach ($fieldsArray as $field) {
108-
if ($field['isDeprecated'] === true) {
109-
$fieldDeprecatedReason [] = $field['deprecationReason'];
110-
}
102+
$fieldDeprecatedReason = [];
103+
$fieldsArray = $expectedOutput[0]['fields'];
104+
foreach ($fieldsArray as $field) {
105+
if ($field['isDeprecated'] === true) {
106+
$fieldDeprecatedReason [] = $field['deprecationReason'];
111107
}
112-
$this->assertNotEmpty($fieldDeprecatedReason);
113-
$this->assertContains(
114-
'Symbol was missed. Use `default_display_currency_code`.',
115-
$fieldDeprecatedReason
116-
);
117-
118-
$this->assertContains(
119-
'Symbol was missed. Use `default_display_currency_code`.',
120-
$fieldsValueReasonArray
121-
);
108+
}
109+
$this->assertNotEmpty($fieldDeprecatedReason);
110+
$this->assertContains(
111+
'Symbol was missed. Use `default_display_currency_code`.',
112+
$fieldDeprecatedReason
113+
);
122114

123-
$this->assertNotEmpty(
124-
array_intersect($fieldDeprecatedReason, $fieldsValueReasonArray)
125-
);
115+
$this->assertContains(
116+
'Symbol was missed. Use `default_display_currency_code`.',
117+
$fieldsValueReasonArray
118+
);
126119

127-
}
120+
$this->assertNotEmpty(
121+
array_intersect($fieldDeprecatedReason, $fieldsValueReasonArray)
122+
);
128123

129124
// checking enum values deprecated reason
130-
if (!empty($enumValueReasonArray)) {
131-
$enumValueDeprecatedReason = [];
132-
$enumValuesArray = $expectedOutput[1]['enumValues'];
133-
foreach ($enumValuesArray as $enumValue) {
134-
if ($enumValue['isDeprecated'] === true) {
135-
$enumValueDeprecatedReason [] = $enumValue['deprecationReason'];
136-
}
125+
$enumValueDeprecatedReason = [];
126+
$enumValuesArray = $expectedOutput[1]['enumValues'];
127+
foreach ($enumValuesArray as $enumValue) {
128+
if ($enumValue['isDeprecated'] === true) {
129+
$enumValueDeprecatedReason [] = $enumValue['deprecationReason'];
137130
}
138-
$this->assertNotEmpty($enumValueDeprecatedReason);
139-
$this->assertContains(
140-
'`sample_url` serves to get the downloadable sample',
141-
$enumValueDeprecatedReason
142-
);
143-
$this->assertContains(
144-
'`sample_url` serves to get the downloadable sample',
145-
$enumValueReasonArray
146-
);
147-
$this->assertNotEmpty(
148-
array_intersect($enumValueDeprecatedReason, $enumValueReasonArray)
149-
);
150131
}
132+
$this->assertNotEmpty($enumValueDeprecatedReason);
133+
$this->assertContains(
134+
'`sample_url` serves to get the downloadable sample',
135+
$enumValueDeprecatedReason
136+
);
137+
$this->assertContains(
138+
'`sample_url` serves to get the downloadable sample',
139+
$enumValueReasonArray
140+
);
141+
$this->assertNotEmpty(
142+
array_intersect($enumValueDeprecatedReason, $enumValueReasonArray)
143+
);
151144
}
152145

153146
/**

lib/internal/Magento/Framework/GraphQl/Config/Element/Field.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -165,16 +165,17 @@ public function getDescription() : string
165165
}
166166

167167
/**
168-
* Return the cache
168+
* Return the cache tag for the field.
169169
*
170-
* @return array
170+
* @return array|null
171171
*/
172172
public function getCache() : array
173173
{
174174
return $this->cache;
175175
}
176+
176177
/**
177-
* Return the deprecated
178+
* Return the deprecated annotation for the field
178179
*
179180
* @return array
180181
*/

lib/internal/Magento/Framework/GraphQl/Config/Element/Input.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ public function getDescription(): string
8181
}
8282

8383
/**
84-
* Return the deprecated
84+
* Return the deprecated annotation for the input
8585
*
8686
* @return array
8787
*/

0 commit comments

Comments
 (0)