Package org.springmodules.email.parser.xml

Source Code of org.springmodules.email.parser.xml.SaxEmailParserTests

package org.springmodules.email.parser.xml;

import java.util.Iterator;
import java.util.Set;
import java.util.Map;

import javax.mail.internet.InternetAddress;
import junit.framework.TestCase;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springmodules.email.Attachment;
import org.springmodules.email.Email;
import org.springmodules.email.parser.xml.SaxEmailParser;

/**
* @author Uri Boness
*/
public class SaxEmailParserTests extends TestCase {

    private SaxEmailParser parser;
    private Resource resource;

    protected void setUp() throws Exception {
        parser = new SaxEmailParser();
        resource = new ClassPathResource("/org/springmodules/email/parser/test.xml");
    }

    public void testParse() throws Exception {

        Email email = parser.parse(resource);
        assertNotNull(email);

        Map headers = email.getHeaders();
        assertNotNull(headers);
        assertEquals(1, headers.size());
        assertTrue(headers.containsKey("test"));
        assertEquals("10", headers.get("test"));

        InternetAddress address = email.getFrom();
        assertNotNull(address);
        assertEquals("From", address.getPersonal());
        assertEquals("from@springmodules.org", address.getAddress());

        InternetAddress[] addresses = email.getTo();
        assertNotNull(addresses);
        assertEquals(2, addresses.length);
        assertEquals("To", addresses[0].getPersonal());
        assertEquals("to1@springmodules.org", addresses[0].getAddress());
        assertNull(addresses[1].getPersonal());
        assertEquals("to2@springmodules.org", addresses[1].getAddress());

        addresses = email.getCc();
        assertNotNull(addresses);
        assertEquals(2, addresses.length);
        assertEquals("Cc", addresses[0].getPersonal());
        assertEquals("cc1@springmodules.org", addresses[0].getAddress());
        assertNull(addresses[1].getPersonal());
        assertEquals("cc2@springmodules.org", addresses[1].getAddress());

        addresses = email.getBcc();
        assertNotNull(addresses);
        assertEquals(2, addresses.length);
        assertEquals("Bcc", addresses[0].getPersonal());
        assertEquals("bcc1@springmodules.org", addresses[0].getAddress());
        assertNull(addresses[1].getPersonal());
        assertEquals("bcc2@springmodules.org", addresses[1].getAddress());

        assertEquals("HIGH", email.getPriority().getName());

        address = email.getReplyTo();
        assertNotNull(address);
        assertEquals("Reply To", address.getPersonal());
        assertEquals("replyto@springmodules.org", address.getAddress());

        assertEquals("subject", email.getSubject());

        assertEquals("Some text body", email.getTextBody());

        assertEquals("<html><body>Some html body</body></html>", email.getHtmlBody());

        Set attachments = email.getAttachments();
        assertFalse(attachments.isEmpty());
        Iterator iter = attachments.iterator();
        Attachment attachment = (Attachment)iter.next();
        assertTrue("attachment1".equals(attachment.getName()) || "attachment2".equals(attachment.getName()));
        assertEquals("test.xml", attachment.getResource().getFilename());
        attachment = (Attachment)iter.next();
        assertTrue("attachment1".equals(attachment.getName()) || "attachment2".equals(attachment.getName()));
        assertEquals("test.xml", attachment.getResource().getFilename());

        attachments = email.getInlineAttachments();
        assertFalse(attachments.isEmpty());
        iter = attachments.iterator();
        attachment = (Attachment)iter.next();
        assertTrue("attachment1".equals(attachment.getName()) || "attachment2".equals(attachment.getName()));
        assertEquals("test.xml", attachment.getResource().getFilename());
        attachment = (Attachment)iter.next();
        assertTrue("attachment1".equals(attachment.getName()) || "attachment2".equals(attachment.getName()));
        assertEquals("test.xml", attachment.getResource().getFilename());
    }
}
TOP

Related Classes of org.springmodules.email.parser.xml.SaxEmailParserTests

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.