21 private $persistentSessionMock;
26 private $customerRepositoryMock;
31 private $customerViewHelperMock;
51 $objectManagerHelper =
new ObjectManagerHelper($this);
52 $this->persistentSessionMock = $this->getMockBuilder(\
Magento\Persistent\Helper\Session::class)
53 ->disableOriginalConstructor()
55 $this->customerRepositoryMock = $this->getMockBuilder(\
Magento\Customer\Api\CustomerRepositoryInterface::class)
56 ->disableOriginalConstructor()
58 $this->customerViewHelperMock = $this->getMockBuilder(\
Magento\Customer\Helper\View::class)
59 ->disableOriginalConstructor()
61 $this->escaperMock = $this->getMockBuilder(\
Magento\Framework\Escaper::class)
62 ->disableOriginalConstructor()
64 $this->layoutMock = $this->getMockBuilder(\
Magento\Framework\View\LayoutInterface::class)
65 ->disableOriginalConstructor()
67 $this->sessionMock = $this->getMockBuilder(\
Magento\Persistent\Helper\Session::class)
68 ->disableOriginalConstructor()
69 ->setMethods([
'getCustomerId'])
71 $this->observer = $objectManagerHelper->getObject(
72 \
Magento\Persistent\Model\Observer::class,
74 'persistentSession' => $this->persistentSessionMock,
75 'customerRepository' => $this->customerRepositoryMock,
76 'customerViewHelper' => $this->customerViewHelperMock,
77 'escaper' => $this->escaperMock,
78 'layout' => $this->layoutMock
86 $customerName =
'Test Customer Name';
88 $customerMock = $this->getMockForAbstractClass(\
Magento\Customer\Api\Data\CustomerInterface::class);
89 $block = $this->getMockBuilder(\
Magento\Framework\View\Element\AbstractBlock::class)
90 ->disableOriginalConstructor()
91 ->setMethods([
'setWelcome'])
93 $headerAdditionalBlock = $this->getMockBuilder(\
Magento\Framework\View\Element\AbstractBlock::class)
94 ->disableOriginalConstructor()
96 $this->persistentSessionMock->expects($this->once())->method(
'getSession')->willReturn($this->sessionMock);
97 $this->sessionMock->expects($this->once())->method(
'getCustomerId')->willReturn(
$customerId);
98 $this->customerRepositoryMock
99 ->expects($this->once())
102 $this->customerViewHelperMock->expects($this->once())->method(
'getCustomerName')->willReturn($customerName);
103 $this->layoutMock->expects($this->once())
105 ->with(
'header.additional')
106 ->willReturn($headerAdditionalBlock);
108 $this->observer->emulateWelcomeBlock(
$block);
testEmulateWelcomeBlock()