osInfoMock = $this->createMock(OsInfo::class); $this->configMock = $this->createMock(ReinitableConfigInterface::class); $this->transportMock = $this->createMock(TransportInterface::class); $this->windowsSmtpConfig = $objectManager->getObject( WindowsSmtpConfig::class, [ 'config' => $this->configMock, 'osInfo' => $this->osInfoMock ] ); } /** * Test if SMTP settings if windows server * * @return void */ public function testBeforeSendMessageOsWindows(): void { $this->osInfoMock->expects($this->once()) ->method('isWindows') ->willReturn(true); $this->configMock->expects($this->exactly(2)) ->method('getValue') ->willReturnMap([ [WindowsSmtpConfig::XML_SMTP_HOST, '127.0.0.1'], [WindowsSmtpConfig::XML_SMTP_PORT, '80'] ]); $this->windowsSmtpConfig->beforeSendMessage($this->transportMock); } /** * Test if SMTP settings if not windows server * * @return void */ public function testBeforeSendMessageOsIsWindows(): void { $this->osInfoMock->expects($this->once()) ->method('isWindows') ->willReturn(false); $this->configMock->expects($this->never()) ->method('getValue'); $this->windowsSmtpConfig->beforeSendMessage($this->transportMock); } }