+ // * |-- |-- list metric
+ ListSchemaNode metric = (ListSchemaNode)svec.getDataChildByName("metric");
+ assertNotNull(metric);
+ assertEquals(createPath("pcreq", "svec", "metric"), metric.getPath());
+ assertFalse(metric.isAddedByUses());
+ // * |-- |-- |-- leaf metric-type (U)
+ LeafSchemaNode metricType = (LeafSchemaNode)metric.getDataChildByName("metric-type");
+ assertNotNull(metricType);
+ assertEquals(createPath("pcreq", "svec", "metric", "metric-type"), metricType.getPath());
+ assertTrue(metricType.isAddedByUses());
+ // * |-- |-- |-- box (U)
+ box = (ContainerSchemaNode)metric.getDataChildByName("box");
+ assertNotNull(box);
+ assertEquals(createPath("pcreq", "svec", "metric", "box"), box.getPath());
+ assertTrue(box.isAddedByUses());
+ // * |-- |-- |-- leaf processing-rule (U)
+ processingRule = (LeafSchemaNode)metric.getDataChildByName("processing-rule");
+ assertNotNull(processingRule);
+ assertEquals(createPath("pcreq", "svec", "metric", "processing-rule"), processingRule.getPath());
+ assertTrue(processingRule.isAddedByUses());
+ // * |-- |-- |-- leaf ignore (U)
+ ignore = (LeafSchemaNode)metric.getDataChildByName("ignore");
+ assertNotNull(ignore);
+ assertEquals(createPath("pcreq", "svec", "metric", "ignore"), ignore.getPath());
+ assertTrue(ignore.isAddedByUses());
+ // * |-- |-- leaf link-diverse (U)
+ LeafSchemaNode linkDiverse = (LeafSchemaNode)svec.getDataChildByName("link-diverse");
+ assertNotNull(linkDiverse);
+ assertEquals(createPath("pcreq", "svec", "link-diverse"), linkDiverse.getPath());
+ assertTrue(linkDiverse.isAddedByUses());
+ // * |-- |-- leaf processing-rule (U)
+ processingRule = (LeafSchemaNode)svec.getDataChildByName("processing-rule");
+ assertNotNull(processingRule);
+ assertEquals(createPath("pcreq", "svec", "processing-rule"), processingRule.getPath());
+ assertTrue(processingRule.isAddedByUses());
+ // * |-- |-- leaf ignore (U)
+ ignore = (LeafSchemaNode)svec.getDataChildByName("ignore");
+ assertNotNull(ignore);
+ assertEquals(createPath("pcreq", "svec", "ignore"), ignore.getPath());
+ assertTrue(ignore.isAddedByUses());
+ }
+
+ private SchemaPath createPath(String... names) {
+ List<QName> path = new ArrayList<>();
+ for(String name : names) {
+ path.add(new QName(ns, rev, prefix, name));
+ }
+ return new SchemaPath(path, true);