Package org.neo4j.batchimport.csv

Source Code of org.neo4j.batchimport.csv.StreamTokenizerTest

package org.neo4j.batchimport.csv;

import org.junit.Test;
import org.neo4j.batchimport.utils.Chunker;

import java.io.*;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;

/**
* @author mh
* @since 13.11.12
*/
public class StreamTokenizerTest {
   
    String file = "FROM\tTO\tTYPE\tNAME\tAGE:INT\n"
                  +"1\t2\tKNOWS\tFOO\t42\n"
                  +"1\t2\tKNOWS\t\t42"
            ;

    @Test
    public void testReadHeader() throws Exception {
        final BufferedReader reader = new BufferedReader(new StringReader(file));
        final String[] header = reader.readLine().split("\t");
        final Chunker chunker = new Chunker(reader, '\t');
        readLine(header, chunker, "FOO", "42");
        readLine(header, chunker, "", "42");
        assertEquals(Chunker.EOF,chunker.nextWord());
    }

    private void readLine(String[] header, Chunker st, Object...values) throws IOException {
        long from = Long.parseLong(st.nextWord());
        assertEquals(1,from);
        long to = Long.parseLong(st.nextWord());
        assertEquals(2,to);
        String type = st.nextWord();
        assertEquals("KNOWS", type);

        for (int i = 3; i < header.length; i++) {
            assertEquals(header[i], values[i - 3], st.nextWord());
        }
        String token = st.nextWord();
        assertTrue(Chunker.EOL==token || Chunker.EOF==token);
    }
}
TOP

Related Classes of org.neo4j.batchimport.csv.StreamTokenizerTest

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.