XmlParserTest.java :  » UnTagged » nextaction » net » kazed » nextaction » database » serialize » Android Open Source

Android Open Source » UnTagged » nextaction 
nextaction » net » kazed » nextaction » database » serialize » XmlParserTest.java
package net.kazed.nextaction.database.serialize;

import java.io.File;
import java.util.List;

import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;

/**
 * Unit test for XmlParser.
 * 
 * @author Koert Zeilstra
 */
public class XmlParserTest {

    private XmlParser xmlParser;
    private RootHandler rootHandler;

    @Before
    public void setUp() throws Exception {
        rootHandler = new RootHandler();
        xmlParser = new XmlParser(new DummyXmlEncoder(), rootHandler);
    }

    @Test
    public void testParseContext() {
        File file = new File("src/test/resources/backup/backup-2008-12-30-03_09.nab");
        xmlParser.parse(file);
        List<ContextDto> contexts = rootHandler.getContextHandler().getContexts();
        Assert.assertEquals(3, contexts.size());
        ContextDto context0 = contexts.get(0);
        Assert.assertEquals(new Long(1), context0.getId());
        Assert.assertNull(context0.getParentId());
        Assert.assertEquals("test", context0.getName());

        ContextDto context1 = contexts.get(1);
        Assert.assertEquals(new Long(2), context1.getId());
        Assert.assertEquals(new Long(1), context1.getParentId());
        Assert.assertEquals("test", context1.getName());
    }

    @Test
    public void testParse() {
        File file = new File("src/test/resources/backup/backup-2008-12-31-08_27.nab");
        
        xmlParser.parse(file);
        
        List<ContextDto> contexts = rootHandler.getContextHandler().getContexts();
        Assert.assertEquals(4, contexts.size());
        ContextDto context0 = contexts.get(0);
        Assert.assertEquals(new Long(5), context0.getId());
        Assert.assertNull(context0.getParentId());
        Assert.assertEquals("test", context0.getName());

        ContextDto context2 = contexts.get(2);
        Assert.assertEquals(new Long(7), context2.getId());
        Assert.assertEquals(new Long(1), context2.getParentId());
        Assert.assertEquals("test7", context2.getName());

        List<TaskDto> tasks = rootHandler.getTaskHandler().getTasks();
        Assert.assertEquals(4, contexts.size());
        TaskDto task0 = tasks.get(0);
        Assert.assertEquals(new Integer(1), task0.id);
        Assert.assertNull(task0.parentTaskId);
        Assert.assertEquals("test", task0.description);

        TaskDto task2 = tasks.get(2);
        Assert.assertEquals(new Integer(3), task2.id);
        Assert.assertEquals(new Integer(1), task2.parentTaskId);
        Assert.assertEquals("test 2", task2.description);
        Assert.assertEquals("Task details", task2.details);
        Assert.assertEquals(new Integer(6), task2.contextId);
        Assert.assertTrue(task2.completed);
}

    private class RootHandler extends AbstractElementHandler {

        private ContextHandler contextHandler = new ContextHandler();
        private TaskHandler taskHandler = new TaskHandler();
        
        public RootHandler() {
            super();
            
            addElementHandler("nextaction", this);
            addElementHandler("context", contextHandler);
            addElementHandler("task", taskHandler);
        }

        public ContextHandler getContextHandler() {
            return contextHandler;
        }

        public TaskHandler getTaskHandler() {
            return taskHandler;
        }
    }
    
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.