Skip to content

Commit a4d4b22

Browse files
author
Paliarush, Alexander(apaliarush)
committed
Merge pull request #352 from magento-api/MAGETWO-35999-Join-Directives
[API] Join Directives
2 parents 9c3137c + 52c8981 commit a4d4b22

File tree

305 files changed

+2387
-963
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

305 files changed

+2387
-963
lines changed

app/code/Magento/AdminNotification/Model/Feed.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ class Feed extends \Magento\Framework\Model\AbstractModel
7373
* @param \Magento\Framework\App\ProductMetadataInterface $productMetadata
7474
* @param \Magento\Framework\UrlInterface $urlBuilder
7575
* @param \Magento\Framework\Model\Resource\AbstractResource $resource
76-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
76+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
7777
* @param array $data
7878
* @SuppressWarnings(PHPMD.ExcessiveParameterList)
7979
*/
@@ -87,7 +87,7 @@ public function __construct(
8787
\Magento\Framework\App\ProductMetadataInterface $productMetadata,
8888
\Magento\Framework\UrlInterface $urlBuilder,
8989
\Magento\Framework\Model\Resource\AbstractResource $resource = null,
90-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
90+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
9191
array $data = []
9292
) {
9393
parent::__construct($context, $registry, $resource, $resourceCollection, $data);

app/code/Magento/Backend/Helper/Dashboard/Data.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
class Data extends \Magento\Framework\App\Helper\AbstractHelper
1515
{
1616
/**
17-
* @var \Magento\Framework\Data\Collection\Db
17+
* @var \MagentoFrameworkDataCollectionAbstractDb
1818
*/
1919
protected $_stores;
2020

@@ -48,7 +48,7 @@ public function __construct(
4848
/**
4949
* Retrieve stores configured in system.
5050
*
51-
* @return \Magento\Framework\Data\Collection\Db
51+
* @return \MagentoFrameworkDataCollectionAbstractDb
5252
*/
5353
public function getStores()
5454
{

app/code/Magento/Backup/Model/Config/Backend/Cron.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class Cron extends \Magento\Framework\App\Config\Value
3434
* @param \Magento\Framework\App\Config\ScopeConfigInterface $config
3535
* @param \Magento\Framework\App\Config\ValueFactory $configValueFactory
3636
* @param \Magento\Framework\Model\Resource\AbstractResource $resource
37-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
37+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
3838
* @param string $runModelPath
3939
* @param array $data
4040
*/
@@ -44,7 +44,7 @@ public function __construct(
4444
\Magento\Framework\App\Config\ScopeConfigInterface $config,
4545
\Magento\Framework\App\Config\ValueFactory $configValueFactory,
4646
\Magento\Framework\Model\Resource\AbstractResource $resource = null,
47-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
47+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
4848
$runModelPath = '',
4949
array $data = []
5050
) {

app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Creditmemo.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ class Creditmemo extends AbstractItems
2525
* @param \Magento\Framework\Filter\FilterManager $filterManager
2626
* @param \Magento\Framework\Stdlib\String $string
2727
* @param \Magento\Framework\Model\Resource\AbstractResource $resource
28-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
28+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
2929
* @param array $data
3030
*/
3131
public function __construct(
@@ -36,7 +36,7 @@ public function __construct(
3636
\Magento\Framework\Filter\FilterManager $filterManager,
3737
\Magento\Framework\Stdlib\String $string,
3838
\Magento\Framework\Model\Resource\AbstractResource $resource = null,
39-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
39+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
4040
array $data = []
4141
) {
4242
$this->string = $string;

app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Invoice.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ class Invoice extends AbstractItems
2626
* @param \Magento\Framework\Filter\FilterManager $filterManager
2727
* @param \Magento\Framework\Stdlib\String $coreString
2828
* @param \Magento\Framework\Model\Resource\AbstractResource $resource
29-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
29+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
3030
* @param array $data
3131
*/
3232
public function __construct(
@@ -37,7 +37,7 @@ public function __construct(
3737
\Magento\Framework\Filter\FilterManager $filterManager,
3838
\Magento\Framework\Stdlib\String $coreString,
3939
\Magento\Framework\Model\Resource\AbstractResource $resource = null,
40-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
40+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
4141
array $data = []
4242
) {
4343
$this->string = $coreString;

app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Shipment.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ class Shipment extends AbstractItems
2323
* @param \Magento\Framework\Filter\FilterManager $filterManager
2424
* @param \Magento\Framework\Stdlib\String $string
2525
* @param \Magento\Framework\Model\Resource\AbstractResource $resource
26-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
26+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
2727
* @param array $data
2828
*/
2929
public function __construct(
@@ -34,7 +34,7 @@ public function __construct(
3434
\Magento\Framework\Filter\FilterManager $filterManager,
3535
\Magento\Framework\Stdlib\String $string,
3636
\Magento\Framework\Model\Resource\AbstractResource $resource = null,
37-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
37+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
3838
array $data = []
3939
) {
4040
$this->string = $string;

app/code/Magento/Bundle/Model/Selection.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -43,15 +43,15 @@ class Selection extends \Magento\Framework\Model\AbstractModel
4343
* @param \Magento\Framework\Registry $registry
4444
* @param \Magento\Catalog\Helper\Data $catalogData
4545
* @param \Magento\Bundle\Model\Resource\Selection $resource
46-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
46+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
4747
* @param array $data
4848
*/
4949
public function __construct(
5050
\Magento\Framework\Model\Context $context,
5151
\Magento\Framework\Registry $registry,
5252
\Magento\Catalog\Helper\Data $catalogData,
5353
\Magento\Bundle\Model\Resource\Selection $resource,
54-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
54+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
5555
array $data = []
5656
) {
5757
$this->_catalogData = $catalogData;

app/code/Magento/Bundle/Model/Source/Option/Type.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ class Type extends \Magento\Framework\Model\AbstractExtensibleModel implements
3838
* @param AttributeValueFactory $customAttributeFactory
3939
* @param array $options
4040
* @param \Magento\Framework\Model\Resource\AbstractResource $resource
41-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
41+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
4242
* @param array $data
4343
*/
4444
public function __construct(
@@ -48,7 +48,7 @@ public function __construct(
4848
AttributeValueFactory $customAttributeFactory,
4949
array $options,
5050
\Magento\Framework\Model\Resource\AbstractResource $resource = null,
51-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
51+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
5252
array $data = []
5353
) {
5454
$this->options = $options;

app/code/Magento/Bundle/Test/Unit/Model/OptionRepositoryTest.php

+60-18
Original file line numberDiff line numberDiff line change
@@ -286,9 +286,11 @@ public function testSaveIfOptionIdIsNull()
286286
$optionMock->expects($this->once())->method('setParentId')->with($productId)->willReturnSelf();
287287

288288
$optionIdsMap = [null, $optionId, $optionId];
289-
$optionMock->expects($this->any())->method('getOptionId')->willReturnCallback(function () use (&$optionIdsMap) {
290-
return array_shift($optionIdsMap);
291-
});
289+
$optionMock->expects($this->any())->method('getOptionId')->willReturnCallback(
290+
function () use (&$optionIdsMap) {
291+
return array_shift($optionIdsMap);
292+
}
293+
);
292294
$optionMock->expects($this->exactly(2))->method('getProductLinks')->willReturn([$linkedProductMock]);
293295

294296
$this->optionResourceMock->expects($this->once())->method('save')->with($optionMock)->willReturnSelf();
@@ -364,21 +366,8 @@ public function testSaveExistingOption()
364366
$productMock = $this->getMock('\Magento\Catalog\Model\Product', [], [], '', false);
365367
$productMock->expects($this->once())->method('getId')->willReturn($productId);
366368
$productMock->expects($this->any())->method('getSku')->willReturn($productSku);
367-
$optionMock = $this->getMock(
368-
'\Magento\Bundle\Model\Option',
369-
[
370-
'setStoreId',
371-
'setParentId',
372-
'getProductLinks',
373-
'getOptionId',
374-
'setOptionId',
375-
'setDefaultTitle',
376-
'getTitle'
377-
],
378-
[],
379-
'',
380-
false
381-
);
369+
370+
$optionMock = $this->createOptionMock();
382371
$optionMock->expects($this->once())->method('setStoreId')->with($storeId)->willReturnSelf();
383372
$optionMock->expects($this->once())->method('setParentId')->with($productId)->willReturnSelf();
384373
$optionMock->expects($this->any())->method('getOptionId')->willReturn($optionId);
@@ -613,4 +602,57 @@ public function testGetListException()
613602
->willReturn($productMock);
614603
$this->assertEquals(['object'], $this->model->getList($productSku));
615604
}
605+
606+
/**
607+
* @return \PHPUnit_Framework_MockObject_MockObject
608+
*/
609+
private function createOptionMock()
610+
{
611+
$contextMock = $this->getMock('Magento\Framework\Model\Context', [], [], '', false);
612+
$registryMock = $this->getMock('Magento\Framework\Registry', [], [], '', false);
613+
$extensionAttributesFactory = $this->getMock(
614+
'Magento\Framework\Api\ExtensionAttributesFactory',
615+
[],
616+
[],
617+
'',
618+
false
619+
);
620+
$attributeValueFactoryMock = $this->getMock('Magento\Framework\Api\AttributeValueFactory', [], [], '', false);
621+
$resourceMock = $this->getMock(
622+
'Magento\Framework\Model\Resource\Db\AbstractDb',
623+
[
624+
'_construct',
625+
'getIdFieldName'
626+
],
627+
[],
628+
'',
629+
false
630+
);
631+
$resourceCollectionMock = $this->getMockBuilder('Magento\Framework\Data\Collection\AbstractDb')
632+
->disableOriginalConstructor()
633+
->getMockForAbstractClass();
634+
$optionMock = $this->getMock(
635+
'Magento\Bundle\Model\Option',
636+
[
637+
'setStoreId',
638+
'setParentId',
639+
'getProductLinks',
640+
'getOptionId',
641+
'setOptionId',
642+
'setDefaultTitle',
643+
'getTitle'
644+
],
645+
[
646+
$contextMock,
647+
$registryMock,
648+
$extensionAttributesFactory,
649+
$attributeValueFactoryMock,
650+
$resourceMock,
651+
$resourceCollectionMock
652+
],
653+
'',
654+
true
655+
);
656+
return $optionMock;
657+
}
616658
}

app/code/Magento/Bundle/Test/Unit/Pricing/Adjustment/CalculatorTest.php

+6-2
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,9 @@ protected function createOptionMock($optionData)
209209
foreach ($optionData['selections'] as $selectionData) {
210210
$selections[] = $this->createSelectionMock($selectionData);
211211
}
212-
$option->setData($optionData['data']);
212+
foreach ($optionData['data'] as $key => $value) {
213+
$option->setData($key, $value);
214+
}
213215
$option->setData('selections', $selections);
214216
return $option;
215217
}
@@ -230,7 +232,9 @@ protected function createSelectionMock($selectionData)
230232

231233
// All items are saleable
232234
$selection->expects($this->any())->method('isSalable')->will($this->returnValue(true));
233-
$selection->setData($selectionData['data']);
235+
foreach ($selectionData['data'] as $key => $value) {
236+
$selection->setData($key, $value);
237+
}
234238
$amountMock = $this->createAmountMock($selectionData['amount']);
235239
$selection->expects($this->any())->method('getAmount')->will($this->returnValue($amountMock));
236240
$selection->expects($this->any())->method('getQuantity')->will($this->returnValue(1));

app/code/Magento/Bundle/Test/Unit/Pricing/Price/BundleOptionPriceTest.php

+6-2
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,9 @@ protected function createOptionMock($optionData)
242242
foreach ($optionData['selections'] as $selectionData) {
243243
$selections[] = $this->createSelectionMock($selectionData);
244244
}
245-
$option->setData($optionData['data']);
245+
foreach ($optionData['data'] as $key => $value) {
246+
$option->setData($key, $value);
247+
}
246248
$option->setData('selections', $selections);
247249
return $option;
248250
}
@@ -262,7 +264,9 @@ protected function createSelectionMock($selectionData)
262264

263265
// All items are saleable
264266
$selection->expects($this->any())->method('isSalable')->will($this->returnValue(true));
265-
$selection->setData($selectionData['data']);
267+
foreach ($selectionData['data'] as $key => $value) {
268+
$selection->setData($key, $value);
269+
}
266270
$amountMock = $this->createAmountMock($selectionData['amount']);
267271
$selection->expects($this->any())->method('getAmount')->will($this->returnValue($amountMock));
268272
$selection->expects($this->any())->method('getQuantity')->will($this->returnValue(1));

app/code/Magento/Bundle/etc/service_data_attributes.xml renamed to app/code/Magento/Bundle/etc/extension_attributes.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
* See COPYING.txt for license details.
66
*/
77
-->
8-
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Api/etc/service_data_attributes.xsd">
8+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Api/etc/extension_attributes.xsd">
99
<extension_attributes for="Magento\Catalog\Api\Data\ProductInterface">
1010
<attribute code="bundle_product_options" type="Magento\Bundle\Api\Data\OptionInterface[]" />
1111
</extension_attributes>

app/code/Magento/Captcha/etc/service_data_attributes.xml renamed to app/code/Magento/Captcha/etc/extension_attributes.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
* See COPYING.txt for license details.
66
*/
77
-->
8-
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Api/etc/service_data_attributes.xsd">
8+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Api/etc/extension_attributes.xsd">
99
<extension_attributes for="Magento\Quote\Api\Data\AddressAdditionalDataInterface">
1010
<attribute code="captcha_string" type="string" />
1111
<attribute code="captcha_form_id" type="string" />

app/code/Magento/Catalog/Model/AbstractModel.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ abstract class AbstractModel extends \Magento\Framework\Model\AbstractExtensible
6666
* @param AttributeValueFactory $customAttributeFactory
6767
* @param \Magento\Store\Model\StoreManagerInterface $storeManager
6868
* @param \Magento\Framework\Model\Resource\AbstractResource $resource
69-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
69+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
7070
* @param array $data
7171
*/
7272
public function __construct(
@@ -76,7 +76,7 @@ public function __construct(
7676
AttributeValueFactory $customAttributeFactory,
7777
\Magento\Store\Model\StoreManagerInterface $storeManager,
7878
\Magento\Framework\Model\Resource\AbstractResource $resource = null,
79-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
79+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
8080
array $data = []
8181
) {
8282
$this->_storeManager = $storeManager;

app/code/Magento/Catalog/Model/Category.php

+3-3
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ class Category extends \Magento\Catalog\Model\AbstractModel implements
234234
* @param \Magento\Indexer\Model\IndexerRegistry $indexerRegistry
235235
* @param CategoryRepositoryInterface $categoryRepository
236236
* @param \Magento\Framework\Model\Resource\AbstractResource $resource
237-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
237+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
238238
* @param array $data
239239
* @SuppressWarnings(PHPMD.ExcessiveParameterList)
240240
*/
@@ -258,7 +258,7 @@ public function __construct(
258258
\Magento\Indexer\Model\IndexerRegistry $indexerRegistry,
259259
CategoryRepositoryInterface $categoryRepository,
260260
\Magento\Framework\Model\Resource\AbstractResource $resource = null,
261-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
261+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
262262
array $data = []
263263
) {
264264
$this->metadataService = $metadataService;
@@ -451,7 +451,7 @@ public function getDefaultAttributeSetId()
451451
/**
452452
* Get category products collection
453453
*
454-
* @return \Magento\Framework\Data\Collection\Db
454+
* @return \Magento\Framework\Data\Collection\AbstractDb
455455
*/
456456
public function getProductCollection()
457457
{

app/code/Magento/Catalog/Model/CategoryLinkManagement.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public function getAssignedProducts($categoryId)
3838
$category = $this->categoryRepository->get($categoryId);
3939
$productsPosition = $category->getProductsPosition();
4040

41-
/** @var \Magento\Framework\Data\Collection\Db $products */
41+
/** @var \Magento\Framework\Data\Collection\AbstractDb $products */
4242
$products = $category->getProductCollection();
4343

4444
/** @var \Magento\Catalog\Api\Data\CategoryProductLinkInterface[] $links */

app/code/Magento/Catalog/Model/Config/Backend/Category.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ class Category extends \Magento\Framework\App\Config\Value
2727
* @param \Magento\Framework\App\Config\ScopeConfigInterface $config
2828
* @param \Magento\Catalog\Model\Category $catalogCategory
2929
* @param \Magento\Framework\Model\Resource\AbstractResource $resource
30-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
30+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
3131
* @param array $data
3232
*/
3333
public function __construct(
@@ -36,7 +36,7 @@ public function __construct(
3636
\Magento\Framework\App\Config\ScopeConfigInterface $config,
3737
\Magento\Catalog\Model\Category $catalogCategory,
3838
\Magento\Framework\Model\Resource\AbstractResource $resource = null,
39-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
39+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
4040
array $data = []
4141
) {
4242
$this->_catalogCategory = $catalogCategory;

app/code/Magento/Catalog/Model/Config/CatalogClone/Media/Image.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class Image extends \Magento\Framework\App\Config\Value
3333
* @param \Magento\Catalog\Model\Resource\Product\Attribute\CollectionFactory $attributeCollectionFactory
3434
* @param \Magento\Eav\Model\Config $eavConfig
3535
* @param \Magento\Framework\Model\Resource\AbstractResource $resource
36-
* @param \Magento\Framework\Data\Collection\Db $resourceCollection
36+
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
3737
* @param array $data
3838
*/
3939
public function __construct(
@@ -43,7 +43,7 @@ public function __construct(
4343
\Magento\Catalog\Model\Resource\Product\Attribute\CollectionFactory $attributeCollectionFactory,
4444
\Magento\Eav\Model\Config $eavConfig,
4545
\Magento\Framework\Model\Resource\AbstractResource $resource = null,
46-
\Magento\Framework\Data\Collection\Db $resourceCollection = null,
46+
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
4747
array $data = []
4848
) {
4949
$this->_attributeCollectionFactory = $attributeCollectionFactory;

0 commit comments

Comments
 (0)