Package be.hikage.xml.jdom

Source Code of be.hikage.xml.jdom.JdomTest

package be.hikage.xml.jdom;

import be.hikage.xml.model.Contact;
import be.hikage.xml.model.Email;
import junit.framework.TestCase;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.xpath.XPath;

import java.util.ArrayList;
import java.util.List;



public class JdomTest extends TestCase {

    public void testParser() {

        Parseur parseur = new Parseur();

        List<Contact> contacts = parseur.parser(getClass().getClassLoader().getResourceAsStream("input.xml"));

        Contact contact = contacts.get(0);
        assertEquals("Cuisinier", contact.getNom());
        assertEquals("Gildas", contact.getPrenom());
        assertEquals("hikage@hikage.be", contact.getEmails().get(0).getEmail());
        assertEquals(Email.EMAIL_TYPE.PERSONNELLE, contact.getEmails().get(0).getType());

        contact = contacts.get(1);
        assertEquals("Righetto", contact.getNom());
        assertEquals("Dominique", contact.getPrenom());
        assertEquals("dominique.righetto@logica.com", contact.getEmails().get(0).getEmail());
        assertEquals(Email.EMAIL_TYPE.PROFESSIONELLE, contact.getEmails().get(0).getType());

    }

    public void testWriter() throws JDOMException {

        Writer writer = new Writer();

        List<Contact> contacts = new ArrayList<Contact>();
        Contact contact = new Contact();
        contact.setNom("nom");
        contact.setPrenom("prenom");
        contact.setDescription("<description />");
        Email email = new Email(Email.EMAIL_TYPE.PERSONNELLE, "hikage@hikage.be");
        contact.getEmails().add(email);

        contacts.add(contact);

        Document document = writer.createDocument(contacts);

        XPath xpathNom = XPath.newInstance("//contacts/contact/nom");
        XPath xpathPrenom = XPath.newInstance("//contacts/contact/prenom");
        XPath xpathEmail = XPath.newInstance("//contacts/contact/email");


        Element nomElement = (Element) xpathNom.selectSingleNode(document);
        Element prenomElement = (Element) xpathPrenom.selectSingleNode(document);
        Element emailElement = (Element) xpathEmail.selectSingleNode(document);

        assertEquals("nom", nomElement.getText());
        assertEquals("prenom", prenomElement.getText());
        assertEquals("hikage@hikage.be", emailElement.getText());
        assertEquals("personnelle", emailElement.getAttributeValue("type"));

    }
}
TOP

Related Classes of be.hikage.xml.jdom.JdomTest

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.