X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-model-util%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fmodel%2Futil%2FYT1100Test.java;h=5a4de9514aec41d0057e97a8e1da3cde776ea784;hb=5280e8d0efe5177e5bd9fa15bfd2bdc01e222d1b;hp=9de18c85942241010951f2383d6ab637e76710b4;hpb=e6e443d3e4dfd3d6e0726262dac9239952dc7adc;p=yangtools.git diff --git a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/YT1100Test.java b/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/YT1100Test.java index 9de18c8594..5a4de9514a 100644 --- a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/YT1100Test.java +++ b/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/YT1100Test.java @@ -19,8 +19,8 @@ import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode; import org.opendaylight.yangtools.yang.model.api.Module; import org.opendaylight.yangtools.yang.model.api.PathExpression; -import org.opendaylight.yangtools.yang.model.api.SchemaNode; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; +import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement; import org.opendaylight.yangtools.yang.model.api.type.LeafrefTypeDefinition; import org.opendaylight.yangtools.yang.model.api.type.StringTypeDefinition; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; @@ -31,18 +31,22 @@ public class YT1100Test { final EffectiveModelContext context = YangParserTestUtils.parseYangResource("/yt1100.yang"); final Module module = context.findModule("yt1100").orElseThrow(); final QNameModule qnm = module.getQNameModule(); - final DataSchemaNode leaf = module.findDataTreeChild( - QName.create(qnm, "foo"), QName.create(qnm, "scheduler-node"), QName.create(qnm, "child-scheduler-nodes"), - QName.create(qnm, "name")).orElseThrow(); + final QName foo = QName.create(qnm, "foo"); + final QName schedulerNode = QName.create(qnm, "scheduler-node"); + final QName childSchedulerNodes = QName.create(qnm, "child-scheduler-nodes"); + final QName name = QName.create(qnm, "name"); + final DataSchemaNode leaf = module.findDataTreeChild(foo, schedulerNode, childSchedulerNodes, name) + .orElseThrow(); assertThat(leaf, instanceOf(LeafSchemaNode.class)); final TypeDefinition type = ((LeafSchemaNode) leaf).getType(); assertThat(type, instanceOf(LeafrefTypeDefinition.class)); final PathExpression leafref = ((LeafrefTypeDefinition) type).getPathStatement(); - final SchemaNode ref = SchemaContextUtil.findDataSchemaNodeForRelativeXPath(context, module, leaf, leafref); - assertThat(ref, instanceOf(LeafSchemaNode.class)); - final LeafSchemaNode targetLeaf = (LeafSchemaNode) ref; + final EffectiveStatement resolvedLeafRef = SchemaInferenceStack.ofDataTreePath( + context, foo, schedulerNode,childSchedulerNodes, name).resolvePathExpression(leafref); + assertThat(resolvedLeafRef, instanceOf(LeafSchemaNode.class)); + final LeafSchemaNode targetLeaf = (LeafSchemaNode) resolvedLeafRef; assertEquals(QName.create(qnm, "name"), targetLeaf.getQName()); assertThat(targetLeaf.getType(), instanceOf(StringTypeDefinition.class)); }