Skip to content

Commit a1d5c09

Browse files
authored
Merge pull request #236 from modelix/bugfix/MODELIX-530-fix-reference-resolving
fix(modelql): access to references outside of queries
2 parents b1ab8f3 + a3aae14 commit a1d5c09

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

modelql-client/src/commonMain/kotlin/org/modelix/modelql/client/ModelQLNode.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ abstract class ModelQLNode(val client: ModelQLClient) : INode, ISupportsModelQL,
198198
}
199199

200200
private fun IMonoStep<INode>.nodeRefAndConcept(): IMonoStep<IZip2Output<Any?, INodeReference, ConceptReference?>> {
201-
return nodeReference().zip(conceptReference())
201+
return map { it.nodeReference().zip(it.conceptReference()) }
202202
}
203203

204204
private fun IFluxStep<INode>.nodeRefAndConcept(): IFluxStep<IZip2Output<Any?, INodeReference, ConceptReference?>> {

modelql-client/src/jvmTest/kotlin/org/modelix/modelql/client/ModelQLClientTest.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,4 +241,13 @@ class ModelQLClientTest {
241241
println(result)
242242
assertEquals(listOf(1002, 2002), result)
243243
}
244+
245+
@Test
246+
fun `test IMonoStep nodeRefAndConcept`() = runTest { httpClient ->
247+
val client = ModelQLClient("http://localhost/query", httpClient)
248+
249+
val nullNode = client.getRootNode().getReferenceTarget("nonExistentReference")
250+
251+
assertEquals(null, nullNode)
252+
}
244253
}

0 commit comments

Comments
 (0)