import java.net.URI;
import java.text.ParseException;
import java.util.Collection;
-import java.util.List;
import java.util.Map;
import java.util.Optional;
-import java.util.Set;
-import java.util.SortedMap;
import org.junit.Before;
import org.junit.Test;
import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.common.QNameModule;
import org.opendaylight.yangtools.yang.common.Revision;
-import org.opendaylight.yangtools.yang.model.api.AnyXmlSchemaNode;
+import org.opendaylight.yangtools.yang.model.api.AnyxmlSchemaNode;
import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.ChoiceCaseNode;
+import org.opendaylight.yangtools.yang.model.api.CaseSchemaNode;
import org.opendaylight.yangtools.yang.model.api.ChoiceSchemaNode;
import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
import org.opendaylight.yangtools.yang.model.api.UsesNode;
+import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Descendant;
import org.opendaylight.yangtools.yang.model.parser.api.YangSyntaxErrorException;
import org.opendaylight.yangtools.yang.model.util.SchemaNodeUtils;
import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
final ContainerSchemaNode destination = (ContainerSchemaNode) peer.getDataChildByName(QName.create(
testModule.getQNameModule(), "destination"));
- final Set<UsesNode> usesNodes = destination.getUses();
+ final Collection<? extends UsesNode> usesNodes = destination.getUses();
assertEquals(1, usesNodes.size());
final UsesNode usesNode = usesNodes.iterator().next();
- final Map<SchemaPath, SchemaNode> refines = usesNode.getRefines();
+ final Map<Descendant, SchemaNode> refines = usesNode.getRefines();
assertEquals(4, refines.size());
LeafSchemaNode refineLeaf = null;
ContainerSchemaNode refineContainer = null;
ListSchemaNode refineList = null;
LeafSchemaNode refineInnerLeaf = null;
- for (final Map.Entry<SchemaPath, SchemaNode> entry : refines.entrySet()) {
+ for (final Map.Entry<Descendant, SchemaNode> entry : refines.entrySet()) {
final SchemaNode value = entry.getValue();
if ("address".equals(value.getQName().getLocalName())) {
refineLeaf = (LeafSchemaNode) destination.getDataChildByName(value.getQName());
}
assertNotNull(refineList);
- for (final Map.Entry<SchemaPath, SchemaNode> entry : refines.entrySet()) {
+ for (final Map.Entry<Descendant, SchemaNode> entry : refines.entrySet()) {
final SchemaNode value = entry.getValue();
if ("id".equals(value.getQName().getLocalName())) {
refineInnerLeaf = (LeafSchemaNode) refineList.getDataChildByName(value.getQName());
assertEquals(Optional.of("address reference added by refine"), refineLeaf.getReference());
assertFalse(refineLeaf.isConfiguration());
assertFalse(refineLeaf.isMandatory());
- final Collection<MustDefinition> leafMustConstraints = refineLeaf.getMustConstraints();
+ final Collection<? extends MustDefinition> leafMustConstraints = refineLeaf.getMustConstraints();
assertEquals(1, leafMustConstraints.size());
final MustDefinition leafMust = leafMustConstraints.iterator().next();
- assertEquals("ifType != 'ethernet' or (ifType = 'ethernet' and ifMTU = 1500)", leafMust.toString());
+ assertEquals("ifType != 'ethernet' or (ifType = 'ethernet' and ifMTU = 1500)", leafMust.getXpath().toString());
assertEquals(1, refineLeaf.getUnknownSchemaNodes().size());
// container port
assertNotNull(refineContainer);
- final Collection<MustDefinition> mustConstraints = refineContainer.getMustConstraints();
+ final Collection<? extends MustDefinition> mustConstraints = refineContainer.getMustConstraints();
assertTrue(mustConstraints.isEmpty());
assertEquals(Optional.of("description of port defined by refine"), refineContainer.getDescription());
assertEquals(Optional.of("port reference added by refine"), refineContainer.getReference());
assertFalse(refineList.isConfiguration());
final ElementCountConstraint constraint = refineList.getElementCountConstraint().get();
- assertEquals(2, constraint.getMinElements().intValue());
+ assertEquals((Object) 2, constraint.getMinElements());
assertNull(constraint.getMaxElements());
// leaf id
@Test
public void testGrouping() {
final Module testModule = TestUtils.findModule(ctx, "baz").get();
- final Set<GroupingDefinition> groupings = testModule.getGroupings();
+ final Collection<? extends GroupingDefinition> groupings = testModule.getGroupings();
assertEquals(1, groupings.size());
final GroupingDefinition grouping = groupings.iterator().next();
- final Collection<DataSchemaNode> children = grouping.getChildNodes();
+ final Collection<? extends DataSchemaNode> children = grouping.getChildNodes();
assertEquals(5, children.size());
}
// get grouping
- final Set<GroupingDefinition> groupings = baz.getGroupings();
+ final Collection<? extends GroupingDefinition> groupings = baz.getGroupings();
assertEquals(1, groupings.size());
final GroupingDefinition grouping = groupings.iterator().next();
foo.getQNameModule(), "destination"));
// check uses
- final Set<UsesNode> uses = destination.getUses();
+ final Collection<? extends UsesNode> uses = destination.getUses();
assertEquals(1, uses.size());
// check uses process
- final AnyXmlSchemaNode data_u = (AnyXmlSchemaNode) destination.getDataChildByName(QName.create(
+ final AnyxmlSchemaNode data_u = (AnyxmlSchemaNode) destination.getDataChildByName(QName.create(
foo.getQNameModule(), "data"));
assertNotNull(data_u);
assertTrue(data_u.isAddedByUses());
- final AnyXmlSchemaNode data_g = (AnyXmlSchemaNode) grouping.getDataChildByName(QName.create(
+ final AnyxmlSchemaNode data_g = (AnyxmlSchemaNode) grouping.getDataChildByName(QName.create(
baz.getQNameModule(), "data"));
assertNotNull(data_g);
assertFalse(data_g.isAddedByUses());
assertEquals(addresses_g, SchemaNodeUtils.getRootOriginalIfPossible(addresses_u));
// grouping defined by 'uses'
- final Set<GroupingDefinition> groupings_u = destination.getGroupings();
- assertEquals(1, groupings_u.size());
- final GroupingDefinition grouping_u = groupings_u.iterator().next();
- TestUtils.checkIsAddedByUses(grouping_u, true);
+ final Collection<? extends GroupingDefinition> groupings_u = destination.getGroupings();
+ assertEquals(0, groupings_u.size());
// grouping defined in 'grouping' node
- final Set<GroupingDefinition> groupings_g = grouping.getGroupings();
+ final Collection<? extends GroupingDefinition> groupings_g = grouping.getGroupings();
assertEquals(1, groupings_g.size());
final GroupingDefinition grouping_g = groupings_g.iterator().next();
TestUtils.checkIsAddedByUses(grouping_g, false);
- assertFalse(grouping_u.equals(grouping_g));
- final List<UnknownSchemaNode> nodes_u = destination.getUnknownSchemaNodes();
+ final Collection<? extends UnknownSchemaNode> nodes_u = destination.getUnknownSchemaNodes();
assertEquals(1, nodes_u.size());
- final UnknownSchemaNode node_u = nodes_u.get(0);
+ final UnknownSchemaNode node_u = nodes_u.iterator().next();
assertTrue(node_u.isAddedByUses());
- final List<UnknownSchemaNode> nodes_g = grouping.getUnknownSchemaNodes();
+ final Collection<? extends UnknownSchemaNode> nodes_g = grouping.getUnknownSchemaNodes();
assertEquals(1, nodes_g.size());
- final UnknownSchemaNode node_g = nodes_g.get(0);
+ final UnknownSchemaNode node_g = nodes_g.iterator().next();
assertFalse(node_g.isAddedByUses());
assertFalse(node_u.equals(node_g));
}
// suffix _g = defined in grouping
// get grouping
- final Set<GroupingDefinition> groupings = baz.getGroupings();
+ final Collection<? extends GroupingDefinition> groupings = baz.getGroupings();
assertEquals(1, groupings.size());
final GroupingDefinition grouping = groupings.iterator().next();
// check uses
- final Set<UsesNode> uses = foo.getUses();
+ final Collection<? extends UsesNode> uses = foo.getUses();
assertEquals(1, uses.size());
// check uses process
- final AnyXmlSchemaNode data_u = (AnyXmlSchemaNode) foo.getDataChildByName(QName.create(foo.getQNameModule(),
+ final AnyxmlSchemaNode data_u = (AnyxmlSchemaNode) foo.getDataChildByName(QName.create(foo.getQNameModule(),
"data"));
assertNotNull(data_u);
assertTrue(data_u.isAddedByUses());
- final AnyXmlSchemaNode data_g = (AnyXmlSchemaNode) grouping.getDataChildByName(QName.create(
+ final AnyxmlSchemaNode data_g = (AnyxmlSchemaNode) grouping.getDataChildByName(QName.create(
baz.getQNameModule(), "data"));
assertNotNull(data_g);
assertFalse(data_g.isAddedByUses());
assertNotNull(how_u);
TestUtils.checkIsAddedByUses(how_u, true);
assertFalse(how_u.isAugmenting());
- final SortedMap<QName, ChoiceCaseNode> cases_u = how_u.getCases();
+ final Collection<? extends CaseSchemaNode> cases_u = how_u.getCases();
assertEquals(2, cases_u.size());
- final ChoiceCaseNode interval = how_u.findCaseNodes("interval").iterator().next();
+ final CaseSchemaNode interval = how_u.findCaseNodes("interval").iterator().next();
assertFalse(interval.isAugmenting());
final LeafSchemaNode name = (LeafSchemaNode) interval.getDataChildByName(QName.create(foo.getQNameModule(),
"name"));
assertEquals(addresses_g, SchemaNodeUtils.getRootOriginalIfPossible(addresses_u));
// grouping defined by 'uses'
- final Set<GroupingDefinition> groupings_u = foo.getGroupings();
- assertEquals(1, groupings_u.size());
- final GroupingDefinition grouping_u = groupings_u.iterator().next();
- TestUtils.checkIsAddedByUses(grouping_u, true);
+ final Collection<? extends GroupingDefinition> groupings_u = foo.getGroupings();
+ assertEquals(0, groupings_u.size());
// grouping defined in 'grouping' node
- final Set<GroupingDefinition> groupings_g = grouping.getGroupings();
+ final Collection<? extends GroupingDefinition> groupings_g = grouping.getGroupings();
assertEquals(1, groupings_g.size());
final GroupingDefinition grouping_g = groupings_g.iterator().next();
TestUtils.checkIsAddedByUses(grouping_g, false);
- assertFalse(grouping_u.equals(grouping_g));
- final List<UnknownSchemaNode> nodes_u = foo.getUnknownSchemaNodes();
+ final Collection<? extends UnknownSchemaNode> nodes_u = foo.getUnknownSchemaNodes();
assertEquals(1, nodes_u.size());
- final UnknownSchemaNode node_u = nodes_u.get(0);
+ final UnknownSchemaNode node_u = nodes_u.iterator().next();
assertTrue(node_u.isAddedByUses());
- final List<UnknownSchemaNode> nodes_g = grouping.getUnknownSchemaNodes();
+ final Collection<? extends UnknownSchemaNode> nodes_g = grouping.getUnknownSchemaNodes();
assertEquals(1, nodes_g.size());
- final UnknownSchemaNode node_g = nodes_g.get(0);
+ final UnknownSchemaNode node_g = nodes_g.iterator().next();
assertFalse(node_g.isAddedByUses());
assertFalse(node_u.equals(node_g));
final UsesNode un = uses.iterator().next();
- final Set<AugmentationSchemaNode> usesAugments = un.getAugmentations();
+ final Collection<? extends AugmentationSchemaNode> usesAugments = un.getAugmentations();
assertEquals(1, usesAugments.size());
final AugmentationSchemaNode augment = usesAugments.iterator().next();
assertEquals(Optional.of("inner augment"), augment.getDescription());
- final Collection<DataSchemaNode> children = augment.getChildNodes();
+ final Collection<? extends DataSchemaNode> children = augment.getChildNodes();
assertEquals(1, children.size());
final DataSchemaNode leaf = children.iterator().next();
assertTrue(leaf instanceof LeafSchemaNode);
assertEquals(1, ctx.getModules().size());
final Module testModule = TestUtils.findModule(ctx, "cascade-uses").get();
- final Set<GroupingDefinition> groupings = testModule.getGroupings();
+ final Collection<? extends GroupingDefinition> groupings = testModule.getGroupings();
GroupingDefinition gu = null;
GroupingDefinition gv = null;
Revision.of("2013-07-18"));
// grouping-U
- Collection<DataSchemaNode> childNodes = gu.getChildNodes();
+ Collection<? extends DataSchemaNode> childNodes = gu.getChildNodes();
assertEquals(7, childNodes.size());
final LeafSchemaNode leafGroupingU = (LeafSchemaNode) gu.getDataChildByName(QName.create(
.getDataChildByName(QName.create(foo.getQNameModule(), "my-leaf"));
TypeDefinition<?> impType = null;
- final Set<TypeDefinition<?>> typeDefinitions = imp.getTypeDefinitions();
- for (final TypeDefinition<?> typeDefinition : typeDefinitions) {
+ for (final TypeDefinition<?> typeDefinition : imp.getTypeDefinitions()) {
if (typeDefinition.getQName().getLocalName().equals("imp-type")) {
impType = typeDefinition;
break;