/** * {@inheritdoc} */ public function search(SearchCriteria $searchCriteria) { $transactions = []; foreach ($this->transactionRepository->find($searchCriteria) as $transaction) { $transactions[] = $this->transactionMapper->extractDto($transaction, true); } return $this->searchResultsBuilder->setItems($transactions)->setTotalCount(count($transactions))->setSearchCriteria($searchCriteria)->create(); }
/** * @dataProvider lazyDataProvider * @param bool $lazy */ public function testExtractDto($lazy) { list($id, $data) = [1, []]; $transactionModelMock = $this->getMockBuilder('Magento\\Sales\\Model\\Order\\Payment\\Transaction')->disableOriginalConstructor()->setMethods([])->getMock(); $transactionDtoMock = $this->getMockBuilder('Magento\\Sales\\Service\\V1\\Data\\Transaction')->disableOriginalConstructor()->setMethods([])->getMock(); $this->prepareTransactionOrder($transactionModelMock, $id); $transactionModelMock->expects($this->once())->method('getData')->will($this->returnValue($data)); $this->transactionBuilderMock->expects($this->once())->method('populateWithArray')->with($data); $transactionModelMock->expects($this->once())->method('getAdditionalInformation')->will($this->returnValue([])); $this->transactionBuilderMock->expects($this->once())->method('setAdditionalInformation')->with([]); $this->transactionBuilderMock->expects($this->once())->method('setIncrementId')->with($id); $transactionModelMock->expects($this->any())->method('getChildTransactions')->will($this->returnValue([])); $this->transactionBuilderMock->expects($this->once())->method('setChildTransactions')->with([]); $this->transactionBuilderMock->expects($this->once())->method('create')->will($this->returnValue($transactionDtoMock)); $this->assertSame($transactionDtoMock, $this->transactionMapper->extractDto($transactionModelMock, $lazy)); }
/** * @dataProvider lazyDataProvider * @param bool $lazy */ public function testExtractDto($lazy) { $id = 1; $transactionModelMock = $this->getMockBuilder('Magento\\Sales\\Model\\Order\\Payment\\Transaction')->disableOriginalConstructor()->setMethods([])->getMock(); $transactionDtoMock = $this->getMockBuilder('Magento\\Sales\\Service\\V1\\Data\\Transaction')->disableOriginalConstructor()->setMethods([])->getMock(); $this->prepareTransactionOrder($transactionModelMock, $id); $this->transactionBuilderMock->expects($this->once())->method('setTransactionId'); $this->transactionBuilderMock->expects($this->once())->method('setParentId'); $this->transactionBuilderMock->expects($this->once())->method('setOrderId'); $this->transactionBuilderMock->expects($this->once())->method('setTxnId'); $this->transactionBuilderMock->expects($this->once())->method('setPaymentId'); $this->transactionBuilderMock->expects($this->once())->method('setParentTxnId'); $this->transactionBuilderMock->expects($this->once())->method('setTxnType'); $this->transactionBuilderMock->expects($this->once())->method('setIsClosed'); $this->transactionBuilderMock->expects($this->once())->method('setCreatedAt'); $this->transactionBuilderMock->expects($this->once())->method('setMethod'); $transactionModelMock->expects($this->once())->method('getAdditionalInformation')->will($this->returnValue([])); $this->transactionBuilderMock->expects($this->once())->method('setAdditionalInformation')->with([]); $this->transactionBuilderMock->expects($this->once())->method('setIncrementId')->with($id); $transactionModelMock->expects($this->any())->method('getChildTransactions')->will($this->returnValue([])); $this->transactionBuilderMock->expects($this->once())->method('setChildTransactions')->with([]); $this->transactionBuilderMock->expects($this->once())->method('create')->will($this->returnValue($transactionDtoMock)); $this->assertSame($transactionDtoMock, $this->transactionMapper->extractDto($transactionModelMock, $lazy)); }