import java.util.List;
import java.util.Set;
+import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;
import org.opendaylight.yangtools.yang.common.QNameModule;
import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefContext;
import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefContextUtils;
-import org.opendaylight.yangtools.yang.model.api.DataNodeContainer;
import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
import org.opendaylight.yangtools.yang.model.api.Module;
import org.opendaylight.yangtools.yang.model.api.SchemaContext;
import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
public class LeafRefContextTreeBuilderTest {
+ private static final Logger LOG = LoggerFactory.getLogger(LeafRefContextTreeBuilderTest.class);
private static SchemaContext context;
- private static Module impMod;
private static Module tstMod;
- private static QNameModule imp;
private static QNameModule tst;
private static LeafRefContext rootLeafRefContext;
final Set<Module> modules = context.getModules();
for (final Module module : modules) {
- if (module.getName().equals("import-mod")) {
- impMod = module;
- }
if (module.getName().equals("leafref-test")) {
tstMod = module;
}
}
- imp = impMod.getQNameModule();
tst = tstMod.getQNameModule();
rootLeafRefContext = LeafRefContext.create(context);
}
+ @AfterClass
+ public static void cleanup() {
+ context = null;
+ tst = null;
+ tstMod = null;
+ rootLeafRefContext = null;
+ }
+
@Test
public void buildLeafRefContextTreeTest1() {
assertNotNull(leafRefCtx.getAbsoluteLeafRefTargetPath());
assertTrue(leafRefCtx.getAbsoluteLeafRefTargetPath().isAbsolute());
- System.out.println();
- System.out.println("******* Test 1 ************");
- System.out.println("Original definition string:");
- System.out.println(leafRefCtx.getLeafRefTargetPathString());
- System.out.println("Parsed leafref path:");
- System.out.println(leafRefCtx.getLeafRefTargetPath().toString());
- System.out.println("Absolute leafref path:");
- System.out.println(leafRefCtx.getAbsoluteLeafRefTargetPath().toString());
+ LOG.debug("******* Test 1 ************");
+ LOG.debug("Original definition string: {}", leafRefCtx.getLeafRefTargetPathString());
+ LOG.debug("Parsed leafref path: {}", leafRefCtx.getLeafRefTargetPath());
+ LOG.debug("Absolute leafref path: {}", leafRefCtx.getAbsoluteLeafRefTargetPath());
}
@Test
assertNotNull(leafRefCtx2.getAbsoluteLeafRefTargetPath());
assertTrue(leafRefCtx2.getAbsoluteLeafRefTargetPath().isAbsolute());
- System.out.println();
- System.out.println("******* Test 2 ************");
- System.out.println("Original definition string2:");
- System.out.println(leafRefCtx2.getLeafRefTargetPathString());
- System.out.println("Parsed leafref path2:");
- System.out.println(leafRefCtx2.getLeafRefTargetPath().toString());
- System.out.println("Absolute leafref path2:");
- System.out.println(leafRefCtx2.getAbsoluteLeafRefTargetPath().toString());
- System.out.println();
-
+ LOG.debug("******* Test 2 ************");
+ LOG.debug("Original definition string2: {}", leafRefCtx2.getLeafRefTargetPathString());
+ LOG.debug("Parsed leafref path2: {}", leafRefCtx2.getLeafRefTargetPath());
+ LOG.debug("Absolute leafref path2: {}", leafRefCtx2.getAbsoluteLeafRefTargetPath());
}
@Test
assertNotNull(leafRefCtx3.getAbsoluteLeafRefTargetPath());
assertTrue(leafRefCtx3.getAbsoluteLeafRefTargetPath().isAbsolute());
- System.out.println();
- System.out.println("******* Test 3 ************");
- System.out.println("Original definition string2:");
- System.out.println(leafRefCtx3.getLeafRefTargetPathString());
- System.out.println("Parsed leafref path2:");
- System.out.println(leafRefCtx3.getLeafRefTargetPath().toString());
- System.out.println("Absolute leafref path2:");
- System.out.println(leafRefCtx3.getAbsoluteLeafRefTargetPath().toString());
- System.out.println();
+ LOG.debug("******* Test 3 ************");
+ LOG.debug("Original definition string2: {}", leafRefCtx3.getLeafRefTargetPathString());
+ LOG.debug("Parsed leafref path2: {}", leafRefCtx3.getLeafRefTargetPath());
+ LOG.debug("Absolute leafref path2: {}", leafRefCtx3.getAbsoluteLeafRefTargetPath());
}
@Test
final LeafRefContext odlContrProjNameCtx = rootLeafRefContext.getReferencingChildByName(q1)
.getReferencingChildByName(q2).getReferencingChildByName(q3);
- final DataSchemaNode odlContrProjNameNode = ((DataNodeContainer) ((DataNodeContainer) tstMod
- .getDataChildByName(q1)).getDataChildByName(q2)).getDataChildByName(q3);
+ final DataSchemaNode odlContrProjNameNode = tstMod.findDataChildByName(q1, q2, q3).get();
final LeafRefContext foundOdlContrProjNameCtx = LeafRefContextUtils.getLeafRefReferencingContext(
odlContrProjNameNode, rootLeafRefContext);
final LeafRefContext leafRefCtx = rootLeafRefContext.getReferencedChildByName(q1).getReferencedChildByName(q2)
.getReferencedChildByName(q3);
- final DataSchemaNode odlProjNameNode = ((DataNodeContainer) ((DataNodeContainer) tstMod.getDataChildByName(q1))
- .getDataChildByName(q2)).getDataChildByName(q3);
+ final DataSchemaNode odlProjNameNode = tstMod.findDataChildByName(q1, q2, q3).get();
LeafRefContext foundOdlProjNameCtx = LeafRefContextUtils.getLeafRefReferencingContext(odlProjNameNode,
rootLeafRefContext);
@Test
public void leafRefContextUtilsTest3() {
final QName q16 = QName.create(tst, "con1");
- final DataSchemaNode con1 = tstMod.getDataChildByName(q16);
- final List<LeafRefContext> allLeafRefChilds = LeafRefContextUtils
- .findAllLeafRefChilds(con1, rootLeafRefContext);
+ final DataSchemaNode con1 = tstMod.findDataChildByName(q16).get();
+ final List<LeafRefContext> allLeafRefChilds = LeafRefContextUtils.findAllLeafRefChilds(con1,
+ rootLeafRefContext);
assertNotNull(allLeafRefChilds);
assertFalse(allLeafRefChilds.isEmpty());
assertEquals(4, allLeafRefChilds.size());
final QName q17 = QName.create(tst, "odl-contributor");
- final DataSchemaNode odlContributorNode = tstMod.getDataChildByName(q17);
+ final DataSchemaNode odlContributorNode = tstMod.findDataChildByName(q17).get();
List<LeafRefContext> allChildsReferencedByLeafRef = LeafRefContextUtils.findAllChildsReferencedByLeafRef(
odlContributorNode, rootLeafRefContext);
assertNotNull(allChildsReferencedByLeafRef);
assertTrue(allChildsReferencedByLeafRef.isEmpty());
-
}
@Test(expected = IllegalArgumentException.class)
@Ignore
public void incorrectLeafRefPathTest() {
- final SchemaContext context = YangParserTestUtils.parseYangResourceDirectory(
- "/leafref-context-test/incorrect-modules");
- LeafRefContext.create(context);
+ LeafRefContext.create(
+ YangParserTestUtils.parseYangResourceDirectory("/leafref-context-test/incorrect-modules"));
}
-
}