@@ -78,6 +78,7 @@ void shouldLoadInverseRelationships() {
7878 RelationshipProjection .builder ()
7979 .type ("R" )
8080 .indexInverse (true )
81+ .properties (PropertyMappings .of (PropertyMapping .of ("p" )))
8182 .build ()
8283 ))
8384 .build ();
@@ -97,8 +98,16 @@ void shouldLoadInverseRelationships() {
9798
9899 var singleTypeRelationshipImportResult = relationshipsAndProperties .importResults ().get (relationshipType );
99100 assertThat (singleTypeRelationshipImportResult .inverseTopology ()).isPresent ();
101+ assertThat (singleTypeRelationshipImportResult .inverseProperties ()).isPresent ();
102+
100103 var adjacencyList = singleTypeRelationshipImportResult .inverseTopology ().get ().adjacencyList ();
104+ var propertyList = singleTypeRelationshipImportResult .inverseProperties ().get ()
105+ .relationshipProperties ()
106+ .get ("p" )
107+ .values ()
108+ .propertiesList ();
101109
110+ //@formatter:off
102111 assertThat (degree ("a" , adjacencyList )).isEqualTo (1 ); // (c)-->(a)
103112 assertThat (degree ("b" , adjacencyList )).isEqualTo (1 ); // (a)-->(b)
104113 assertThat (degree ("c" , adjacencyList )).isEqualTo (2 ); // (a)-->(c),(b)-->(c)
@@ -108,50 +117,7 @@ void shouldLoadInverseRelationships() {
108117 assertThat (targets ("b" , adjacencyList )).isEqualTo (nodeIds ("a" )); // (a)-->(b)
109118 assertThat (targets ("c" , adjacencyList )).isEqualTo (nodeIds ("a" , "b" )); // (a)-->(c),(b)-->(c)
110119 assertThat (targets ("d" , adjacencyList )).isEqualTo (nodeIds ("a" )); // (a)-->(d)
111- }
112-
113- @ Test
114- void shouldLoadInverseRelationshipsWithProperties () {
115- var relationshipType = RelationshipType .of ("R" );
116- var graphProjectConfig = ImmutableGraphProjectFromStoreConfig .builder ()
117- .graphName ("testGraph" )
118- .nodeProjections (NodeProjections .ALL )
119- .relationshipProjections (
120- RelationshipProjections .single (
121- relationshipType ,
122- RelationshipProjection .builder ()
123- .type ("R" )
124- .indexInverse (true )
125- .properties (PropertyMappings .of (PropertyMapping .of ("p" )))
126- .build ()
127- ))
128- .build ();
129120
130- var graphLoaderContext = graphLoaderContext ();
131- var graphDimensions = graphDimensions (graphProjectConfig , graphLoaderContext );
132- var importer = new ScanningRelationshipsImporterBuilder ()
133- .idMap (new DirectIdMap (graphDimensions .nodeCount ()))
134- .loadingContext (graphLoaderContext )
135- .progressTracker (ProgressTracker .NULL_TRACKER )
136- .dimensions (graphDimensions )
137- .concurrency (1 )
138- .graphProjectConfig (graphProjectConfig )
139- .build ();
140-
141- var relationshipsAndProperties = importer .call ();
142-
143- var singleTypeRelationshipImportResult = relationshipsAndProperties .importResults ().get (relationshipType );
144- assertThat (singleTypeRelationshipImportResult .inverseTopology ()).isPresent ();
145- assertThat (singleTypeRelationshipImportResult .inverseProperties ()).isPresent ();
146-
147- var adjacencyList = singleTypeRelationshipImportResult .inverseTopology ().get ().adjacencyList ();
148- var propertyList = singleTypeRelationshipImportResult .inverseProperties ().get ()
149- .relationshipProperties ()
150- .get ("p" )
151- .values ()
152- .propertiesList ();
153-
154- //@formatter:off
155121 assertThat (properties ("a" , propertyList , adjacencyList ::degree )).containsExactly (5.0 ); // (c)-[5.0]->(a)
156122 assertThat (properties ("b" , propertyList , adjacencyList ::degree )).containsExactly (1.0 ); // (a)-[1.0]->(b)
157123 assertThat (properties ("c" , propertyList , adjacencyList ::degree )).containsExactly (2.0 , 4.0 ); // (a)-[2.0]->(c),(b)-[4.0]->(c)
0 commit comments