2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 package org.opendaylight.yangtools.yang.parser.builder.impl;
6 import static org.junit.Assert.*;
10 import org.junit.Test;
11 import org.opendaylight.yangtools.yang.common.QName;
12 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
13 import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
14 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
15 import org.opendaylight.yangtools.yang.model.util.Int16;
16 import org.opendaylight.yangtools.yang.parser.builder.api.UnknownSchemaNodeBuilder;
18 public class TypeDefinitionBuilderImplTest {
21 public void getUnknownNodesTest() {
23 SchemaPath path = SchemaPath.create(true, QName.create("myModuleName"),QName.create("MyTypeDefName"));
25 String moduleName = "myModuleName";
26 QName qName = QName.create("MyTypeDefName");
28 TypeDefinitionBuilderImpl typeDefinitionBuilderImpl = new TypeDefinitionBuilderImpl(moduleName,line,qName,path);
29 typeDefinitionBuilderImpl.setType(Int16.getInstance());
31 path = SchemaPath.create(true, QName.create("myModuleName"),QName.create("MyUnknownNodeName1"));
33 moduleName = "myModuleName";
34 qName = QName.create("MyUnknownNodeName1");
36 UnknownSchemaNodeBuilderImpl unknownSchemaNodeBuilder1 = new UnknownSchemaNodeBuilderImpl(moduleName,line,qName,path);
38 path = SchemaPath.create(true, QName.create("myModuleName"),QName.create("MyUnknownNodeName2"));
40 moduleName = "myModuleName";
41 qName = QName.create("MyUnknownNodeName2");
43 UnknownSchemaNodeBuilderImpl unknownSchemaNodeBuilder2 = new UnknownSchemaNodeBuilderImpl(moduleName,line,qName,path);
45 typeDefinitionBuilderImpl.addUnknownNodeBuilder(unknownSchemaNodeBuilder1);
46 typeDefinitionBuilderImpl.addUnknownNodeBuilder(unknownSchemaNodeBuilder2);
48 List<UnknownSchemaNodeBuilder> unknownNodesBuilders = typeDefinitionBuilderImpl.getUnknownNodes();
50 assertNotNull(unknownNodesBuilders);
51 assertFalse(unknownNodesBuilders.isEmpty());
52 assertEquals(2,unknownNodesBuilders.size());
53 assertTrue(unknownNodesBuilders.contains(unknownSchemaNodeBuilder1));
54 assertTrue(unknownNodesBuilders.contains(unknownSchemaNodeBuilder2));
56 TypeDefinition<? extends TypeDefinition<?>> instance = typeDefinitionBuilderImpl.build();
58 List<UnknownSchemaNode> unknownNodes = instance.getUnknownSchemaNodes();
60 assertNotNull(unknownNodes);
61 assertFalse(unknownNodes.isEmpty());
62 assertEquals(2,unknownNodes.size());
63 assertTrue(unknownNodes.contains(unknownSchemaNodeBuilder1.build()));
64 assertTrue(unknownNodes.contains(unknownSchemaNodeBuilder2.build()));