public function testSyncRemove() { $this->eventObserverMock->expects($this->once())->method('getDataObject')->willReturn($this->salesModelMock); $this->salesModelMock->expects($this->once())->method('getId')->willReturn('sales-id-value'); $this->gridAggregatorMock->expects($this->once())->method('purge')->with('sales-id-value'); $this->unit->execute($this->eventObserverMock); }
public function testAsyncInsertDisabled() { $this->scopeConfigurationMock->expects($this->once())->method('getValue')->with('dev/grid/async_indexing', 'default', null)->willReturn(false); $this->gridAggregatorMock->expects($this->never())->method('refreshBySchedule'); $this->unit->asyncInsert(); }
/** * Handles synchronous removing of the entity from * corresponding grid on certain events. * * Used in the next events: * * - sales_order_delete_after * - sales_order_invoice_delete_after * - sales_order_shipment_delete_after * - sales_order_creditmemo_delete_after * * @param \Magento\Framework\Event\Observer $observer * @return void */ public function execute(\Magento\Framework\Event\Observer $observer) { $this->entityGrid->purge($observer->getDataObject()->getId()); }
/** * Handles asynchronous insertion of the new entity into * corresponding grid during cron job. * * Also method is used in the next events: * * - config_data_dev_grid_async_indexing_disabled * * Works only if asynchronous grid indexing is enabled * in global settings. * * @return void */ public function asyncInsert() { if ($this->globalConfig->getValue('dev/grid/async_indexing')) { $this->entityGrid->refreshBySchedule(); } }
public function testSyncInsertDisabled() { $this->scopeConfigurationMock->expects($this->once())->method('getValue')->with('dev/grid/async_indexing', 'default', null)->willReturn(true); $this->gridAggregatorMock->expects($this->never())->method('refresh')->with('sales-id-value'); $this->unit->execute($this->eventObserverMock); }
/** * Handles synchronous insertion of the new entity into * corresponding grid on certain events. * * Used in the next events: * * - sales_order_save_after * - sales_order_invoice_save_after * - sales_order_shipment_save_after * - sales_order_creditmemo_save_after * * Works only if asynchronous grid indexing is disabled * in global settings. * * @param \Magento\Framework\Event\Observer $observer * @return void */ public function execute(\Magento\Framework\Event\Observer $observer) { if (!$this->globalConfig->getValue('dev/grid/async_indexing')) { $this->entityGrid->refresh($observer->getObject()->getId()); } }