Skip to content

Commit 865f30e

Browse files
committed
Merge branch '2.2-develop' of github.com:magento/magento2ce into MC-17992
2 parents 5bfc5ee + dbb41dc commit 865f30e

File tree

16 files changed

+64
-18
lines changed

16 files changed

+64
-18
lines changed

app/code/Magento/Webapi/Model/Rest/Swagger/Generator.php

Lines changed: 41 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ public function __construct(
134134
}
135135

136136
/**
137-
* {@inheritdoc}
137+
* @inheritdoc
138138
*/
139139
protected function generateSchema($requestedServiceMetadata, $requestScheme, $requestHost, $endpointUrl)
140140
{
@@ -193,6 +193,32 @@ protected function getGeneralInfo()
193193
];
194194
}
195195

196+
/**
197+
* List out consumes data type
198+
*
199+
* @return array
200+
*/
201+
private function getConsumableDatatypes()
202+
{
203+
return [
204+
'application/json',
205+
'application/xml',
206+
];
207+
}
208+
209+
/**
210+
* List out produces data type
211+
*
212+
* @return array
213+
*/
214+
private function getProducibleDatatypes()
215+
{
216+
return [
217+
'application/json',
218+
'application/xml',
219+
];
220+
}
221+
196222
/**
197223
* Generate path info based on method data
198224
*
@@ -212,6 +238,8 @@ protected function generatePathInfo($methodName, $httpMethodData, $tagName)
212238
'tags' => [$tagName],
213239
'description' => $methodData['documentation'],
214240
'operationId' => $operationId,
241+
'consumes' => $this->getConsumableDatatypes(),
242+
'produces' => $this->getProducibleDatatypes(),
215243
];
216244

217245
$parameters = $this->generateMethodParameters($httpMethodData, $operationId);
@@ -602,7 +630,7 @@ protected function getDefinitionReference($typeName)
602630
/**
603631
* Get the CamelCased type name in 'hyphen-separated-lowercase-words' format
604632
*
605-
* e.g. test-module5-v1-entity-all-soap-and-rest
633+
* E.g. test-module5-v1-entity-all-soap-and-rest
606634
*
607635
* @param string $typeName
608636
* @return string
@@ -842,6 +870,17 @@ private function generateBodySchema($parameterName, $parameterInfo, $description
842870
$description
843871
);
844872
$bodySchema['type'] = 'object';
873+
874+
/*
875+
* Make sure we have a proper XML wrapper for request parameters for the XML format.
876+
*/
877+
if (!isset($bodySchema['xml']) || !is_array($bodySchema['xml'])) {
878+
$bodySchema['xml'] = [];
879+
}
880+
if (!isset($bodySchema['xml']['name']) || empty($bodySchema['xml']['name'])) {
881+
$bodySchema['xml']['name'] = 'request';
882+
}
883+
845884
return $bodySchema;
846885
}
847886

app/code/Magento/Webapi/Test/Unit/Model/Rest/Swagger/GeneratorTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -223,7 +223,7 @@ public function generateDataProvider()
223223
]
224224
],
225225
// @codingStandardsIgnoreStart
226-
'{"swagger":"2.0","info":{"version":"","title":""},"host":"magento.host","basePath":"/rest/default","schemes":["http://"],"tags":[{"name":"testModule5AllSoapAndRestV2","description":"AllSoapAndRestInterface"}],"paths":{"/V1/testModule5":{"post":{"tags":["testModule5AllSoapAndRestV2"],"description":"Add new item.","operationId":"' . self::OPERATION_NAME . 'Post","parameters":[{"name":"operationNamePostBody","in":"body","schema":{"required":["item"],"properties":{"item":{"$ref":"#/definitions/test-module5-v2-entity-all-soap-and-rest"}},"type":"object"}}],"responses":{"200":{"description":"200 Success.","schema":{"$ref":"#/definitions/test-module5-v2-entity-all-soap-and-rest"}},"401":{"description":"401 Unauthorized","schema":{"$ref":"#/definitions/error-response"}},"500":{"description":"Internal Server error","schema":{"$ref":"#/definitions/error-response"}},"default":{"description":"Unexpected error","schema":{"$ref":"#/definitions/error-response"}}}}}},"definitions":{"error-response":{"type":"object","properties":{"message":{"type":"string","description":"Error message"},"errors":{"$ref":"#/definitions/error-errors"},"code":{"type":"integer","description":"Error code"},"parameters":{"$ref":"#/definitions/error-parameters"},"trace":{"type":"string","description":"Stack trace"}},"required":["message"]},"error-errors":{"type":"array","description":"Errors list","items":{"$ref":"#/definitions/error-errors-item"}},"error-errors-item":{"type":"object","description":"Error details","properties":{"message":{"type":"string","description":"Error message"},"parameters":{"$ref":"#/definitions/error-parameters"}}},"error-parameters":{"type":"array","description":"Error parameters list","items":{"$ref":"#/definitions/error-parameters-item"}},"error-parameters-item":{"type":"object","description":"Error parameters item","properties":{"resources":{"type":"string","description":"ACL resource"},"fieldName":{"type":"string","description":"Missing or invalid field name"},"fieldValue":{"type":"string","description":"Incorrect field value"}}},"test-module5-v2-entity-all-soap-and-rest":{"type":"object","description":"Some Data Object","properties":{"price":{"type":"integer"}},"required":["price"]}}}'
226+
'{"swagger":"2.0","info":{"version":"","title":""},"host":"magento.host","basePath":"/rest/default","schemes":["http://"],"tags":[{"name":"testModule5AllSoapAndRestV2","description":"AllSoapAndRestInterface"}],"paths":{"/V1/testModule5":{"post":{"tags":["testModule5AllSoapAndRestV2"],"description":"Add new item.","operationId":"operationNamePost","consumes":["application/json","application/xml"],"produces":["application/json","application/xml"],"parameters":[{"name":"operationNamePostBody","in":"body","schema":{"required":["item"],"properties":{"item":{"$ref":"#/definitions/test-module5-v2-entity-all-soap-and-rest"}},"type":"object","xml":{"name":"request"}}}],"responses":{"200":{"description":"200 Success.","schema":{"$ref":"#/definitions/test-module5-v2-entity-all-soap-and-rest"}},"401":{"description":"401 Unauthorized","schema":{"$ref":"#/definitions/error-response"}},"500":{"description":"Internal Server error","schema":{"$ref":"#/definitions/error-response"}},"default":{"description":"Unexpected error","schema":{"$ref":"#/definitions/error-response"}}}}}},"definitions":{"error-response":{"type":"object","properties":{"message":{"type":"string","description":"Error message"},"errors":{"$ref":"#/definitions/error-errors"},"code":{"type":"integer","description":"Error code"},"parameters":{"$ref":"#/definitions/error-parameters"},"trace":{"type":"string","description":"Stack trace"}},"required":["message"]},"error-errors":{"type":"array","description":"Errors list","items":{"$ref":"#/definitions/error-errors-item"}},"error-errors-item":{"type":"object","description":"Error details","properties":{"message":{"type":"string","description":"Error message"},"parameters":{"$ref":"#/definitions/error-parameters"}}},"error-parameters":{"type":"array","description":"Error parameters list","items":{"$ref":"#/definitions/error-parameters-item"}},"error-parameters-item":{"type":"object","description":"Error parameters item","properties":{"resources":{"type":"string","description":"ACL resource"},"fieldName":{"type":"string","description":"Missing or invalid field name"},"fieldValue":{"type":"string","description":"Incorrect field value"}}},"test-module5-v2-entity-all-soap-and-rest":{"type":"object","description":"Some Data Object","properties":{"price":{"type":"integer"}},"required":["price"]}}}'
227227
// @codingStandardsIgnoreEnd
228228
],
229229
[
@@ -271,7 +271,7 @@ public function generateDataProvider()
271271
]
272272
],
273273
// @codingStandardsIgnoreStart
274-
'{"swagger":"2.0","info":{"version":"","title":""},"host":"magento.host","basePath":"/rest/default","schemes":["http://"],"tags":[{"name":"testModule5AllSoapAndRestV2","description":"AllSoapAndRestInterface"}],"paths":{"/V1/testModule5":{"get":{"tags":["testModule5AllSoapAndRestV2"],"description":"Retrieve existing item.","operationId":"' . self::OPERATION_NAME . 'Get","responses":{"200":{"description":"200 Success.","schema":{"$ref":"#/definitions/test-module5-v2-entity-all-soap-and-rest"}},"401":{"description":"401 Unauthorized","schema":{"$ref":"#/definitions/error-response"}},"500":{"description":"Internal Server error","schema":{"$ref":"#/definitions/error-response"}},"default":{"description":"Unexpected error","schema":{"$ref":"#/definitions/error-response"}}}}}},"definitions":{"error-response":{"type":"object","properties":{"message":{"type":"string","description":"Error message"},"errors":{"$ref":"#/definitions/error-errors"},"code":{"type":"integer","description":"Error code"},"parameters":{"$ref":"#/definitions/error-parameters"},"trace":{"type":"string","description":"Stack trace"}},"required":["message"]},"error-errors":{"type":"array","description":"Errors list","items":{"$ref":"#/definitions/error-errors-item"}},"error-errors-item":{"type":"object","description":"Error details","properties":{"message":{"type":"string","description":"Error message"},"parameters":{"$ref":"#/definitions/error-parameters"}}},"error-parameters":{"type":"array","description":"Error parameters list","items":{"$ref":"#/definitions/error-parameters-item"}},"error-parameters-item":{"type":"object","description":"Error parameters item","properties":{"resources":{"type":"string","description":"ACL resource"},"fieldName":{"type":"string","description":"Missing or invalid field name"},"fieldValue":{"type":"string","description":"Incorrect field value"}}},"test-module5-v2-entity-all-soap-and-rest":{"type":"object","description":"Some Data Object","properties":{"price":{"type":"integer"}},"required":["price"]}}}'
274+
'{"swagger":"2.0","info":{"version":"","title":""},"host":"magento.host","basePath":"/rest/default","schemes":["http://"],"tags":[{"name":"testModule5AllSoapAndRestV2","description":"AllSoapAndRestInterface"}],"paths":{"/V1/testModule5":{"get":{"tags":["testModule5AllSoapAndRestV2"],"description":"Retrieve existing item.","operationId":"operationNameGet","consumes":["application/json","application/xml"],"produces":["application/json","application/xml"],"responses":{"200":{"description":"200 Success.","schema":{"$ref":"#/definitions/test-module5-v2-entity-all-soap-and-rest"}},"401":{"description":"401 Unauthorized","schema":{"$ref":"#/definitions/error-response"}},"500":{"description":"Internal Server error","schema":{"$ref":"#/definitions/error-response"}},"default":{"description":"Unexpected error","schema":{"$ref":"#/definitions/error-response"}}}}}},"definitions":{"error-response":{"type":"object","properties":{"message":{"type":"string","description":"Error message"},"errors":{"$ref":"#/definitions/error-errors"},"code":{"type":"integer","description":"Error code"},"parameters":{"$ref":"#/definitions/error-parameters"},"trace":{"type":"string","description":"Stack trace"}},"required":["message"]},"error-errors":{"type":"array","description":"Errors list","items":{"$ref":"#/definitions/error-errors-item"}},"error-errors-item":{"type":"object","description":"Error details","properties":{"message":{"type":"string","description":"Error message"},"parameters":{"$ref":"#/definitions/error-parameters"}}},"error-parameters":{"type":"array","description":"Error parameters list","items":{"$ref":"#/definitions/error-parameters-item"}},"error-parameters-item":{"type":"object","description":"Error parameters item","properties":{"resources":{"type":"string","description":"ACL resource"},"fieldName":{"type":"string","description":"Missing or invalid field name"},"fieldValue":{"type":"string","description":"Incorrect field value"}}},"test-module5-v2-entity-all-soap-and-rest":{"type":"object","description":"Some Data Object","properties":{"price":{"type":"integer"}},"required":["price"]}}}'
275275
// @codingStandardsIgnoreEnd
276276
],
277277
];

dev/tests/integration/testsuite/Magento/Customer/Controller/AccountTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -685,7 +685,7 @@ public function testConfirmationEmailWithSpecialCharacters()
685685

686686
$this->assertContains('To: ' . $email, $rawMessage);
687687

688-
$content = $message->getBody()->getPartContent(0);
688+
$content = $message->getBody()->getParts()[0]->getRawContent();
689689
$confirmationUrl = $this->getConfirmationUrlFromMessageContent($content);
690690
$this->setRequestInfo($confirmationUrl, 'confirm');
691691
$this->clearCookieMessagesList();

dev/tests/integration/testsuite/Magento/Newsletter/Model/SubscriberTest.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66

77
namespace Magento\Newsletter\Model;
88

9+
/**
10+
* \Magento\Newsletter\Model\Subscriber tests
11+
*/
912
class SubscriberTest extends \PHPUnit\Framework\TestCase
1013
{
1114
/**
@@ -39,7 +42,7 @@ public function testEmailConfirmation()
3942
$this->assertContains(
4043
'/newsletter/subscriber/confirm/id/' . $this->_model->getSubscriberId()
4144
. '/code/ysayquyajua23iq29gxwu2eax2qb6gvy',
42-
$transportBuilder->getSentMessage()->getRawMessage()
45+
$transportBuilder->getSentMessage()->getBody()->getParts()[0]->getRawContent()
4346
);
4447
$this->assertEquals(Subscriber::STATUS_NOT_ACTIVE, $this->_model->getSubscriberStatus());
4548
}

dev/tests/integration/testsuite/Magento/Sales/Controller/Adminhtml/Order/Create/SaveTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ public function testSendEmailOnOrderSave()
141141
);
142142

143143
$this->assertEquals($message->getSubject(), $subject);
144-
$this->assertThat($message->getRawMessage(), $assert);
144+
$this->assertThat($message->getBody()->getParts()[0]->getRawContent(), $assert);
145145
}
146146

147147
/**

dev/tests/integration/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/AddCommentTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public function testSendEmailOnAddCreditmemoComment()
5454
);
5555

5656
$this->assertEquals($message->getSubject(), $subject);
57-
$this->assertThat($message->getRawMessage(), $messageConstraint);
57+
$this->assertThat($message->getBody()->getParts()[0]->getRawContent(), $messageConstraint);
5858
}
5959

6060
/**

dev/tests/integration/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/SaveTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ public function testSendEmailOnCreditmemoSave()
5151
);
5252

5353
$this->assertEquals($message->getSubject(), $subject);
54-
$this->assertThat($message->getRawMessage(), $messageConstraint);
54+
$this->assertThat($message->getBody()->getParts()[0]->getRawContent(), $messageConstraint);
5555
}
5656

5757
/**

dev/tests/integration/testsuite/Magento/Sales/Controller/Adminhtml/Order/EmailTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ public function testSendOrderEmail()
8282
);
8383

8484
$this->assertEquals($message->getSubject(), $subject);
85-
$this->assertThat($message->getRawMessage(), $assert);
85+
$this->assertThat($message->getBody()->getParts()[0]->getRawContent(), $assert);
8686
}
8787

8888
/**

dev/tests/integration/testsuite/Magento/Sales/Controller/Adminhtml/Order/Invoice/AddCommentTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public function testSendEmailOnAddInvoiceComment()
5555
);
5656

5757
$this->assertEquals($message->getSubject(), $subject);
58-
$this->assertThat($message->getRawMessage(), $messageConstraint);
58+
$this->assertThat($message->getBody()->getParts()[0]->getRawContent(), $messageConstraint);
5959
}
6060

6161
/**

dev/tests/integration/testsuite/Magento/Sales/Controller/Adminhtml/Order/Invoice/EmailTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ public function testSendInvoiceEmail()
5959
);
6060

6161
$this->assertEquals($message->getSubject(), $subject);
62-
$this->assertThat($message->getRawMessage(), $messageConstraint);
62+
$this->assertThat($message->getBody()->getParts()[0]->getRawContent(), $messageConstraint);
6363
}
6464

6565
/**

0 commit comments

Comments
 (0)