Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
AccessValidatorTest.php
Go to the documentation of this file.
1 <?php
8 
9 class AccessValidatorTest extends \PHPUnit\Framework\TestCase
10 {
14  private $model;
15 
19  private $userContextMock;
20 
24  private $entityManagerMock;
25 
29  private $bulkSummaryFactoryMock;
30 
31  protected function setUp()
32  {
33  $this->userContextMock = $this->createMock(\Magento\Authorization\Model\UserContextInterface::class);
34  $this->entityManagerMock = $this->createMock(\Magento\Framework\EntityManager\EntityManager::class);
35  $this->bulkSummaryFactoryMock = $this->createPartialMock(
36  \Magento\AsynchronousOperations\Api\Data\BulkSummaryInterfaceFactory::class,
37  ['create']
38  );
39 
40  $this->model = new \Magento\AsynchronousOperations\Model\AccessValidator(
41  $this->userContextMock,
42  $this->entityManagerMock,
43  $this->bulkSummaryFactoryMock
44  );
45  }
46 
52  public function testIsAllowed($bulkUserId, $expectedResult)
53  {
54  $adminId = 1;
55  $uuid = 'test-001';
56  $bulkSummaryMock = $this->createMock(\Magento\AsynchronousOperations\Api\Data\BulkSummaryInterface::class);
57 
58  $this->bulkSummaryFactoryMock->expects($this->once())->method('create')->willReturn($bulkSummaryMock);
59  $this->entityManagerMock->expects($this->once())
60  ->method('load')
61  ->with($bulkSummaryMock, $uuid)
62  ->willReturn($bulkSummaryMock);
63 
64  $bulkSummaryMock->expects($this->once())->method('getUserId')->willReturn($bulkUserId);
65  $this->userContextMock->expects($this->once())->method('getUserId')->willReturn($adminId);
66 
67  $this->assertEquals($this->model->isAllowed($uuid), $expectedResult);
68  }
69 
73  public static function summaryDataProvider()
74  {
75  return [
76  [2, false],
77  [1, true]
78  ];
79  }
80 }