/** * @depends testLoadOutboundSettings */ public function testLoadOutboundSettingsFromUserEmailAccount() { $billy = User::getByUsername('billy'); Yii::app()->user->userModel = $billy; $emailHelper = new EmailHelper(); //Load outbound setting when no EmailAccount was created try { $emailHelper->loadOutboundSettingsFromUserEmailAccount($billy); $this->fail(); } catch (NotFoundException $e) { $this->addToAssertionCount(1); } //Load outbound setting when EmailAccount useCustomOutboundSettings = false EmailMessageTestHelper::createEmailAccount($billy); $emailHelper->loadOutboundSettingsFromUserEmailAccount($billy); $this->assertEquals('smtp', $emailHelper->outboundType); $this->assertEquals(Yii::app()->params['emailTestAccounts']['smtpSettings']['outboundPort'], $emailHelper->outboundPort); //outboundHost was set on @testLoadOutboundSettingsFromUserEmailAccount $this->assertEquals('xxx', $emailHelper->outboundHost); $this->assertEquals($emailHelper->defaultTestToAddress, $emailHelper->fromAddress); $this->assertEquals(strval($billy), $emailHelper->fromName); //Load outbound setting when EmailAccount useCustomOutboundSettings = true $emailAccount = EmailAccount::getByUserAndName($billy); $emailAccount->useCustomOutboundSettings = EmailMessageUtil::OUTBOUND_PERSONAL_SMTP_SETTINGS; $emailAccount->outboundType = 'xyz'; $emailAccount->outboundPort = 55; $emailAccount->outboundHost = 'zurmo.com'; $emailAccount->outboundUsername = '******'; $emailAccount->outboundPassword = '******'; $emailAccount->outboundSecurity = 'ssl'; $emailAccount->save(); $emailHelper->loadOutboundSettingsFromUserEmailAccount($billy); $this->assertEquals('xyz', $emailHelper->outboundType); $this->assertEquals(55, $emailHelper->outboundPort); $this->assertEquals('zurmo.com', $emailHelper->outboundHost); $this->assertEquals('billy', $emailHelper->outboundUsername); $this->assertEquals('billypass', $emailHelper->outboundPassword); $this->assertEquals('ssl', $emailHelper->outboundSecurity); $this->assertEquals($billy->getFullName(), $emailHelper->fromName); $this->assertEquals('*****@*****.**', $emailHelper->fromAddress); }