/** * Invoke CreditmemoList service * * @param \Magento\Framework\Service\V1\Data\SearchCriteria $searchCriteria * @return \Magento\Framework\Service\V1\Data\SearchResults */ public function invoke(SearchCriteria $searchCriteria) { $creditmemos = []; foreach ($this->creditmemoRepository->find($searchCriteria) as $creditmemo) { $creditmemos[] = $this->creditmemoMapper->extractDto($creditmemo); } return $this->searchResultsBuilder->setItems($creditmemos)->setTotalCount(count($creditmemos))->setSearchCriteria($searchCriteria)->create(); }
/** * Test creditmemo list service * * @return void */ public function testCreditmemo() { $this->creditmemoRepositoryMock->expects($this->once())->method('find')->with($this->equalTo($this->searchCriteriaMock))->will($this->returnValue([$this->creditmemoMock])); $this->creditmemoMapperMock->expects($this->once())->method('extractDto')->with($this->equalTo($this->creditmemoMock))->will($this->returnValue($this->dataObjectMock)); $this->searchResultsBuilderMock->expects($this->once())->method('setItems')->with($this->equalTo([$this->dataObjectMock]))->will($this->returnSelf()); $this->searchResultsBuilderMock->expects($this->once())->method('setTotalCount')->with($this->equalTo(count($this->creditmemoMock)))->will($this->returnSelf()); $this->searchResultsBuilderMock->expects($this->once())->method('setSearchCriteria')->with($this->equalTo($this->searchCriteriaMock))->will($this->returnSelf()); $this->searchResultsBuilderMock->expects($this->once())->method('create')->will($this->returnValue('expected-result')); $this->assertEquals('expected-result', $this->creditmemoList->invoke($this->searchCriteriaMock)); }
/** * Run creditmemo mapper test * * @return void */ public function testInvoke() { $this->creditmemoMock->expects($this->once())->method('getData')->will($this->returnValue(['field-1' => 'value-1'])); $this->creditmemoMock->expects($this->once())->method('getAllItems')->will($this->returnValue([$this->creditmemoItemMock])); $this->creditmemoBuilderMock->expects($this->once())->method('populateWithArray')->with($this->equalTo(['field-1' => 'value-1']))->will($this->returnSelf()); $this->creditmemoItemMapperMock->expects($this->once())->method('extractDto')->with($this->equalTo($this->creditmemoItemMock))->will($this->returnValue('item-1')); $this->creditmemoBuilderMock->expects($this->once())->method('setItems')->with($this->equalTo(['item-1']))->will($this->returnSelf()); $this->creditmemoBuilderMock->expects($this->once())->method('create')->will($this->returnValue('data-object-with-creditmemo')); $this->assertEquals('data-object-with-creditmemo', $this->creditmemoMapper->extractDto($this->creditmemoMock)); }
/** * Invoke creditmemo get service * * @param int $id * @return \Magento\Sales\Service\V1\Data\Creditmemo * @throws \Magento\Framework\Exception\NoSuchEntityException */ public function invoke($id) { return $this->creditmemoMapper->extractDto($this->creditmemoRepository->get($id)); }
/** * Test creditmemo get service */ public function testInvoke() { $this->creditmemoRepositoryMock->expects($this->once())->method('get')->with($this->equalTo(1))->will($this->returnValue($this->creditmemoMock)); $this->creditmemoMapperMock->expects($this->once())->method('extractDto')->with($this->equalTo($this->creditmemoMock))->will($this->returnValue($this->dataObjectMock)); $this->assertEquals($this->dataObjectMock, $this->creditmemoGet->invoke(1)); }