Reimplement SchemaContextUtil.getBaseTypeForLeafRef()
[yangtools.git] / yang / yang-model-util / src / test / java / org / opendaylight / yangtools / yang / model / util / YT1050Test.java
index cb124aa3e5d499b775279b0b0680ac3b986d2122..6d5092e32ab3e7d4a263e4d1ce37e06c3bab3dc7 100644 (file)
@@ -19,8 +19,8 @@ import org.opendaylight.yangtools.yang.model.api.GroupingDefinition;
 import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.ListSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.Module;
-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.test.util.YangParserTestUtils;
 
@@ -52,8 +52,12 @@ public class YT1050Test {
         final TypeDefinition<?> typeNodeType = secondaryType.getType();
         assertThat(typeNodeType, isA(LeafrefTypeDefinition.class));
 
-        final SchemaNode found =  SchemaContextUtil.findDataSchemaNodeForRelativeXPath(context, module, secondaryType,
-            ((LeafrefTypeDefinition) typeNodeType).getPathStatement());
+        final SchemaInferenceStack stack = SchemaInferenceStack.of(context);
+        stack.enterGrouping(QName.create(module.getQNameModule(), "grp"));
+        stack.enterSchemaTree(QName.create(module.getQNameModule(), "secondary"));
+        stack.enterSchemaTree(secondaryType.getQName());
+        final EffectiveStatement<?, ?> found = stack.resolvePathExpression(((LeafrefTypeDefinition) typeNodeType)
+                .getPathStatement());
         assertSame(primaryType, found);
     }
 }