Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
MessageProcessorLoaderTest.php
Go to the documentation of this file.
1 <?php
7 
9 
13 class MessageProcessorLoaderTest extends \PHPUnit\Framework\TestCase
14 {
18  private $mergedMessageProcessor;
19 
23  private $defaultMessageProcessor;
24 
28  private $messageProcessorLoader;
29 
35  protected function setUp()
36  {
37  $this->mergedMessageProcessor = $this
38  ->getMockBuilder(\Magento\Framework\MessageQueue\MessageProcessorInterface::class)
39  ->disableOriginalConstructor()
40  ->getMockForAbstractClass();
41  $this->defaultMessageProcessor = $this
42  ->getMockBuilder(\Magento\Framework\MessageQueue\MessageProcessorInterface::class)
43  ->disableOriginalConstructor()
44  ->getMockForAbstractClass();
45 
46  $objectManagerHelper = new ObjectManagerHelper($this);
47  $this->messageProcessorLoader = $objectManagerHelper->getObject(
48  \Magento\Framework\MessageQueue\MessageProcessorLoader::class,
49  [
50  'mergedMessageProcessor' => $this->mergedMessageProcessor,
51  'defaultMessageProcessor' => $this->defaultMessageProcessor
52  ]
53  );
54  }
55 
62  public function testLoad($message)
63  {
64  $messageTopic = 'topic';
65  $messages = [
66  $messageTopic => [$message]
67  ];
68 
69  $this->assertInstanceOf(
70  \Magento\Framework\MessageQueue\MessageProcessorInterface::class,
71  $this->messageProcessorLoader->load($messages)
72  );
73  }
74 
80  public function loadDataProvider()
81  {
82  $mergedMessage = $this->getMockBuilder(\Magento\Framework\MessageQueue\MergedMessageInterface::class)
83  ->disableOriginalConstructor()
84  ->getMockForAbstractClass();
85  $message = $this->getMockBuilder(\Magento\Framework\MessageQueue\EnvelopeInterface::class)
86  ->disableOriginalConstructor()
87  ->getMockForAbstractClass();
88 
89  return [
90  [$mergedMessage],
91  [$message]
92  ];
93  }
94 }
$message