public function testAddPaypalShortcutsNotEnabled() { $orPosition = 'before'; $containerMock = $this->getMockBuilder('\\Magento\\Catalog\\Block\\ShortcutButtons')->disableOriginalConstructor()->getMock(); $event = new \Magento\Framework\DataObject(['is_catalog_product' => false, 'container' => $containerMock, 'or_position' => $orPosition]); $observer = new \Magento\Framework\Event\Observer(['event' => $event]); $this->paypalMethodMock->expects($this->once())->method('isActive')->willReturn(true); $this->paypalConfigMock->expects($this->once())->method('isShortcutCheckoutEnabled')->willReturn(false); $containerMock->expects($this->never())->method('getLayout'); $this->addPaypalShortcutsObserver->execute($observer); }
public function testExecute() { $addPaypalShortcuts = new AddPaypalShortcuts(); /** @var Observer|\PHPUnit_Framework_MockObject_MockObject $observerMock */ $observerMock = $this->getMockBuilder(Observer::class)->disableOriginalConstructor()->getMock(); /** @var Event|\PHPUnit_Framework_MockObject_MockObject $eventMock */ $eventMock = $this->getMockBuilder(Event::class)->setMethods(['getContainer'])->disableOriginalConstructor()->getMock(); /** @var ShortcutButtons|\PHPUnit_Framework_MockObject_MockObject $shortcutButtonsMock */ $shortcutButtonsMock = $this->getMockBuilder(ShortcutButtons::class)->disableOriginalConstructor()->getMock(); $layoutMock = $this->getMockBuilder(LayoutInterface::class)->getMockForAbstractClass(); $blockMock = $this->getMockBuilder(Button::class)->disableOriginalConstructor()->getMock(); $observerMock->expects(self::once())->method('getEvent')->willReturn($eventMock); $eventMock->expects(self::once())->method('getContainer')->willReturn($shortcutButtonsMock); $shortcutButtonsMock->expects(self::once())->method('getLayout')->willReturn($layoutMock); $layoutMock->expects(self::once())->method('createBlock')->with(AddPaypalShortcuts::PAYPAL_SHORTCUT_BLOCK)->willReturn($blockMock); $shortcutButtonsMock->expects(self::once())->method('addShortcut')->with($blockMock); $addPaypalShortcuts->execute($observerMock); }