use of org.neo4j.csv.reader.CharSeeker in project neo4j by neo4j.
the class DataFactoriesTest method shouldFailOnUnexpectedRelationshipHeaderType.
@Test
public void shouldFailOnUnexpectedRelationshipHeaderType() {
// GIVEN
CharSeeker seeker = seeker(":LABEL,:START_ID,:END_ID,:TYPE");
IdType idType = IdType.ACTUAL;
// WHEN
var e = assertThrows(InputException.class, () -> defaultFormatRelationshipFileHeader().create(seeker, COMMAS, idType, groups));
assertThat(e.getMessage()).contains("LABEL");
}
use of org.neo4j.csv.reader.CharSeeker in project neo4j by neo4j.
the class DataFactoriesTest method shouldAllowMissingIdHeaderEntry.
@Test
public void shouldAllowMissingIdHeaderEntry() throws Exception {
// GIVEN
CharSeeker seeker = seeker("one\ttwo");
Extractors extractors = new Extractors(';');
// WHEN
Header header = defaultFormatNodeFileHeader().create(seeker, TABS, IdType.ACTUAL, groups);
// THEN
assertArrayEquals(array(entry("one", Type.PROPERTY, extractors.string()), entry("two", Type.PROPERTY, extractors.string())), header.entries());
seeker.close();
}
use of org.neo4j.csv.reader.CharSeeker in project neo4j by neo4j.
the class DataFactoriesTest method shouldParseHeaderFromFirstLineOfFirstInputFile.
@Test
public void shouldParseHeaderFromFirstLineOfFirstInputFile() throws Exception {
// GIVEN
final CharReadable firstSource = wrap("id:ID\tname:String\tbirth_date:long");
final CharReadable secondSource = wrap("0\tThe node\t123456789");
DataFactory dataFactory = DataFactories.data(value -> value, () -> new MultiReadable(Readables.iterator(IOFunctions.identity(), firstSource, secondSource)));
Header.Factory headerFactory = defaultFormatNodeFileHeader();
Extractors extractors = new Extractors(';');
// WHEN
CharSeeker seeker = CharSeekers.charSeeker(new MultiReadable(dataFactory.create(TABS).stream()), TABS, false);
Header header = headerFactory.create(seeker, TABS, IdType.ACTUAL, groups);
// THEN
assertArrayEquals(array(entry("id", Type.ID, extractors.long_()), entry("name", Type.PROPERTY, extractors.string()), entry("birth_date", Type.PROPERTY, extractors.long_())), header.entries());
seeker.close();
}
use of org.neo4j.csv.reader.CharSeeker in project neo4j by neo4j.
the class DataFactoriesTest method shouldFailForDuplicatePropertyHeaderEntries.
@Test
public void shouldFailForDuplicatePropertyHeaderEntries() throws Exception {
// GIVEN
CharSeeker seeker = seeker("one:id\tname\tname:long");
IdType idType = IdType.ACTUAL;
Extractors extractors = new Extractors('\t');
var e = assertThrows(DuplicateHeaderException.class, () -> defaultFormatNodeFileHeader().create(seeker, TABS, idType, groups));
assertEquals(entry("name", Type.PROPERTY, extractors.string()), e.getFirst());
assertEquals(entry("name", Type.PROPERTY, extractors.long_()), e.getOther());
seeker.close();
}
Aggregations