[ https://issues.apache.org/jira/browse/TINKERPOP-1998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16533595#comment-16533595 ]
Horacio Hoyos Rodriguez commented on TINKERPOP-1998: ---------------------------------------------------- I will try to explain myself better. * Used "default" to refer to the fact that most tests are happy to use "vertex" for vertex labels and "edge" for edge labels. * Tests that don't traverse edges use a single label for vertices: "vertex". Since these tests don't add edges to the graph, the edge labels are irrelevant. * Tests that traverse edges use an existing graph (via @LoadGraphWith), use the schema of one of these graphs, or use arbitrary vertex/edge labels. In the specific case of shouldReadWriteModernToFileWithHelpers: the test initially creates a graph called "standard" that expects the following schema: * vertex labels: vertex, person, software; * edge labels: knows, edge, created * relations :knows:person->person, edge:vertex->vertex, created:person->software In the second part of the test, the "readGraph" is created, and this one expects (an additional relation): * vertex labels: vertex, person, software; * edge labels: knows, edge, created * relations :knows:person->person, edge:vertex->vertex, created:person->software, knows:vertex->vertex The additional relation is also tricky because it requires the graph to support multi-edges (we are missing a supportsMultiEdges() in the GraphFeatures since, for example, ArangoDB multi-edges – edges that can connect different type (label) of vertices – are not supported). Other thoughts: If the test is using "person" and "software" vertex labels, why does it need/use the vertex and edge ones? > If you could compile a list and where they are used that would be amazing. In > addition to adding that information to the provider documentation, I would > likely recommend that we try to collapse those variations down and possibly push them into the "sink" data set: I am writing all my findings on implementing the API and running the tests. Once I have managed to run most of them I will publish it somewhere and from there we can decide what is the best way to add it to the official docs. > IoGraphTest use different schemas for standard and readGraph configurations > --------------------------------------------------------------------------- > > Key: TINKERPOP-1998 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1998 > Project: TinkerPop > Issue Type: Improvement > Affects Versions: 3.3.0 > Reporter: Horacio Hoyos Rodriguez > Priority: Minor > > In ArangoDB labels used by vertices and edges must be known in order to > create a graph. As a result this information should be available at startup, > i.e via configuration. For example _shouldReadWriteModernToFileWithHelpers_ > test expects a different schema from the *standard* graph than from the > *readGraph*, the latter attempts to create vertices in a (default) vertex > collection instead of using the people or software ones that were used for > the former. > It would also help, for graph technologies that require schemas, to have a > document that describe the schemas used/expected in the tests. I am > collecting this information atm, but having to run failing tests to capture > what label/edges I am missing for each test is a PITA. -- This message was sent by Atlassian JIRA (v7.6.3#76005)