| | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * Test parse_message() |
| | | */ |
| | | function test_parse_message() |
| | | { |
| | | $file = file_get_contents(__DIR__ . '/../src/html.msg'); |
| | | $result = rcube_mime::parse_message($file); |
| | | |
| | | $this->assertInstanceOf('rcube_message_part', $result); |
| | | $this->assertSame('multipart/alternative', $result->mimetype); |
| | | $this->assertSame('1.0', $result->headers['mime-version']); |
| | | $this->assertSame('=_68eeaf4ab95b5312965e45c33362338e', $result->ctype_parameters['boundary']); |
| | | $this->assertSame('1', $result->parts[0]->mime_id); |
| | | $this->assertSame(12, $result->parts[0]->size); |
| | | $this->assertSame('text/plain', $result->parts[0]->mimetype); |
| | | $this->assertSame("this is test", $result->parts[0]->body); |
| | | $this->assertSame('2', $result->parts[1]->mime_id); |
| | | $this->assertSame(0, $result->parts[1]->size); |
| | | $this->assertSame('multipart/related', $result->parts[1]->mimetype); |
| | | $this->assertCount(2, $result->parts[1]->parts); |
| | | $this->assertSame('2.1', $result->parts[1]->parts[0]->mime_id); |
| | | $this->assertSame(257, $result->parts[1]->parts[0]->size); |
| | | $this->assertSame('text/html', $result->parts[1]->parts[0]->mimetype); |
| | | $this->assertSame('UTF-8', $result->parts[1]->parts[0]->charset); |
| | | $this->assertRegExp('/<html>/', $result->parts[1]->parts[0]->body); |
| | | $this->assertSame('2.2', $result->parts[1]->parts[1]->mime_id); |
| | | $this->assertSame(793, $result->parts[1]->parts[1]->size); |
| | | $this->assertSame('image/jpeg', $result->parts[1]->parts[1]->mimetype); |
| | | $this->assertSame('base64', $result->parts[1]->parts[1]->encoding); |
| | | $this->assertSame('inline', $result->parts[1]->parts[1]->disposition); |
| | | $this->assertSame('photo-mini.jpg', $result->parts[1]->parts[1]->filename); |
| | | } |
| | | } |