Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
DeprecatedConfigTest.php
Go to the documentation of this file.
1 <?php
7 
9 
15 class DeprecatedConfigTest extends \PHPUnit\Framework\TestCase
16 {
20  private $objectManager;
21 
22  protected function setUp()
23  {
25  }
26 
27  public function testGetConsumerMultipleHandlersFromCommunicationConfig()
28  {
30  $config = $this->objectManager->create(\Magento\Framework\MessageQueue\Consumer\ConfigInterface::class);
31  $consumer = $config->getConsumer('deprecatedConfigAsyncBoolConsumer');
32 
33  $this->assertEquals('deprecatedConfigAsyncBoolConsumer', $consumer->getName());
34  $this->assertEquals('deprecated.config.queue.2', $consumer->getQueue());
35  $this->assertEquals('db', $consumer->getConnection());
36  $this->assertEquals(\Magento\Framework\MessageQueue\ConsumerInterface::class, $consumer->getConsumerInstance());
37  $this->assertEquals(null, $consumer->getMaxMessages());
38 
39  $handlers = $consumer->getHandlers();
40  $this->assertInstanceOf(HandlerIterator::class, $handlers);
41  $this->assertCount(2, $handlers);
42  $this->assertEquals('methodWithBoolParam', $handlers[0]->getMethod());
43  $this->assertEquals(\Magento\TestModuleMessageQueueConfiguration\AsyncHandler::class, $handlers[0]->getType());
44  $this->assertEquals('methodWithMixedParam', $handlers[1]->getMethod());
45  $this->assertEquals(\Magento\TestModuleMessageQueueConfiguration\AsyncHandler::class, $handlers[1]->getType());
46  }
47 
48  public function testGetConsumerCustomHandler()
49  {
51  $config = $this->objectManager->create(\Magento\Framework\MessageQueue\Consumer\ConfigInterface::class);
52  $consumer = $config->getConsumer('deprecatedConfigAsyncMixedConsumer');
53 
54  $this->assertEquals('deprecatedConfigAsyncMixedConsumer', $consumer->getName());
55  $this->assertEquals('deprecated.config.queue.3', $consumer->getQueue());
56  $this->assertEquals('amqp', $consumer->getConnection());
57  $this->assertEquals(\Magento\Framework\MessageQueue\ConsumerInterface::class, $consumer->getConsumerInstance());
58  $this->assertEquals(null, $consumer->getMaxMessages());
59 
60  $handlers = $consumer->getHandlers();
61  $this->assertInstanceOf(HandlerIterator::class, $handlers);
62  $this->assertCount(1, $handlers);
63  $this->assertEquals('methodWithMixedParam', $handlers[0]->getMethod());
64  $this->assertEquals(\Magento\TestModuleMessageQueueConfiguration\AsyncHandler::class, $handlers[0]->getType());
65  }
66 
67  public function testGetConsumerCustomConnectionSync()
68  {
70  $config = $this->objectManager->create(\Magento\Framework\MessageQueue\Consumer\ConfigInterface::class);
71  $consumer = $config->getConsumer('deprecatedConfigSyncBoolConsumer');
72 
73  $this->assertEquals('deprecatedConfigSyncBoolConsumer', $consumer->getName());
74  $this->assertEquals('deprecated.config.queue.4', $consumer->getQueue());
75  $this->assertEquals('amqp', $consumer->getConnection());
76  $this->assertEquals(\Magento\Framework\MessageQueue\ConsumerInterface::class, $consumer->getConsumerInstance());
77  $this->assertEquals(null, $consumer->getMaxMessages());
78 
79  $handlers = $consumer->getHandlers();
80  $this->assertInstanceOf(HandlerIterator::class, $handlers);
81  $this->assertCount(1, $handlers);
82  $this->assertEquals('methodWithBoolParam', $handlers[0]->getMethod());
83  $this->assertEquals(\Magento\TestModuleMessageQueueConfiguration\SyncHandler::class, $handlers[0]->getType());
84  }
85 
86  public function testGetConsumerCustomConsumerAndMaxMessages()
87  {
89  $config = $this->objectManager->create(\Magento\Framework\MessageQueue\Consumer\ConfigInterface::class);
90  $consumer = $config->getConsumer('deprecatedConfigAsyncStringConsumer');
91 
92  $this->assertEquals('deprecatedConfigAsyncStringConsumer', $consumer->getName());
93  $this->assertEquals('deprecated.config.queue.1', $consumer->getQueue());
94  $this->assertEquals('amqp', $consumer->getConnection());
95  $this->assertEquals(\Magento\Framework\MessageQueue\BatchConsumer::class, $consumer->getConsumerInstance());
96  $this->assertEquals(200, $consumer->getMaxMessages());
97 
98  $handlers = $consumer->getHandlers();
99  $this->assertInstanceOf(HandlerIterator::class, $handlers);
100  $this->assertCount(0, $handlers);
101  }
102 
103  public function testGetOverlapWithQueueConfig()
104  {
106  $config = $this->objectManager->create(\Magento\Framework\MessageQueue\Consumer\ConfigInterface::class);
107  $consumer = $config->getConsumer('overlappingConsumerDeclaration');
108 
109  $this->assertEquals('overlappingConsumerDeclaration', $consumer->getName());
110  $this->assertEquals('consumer.config.queue', $consumer->getQueue());
111  $this->assertEquals('amqp', $consumer->getConnection());
112  $this->assertEquals(\Magento\Framework\MessageQueue\ConsumerInterface::class, $consumer->getConsumerInstance());
113  $this->assertEquals(null, $consumer->getMaxMessages());
114 
115  $handlers = $consumer->getHandlers();
116  $this->assertInstanceOf(HandlerIterator::class, $handlers);
117  $this->assertCount(0, $handlers);
118  }
119 }
$config
Definition: fraud_order.php:17