42 private $transportBuilderByStore;
47 $templateOptions = [
'option1',
'option2'];
48 $templateVars = [
'var1',
'var2'];
49 $emailIdentity =
'email_identity_test';
52 $this->templateContainerMock = $this->createPartialMock(
53 \
Magento\Sales\Model\
Order\Email\Container\Template::class,
54 [
'getTemplateVars',
'getTemplateOptions',
'getTemplateId']
57 $this->storeMock = $this->createPartialMock(\
Magento\Store\Model\Store::class, [
63 $this->identityContainerMock = $this->createPartialMock(
64 \
Magento\Sales\Model\
Order\Email\Container\ShipmentIdentity::class,
76 $this->transportBuilder = $this->createPartialMock(
77 \
Magento\Framework\Mail\Template\TransportBuilder::class,
82 'setTemplateIdentifier',
88 $this->transportBuilderByStore = $this->createMock(TransportBuilderByStore::class);
90 $this->templateContainerMock->expects($this->once())
91 ->method(
'getTemplateId')
93 $this->transportBuilder->expects($this->once())
94 ->method(
'setTemplateIdentifier')
96 $this->templateContainerMock->expects($this->once())
97 ->method(
'getTemplateOptions')
98 ->will($this->returnValue($templateOptions));
99 $this->transportBuilder->expects($this->once())
100 ->method(
'setTemplateOptions')
101 ->with($this->equalTo($templateOptions));
102 $this->templateContainerMock->expects($this->once())
103 ->method(
'getTemplateVars')
104 ->will($this->returnValue($templateVars));
105 $this->transportBuilder->expects($this->once())
106 ->method(
'setTemplateVars')
107 ->with($this->equalTo($templateVars));
109 $this->identityContainerMock->expects($this->once())
110 ->method(
'getEmailIdentity')
111 ->will($this->returnValue($emailIdentity));
112 $this->transportBuilderByStore->expects($this->once())
113 ->method(
'setFromByStore')
114 ->with($this->equalTo($emailIdentity));
116 $this->identityContainerMock->expects($this->once())
117 ->method(
'getEmailCopyTo')
118 ->will($this->returnValue($emailCopyTo));
121 $this->templateContainerMock,
122 $this->identityContainerMock,
123 $this->transportBuilder,
124 $this->transportBuilderByStore
130 $customerName =
'test_name';
132 $transportMock = $this->createMock(
133 \
Magento\Sales\Test\Unit\Model\
Order\Email\Stub\TransportInterfaceMock::class
136 $this->identityContainerMock->expects($this->once())
137 ->method(
'getEmailCopyTo')
139 $this->identityContainerMock->expects($this->once())
140 ->method(
'getCopyMethod')
141 ->will($this->returnValue(
'bcc'));
142 $this->identityContainerMock->expects($this->once())
143 ->method(
'getCustomerEmail')
145 $this->identityContainerMock->expects($this->once())
146 ->method(
'getCustomerName')
147 ->will($this->returnValue($customerName));
148 $this->identityContainerMock->expects($this->once())
150 ->willReturn($this->storeMock);
151 $this->storeMock->expects($this->once())
154 $this->transportBuilder->expects($this->once())
156 ->with($this->equalTo(
$customerEmail), $this->equalTo($customerName));
158 $this->transportBuilder->expects($this->once())
159 ->method(
'getTransport')
160 ->will($this->returnValue($transportMock));
162 $this->senderBuilder->send();
167 $transportMock = $this->createMock(
168 \
Magento\Sales\Test\Unit\Model\
Order\Email\Stub\TransportInterfaceMock::class
170 $this->identityContainerMock->expects($this->once())
171 ->method(
'getCopyMethod')
172 ->will($this->returnValue(
'copy'));
173 $this->identityContainerMock->expects($this->never())
174 ->method(
'getCustomerEmail');
175 $this->identityContainerMock->expects($this->never())
176 ->method(
'getCustomerName');
177 $this->transportBuilder->expects($this->once())
180 $this->identityContainerMock->expects($this->once())
182 ->willReturn($this->storeMock);
183 $this->storeMock->expects($this->once())
186 $this->transportBuilder->expects($this->once())
187 ->method(
'getTransport')
188 ->will($this->returnValue($transportMock));
190 $this->senderBuilder->sendCopyTo();