123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\AsynchronousOperations\Test\Unit\Model;
- /**
- * Class OperationManagementTest
- */
- class OperationManagementTest extends \PHPUnit\Framework\TestCase
- {
- /**
- * @var \Magento\AsynchronousOperations\Model\OperationManagement
- */
- private $model;
- /**
- * @var \PHPUnit_Framework_MockObject_MockObject
- */
- private $entityManagerMock;
- /**
- * @var \PHPUnit_Framework_MockObject_MockObject
- */
- private $operationFactoryMock;
- /**
- * @var \PHPUnit_Framework_MockObject_MockObject
- */
- private $operationMock;
- /**
- * @var \PHPUnit_Framework_MockObject_MockObject
- */
- private $loggerMock;
-
- protected function setUp()
- {
- $this->entityManagerMock = $this->createMock(\Magento\Framework\EntityManager\EntityManager::class);
- $this->metadataPoolMock = $this->createMock(\Magento\Framework\EntityManager\MetadataPool::class);
- $this->operationFactoryMock = $this->createPartialMock(
- \Magento\AsynchronousOperations\Api\Data\OperationInterfaceFactory::class,
- ['create']
- );
- $this->operationMock =
- $this->createMock(\Magento\AsynchronousOperations\Api\Data\OperationInterface::class);
- $this->loggerMock = $this->createMock(\Psr\Log\LoggerInterface::class);
- $this->model = new \Magento\AsynchronousOperations\Model\OperationManagement(
- $this->entityManagerMock,
- $this->operationFactoryMock,
- $this->loggerMock
- );
- }
- public function testChangeOperationStatus()
- {
- $operationId = 1;
- $status = 1;
- $message = 'Message';
- $data = 'data';
- $errorCode = 101;
- $this->operationFactoryMock->expects($this->once())->method('create')->willReturn($this->operationMock);
- $this->entityManagerMock->expects($this->once())->method('load')->with($this->operationMock, $operationId);
- $this->operationMock->expects($this->once())->method('setStatus')->with($status)->willReturnSelf();
- $this->operationMock->expects($this->once())->method('setResultMessage')->with($message)->willReturnSelf();
- $this->operationMock->expects($this->once())->method('setSerializedData')->with($data)->willReturnSelf();
- $this->operationMock->expects($this->once())->method('setErrorCode')->with($errorCode)->willReturnSelf();
- $this->entityManagerMock->expects($this->once())->method('save')->with($this->operationMock);
- $this->assertTrue($this->model->changeOperationStatus($operationId, $status, $errorCode, $message, $data));
- }
- public function testChangeOperationStatusIfExceptionWasThrown()
- {
- $operationId = 1;
- $status = 1;
- $message = 'Message';
- $data = 'data';
- $errorCode = 101;
- $this->operationFactoryMock->expects($this->once())->method('create')->willReturn($this->operationMock);
- $this->entityManagerMock->expects($this->once())->method('load')->with($this->operationMock, $operationId);
- $this->operationMock->expects($this->once())->method('setStatus')->with($status)->willReturnSelf();
- $this->operationMock->expects($this->once())->method('setResultMessage')->with($message)->willReturnSelf();
- $this->operationMock->expects($this->once())->method('setSerializedData')->with($data)->willReturnSelf();
- $this->operationMock->expects($this->once())->method('setErrorCode')->with($errorCode)->willReturnSelf();
- $this->entityManagerMock->expects($this->once())->method('save')->willThrowException(new \Exception());
- $this->loggerMock->expects($this->once())->method('critical');
- $this->assertFalse($this->model->changeOperationStatus($operationId, $status, $errorCode, $message, $data));
- }
- }
|