public function testSpamSetController() { $model = new Kwf_Model_Mail(array('tpl' => 'UserActivation')); $row = $model->createRow(); $row->addTo('*****@*****.**'); $row->subject = 'Buy cheap viagra'; $row->sent_mail_content_text = "cheap viagra cheap cialis buy now cheap viagra cheap cialis buy now\ncheap viagra cheap cialis buy now cheap viagra cheap cialis buy now"; $row->save(); $transport = $this->getMock('Zend_Mail_Transport_Abstract', array('_sendMail')); $transport->expects($this->never())->method('_sendMail'); $ret = Kwf_Controller_Action_Spam_SetController::sendSpammedMail($row->id, 'xx' . Kwf_Util_Check_Spam::getSpamKey($row), $transport); $this->assertFalse($ret); $transport = $this->getMock('Zend_Mail_Transport_Abstract', array('_sendMail')); $transport->expects($this->never())->method('_sendMail'); $ret = Kwf_Controller_Action_Spam_SetController::sendSpammedMail($row->id . '9999999999999999999', Kwf_Util_Check_Spam::getSpamKey($row), $transport); $this->assertFalse($ret); $transport = $this->getMock('Zend_Mail_Transport_Abstract', array('_sendMail')); $transport->expects($this->once())->method('_sendMail'); $ret = Kwf_Controller_Action_Spam_SetController::sendSpammedMail($row->id, Kwf_Util_Check_Spam::getSpamKey($row), $transport); $this->assertTrue($ret); $transport = $this->getMock('Zend_Mail_Transport_Abstract', array('_sendMail')); $transport->expects($this->never())->method('_sendMail'); $ret = Kwf_Controller_Action_Spam_SetController::sendSpammedMail($row->id, Kwf_Util_Check_Spam::getSpamKey($row), $transport); $this->assertFalse($ret); }
/** * Public only for testing!!! */ public static function sendSpammedMail($id, $key, $tranport = null) { $row = Kwf_Model_Abstract::getInstance('Kwf_Model_Mail')->getRow($id); if (!$row) { return false; } if (Kwf_Util_Check_Spam::getSpamKey($row) != $key) { return false; } if (!$row->mail_sent) { $row->is_spam = 0; $row->sendMail($tranport); // setzt mail_sent auf 1 und speichert return true; } return false; }