Set envelope data.
public setEnvelope ( array $data ) | ||
$data | array | The envelope data to pass to the Envelope object constructor, or an Envelope object. |
public function testClientSideThreadOrderedSubject() { $data = array(array('Sat, 26 Jul 2008 21:10:00 -0500 (CDT)', 'Test e-mail 1'), array('Sat, 26 Jul 2008 21:10:00 -0500 (CDT)', 'Test e-mail 2'), array('Sat, 26 Jul 2008 22:29:20 -0500 (CDT)', 'Re: Test e-mail 2'), array('Sat, 26 Jul 2008 21:10:00 -0500 (CDT)', 'Test e-mail 1')); $results = new Horde_Imap_Client_Fetch_Results(); foreach ($data as $key => $val) { $data = new Horde_Imap_Client_Data_Fetch(); $data->setEnvelope(new Horde_Imap_Client_Data_Envelope(array('date' => $val[0], 'subject' => $val[1]))); $results[++$key] = $data; } $thread = $this->sort_ob->threadOrderedSubject($results, true); foreach (array(1, 4) as $val) { $t = $thread->getThread($val); $this->assertEquals(array(1, 4), array_keys($t)); $this->assertEquals(1, $t[1]->base); $this->assertEquals(1, $t[1]->last); $this->assertEquals(0, $t[1]->level); $this->assertEquals(1, $t[4]->base); $this->assertEquals(1, $t[4]->last); $this->assertEquals(1, $t[4]->level); } foreach (array(2, 3) as $val) { $t = $thread->getThread($val); $this->assertEquals(array(2, 3), array_keys($t)); $this->assertEquals(2, $t[2]->base); $this->assertEquals(1, $t[2]->last); $this->assertEquals(0, $t[2]->level); $this->assertEquals(2, $t[3]->base); $this->assertEquals(1, $t[3]->last); $this->assertEquals(1, $t[3]->level); } }
public function testGetReplyCcList() { $data = new Horde_Imap_Client_Data_Fetch(); $data->setEnvelope(array('to' => 'a@b.org, tom@example.org, b@example.org', 'cc' => 'a@b.org, tom@example.org, a@example.org')); $message = new \OCA\Mail\Message(null, 'INBOX', 123, $data); $cc = $message->getReplyCcList('*****@*****.**'); $this->assertTrue(is_array($cc)); $this->assertEquals(3, count($cc)); $cc = array_map(function ($item) { return $item['email']; }, $cc); $this->assertTrue(in_array('*****@*****.**', $cc)); $this->assertTrue(in_array('*****@*****.**', $cc)); $this->assertTrue(in_array('*****@*****.**', $cc)); }
/** * TODO */ public function fetchEnvelope($indices) { $result = array(); foreach ($indices as $uid) { foreach (array_keys($this->_folders['INBOX']) as $i) { if ($this->_folders['INBOX'][$i]['uid'] == $uid) { $fetch = new Horde_Imap_Client_Data_Fetch(); $fetch->setEnvelope(array('from' => $this->_fixtures[$this->_folders['INBOX'][$i]['fixture']]->getValue('from'))); $fetch->setUid = $uid; $result[$uid] = $fetch; } } } return $result; }