Initial opendaylight infrastructure commit!!
[controller.git] / opendaylight / sal / yang-prototype / code-generator / yang-model-parser-impl / src / test / java / org / opendaylight / controller / model / parser / builder / LeafListSchemaNodeBuilderTest.java
diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/model/parser/builder/LeafListSchemaNodeBuilderTest.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/model/parser/builder/LeafListSchemaNodeBuilderTest.java
new file mode 100644 (file)
index 0000000..9df458a
--- /dev/null
@@ -0,0 +1,99 @@
+/*\r
+ * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
+ *\r
+ * This program and the accompanying materials are made available under the\r
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
+ * and is available at http://www.eclipse.org/legal/epl-v10.html\r
+ */\r
+package org.opendaylight.controller.model.parser.builder;\r
+\r
+import static org.junit.Assert.*;\r
+import static org.mockito.Mockito.when;\r
+\r
+import java.net.URI;\r
+import java.util.Date;\r
+\r
+import org.junit.Before;\r
+import org.junit.Test;\r
+import org.mockito.Mock;\r
+import org.mockito.MockitoAnnotations;\r
+import org.opendaylight.controller.model.parser.api.GroupingBuilder;\r
+import org.opendaylight.controller.model.parser.api.UsesNodeBuilder;\r
+import org.opendaylight.controller.model.parser.builder.LeafSchemaNodeBuilder;\r
+import org.opendaylight.controller.model.parser.builder.MustDefinitionBuilder;\r
+import org.opendaylight.controller.model.parser.builder.TypedefBuilder;\r
+import org.opendaylight.controller.yang.common.QName;\r
+import org.opendaylight.controller.yang.model.api.ConstraintDefinition;\r
+import org.opendaylight.controller.yang.model.api.GroupingDefinition;\r
+import org.opendaylight.controller.yang.model.api.LeafSchemaNode;\r
+import org.opendaylight.controller.yang.model.api.MustDefinition;\r
+import org.opendaylight.controller.yang.model.api.SchemaPath;\r
+import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.TypeDefinition;\r
+import org.opendaylight.controller.yang.model.api.UsesNode;\r
+\r
+\r
+public class LeafListSchemaNodeBuilderTest {\r
+\r
+       private LeafSchemaNodeBuilder tested;\r
+\r
+       private final String NAME = "test-leaf";\r
+\r
+       private final URI namespace = URI.create("test:leaf.name");\r
+       private final Date revision = new Date();\r
+       private final String prefix = "x";\r
+\r
+       private SchemaPath schemaPath;\r
+       private final String description = "description of container";\r
+       private final String reference = "reference";\r
+\r
+       private QName typedefQName;\r
+       private TypeDefinition<?> type;\r
+       @Mock private ConstraintDefinition constraint;\r
+       @Mock private UsesNodeBuilder usesBuilder;\r
+       @Mock private UsesNode uses;\r
+       @Mock private MustDefinitionBuilder mustBuilder;\r
+       @Mock private MustDefinition must;\r
+       @Mock private GroupingBuilder groupingBuilder;\r
+       @Mock private GroupingDefinition grouping;\r
+\r
+       @Before\r
+       public void init() {\r
+               MockitoAnnotations.initMocks(this);\r
+               when(usesBuilder.build()).thenReturn(uses);\r
+               when(mustBuilder.build()).thenReturn(must);\r
+               when(groupingBuilder.build()).thenReturn(grouping);\r
+\r
+               schemaPath = TestUtils.createSchemaPath(true, namespace, "main", "interface");\r
+               typedefQName = new QName(namespace, "test-type");\r
+               TypedefBuilder typeBuilder = new TypedefBuilder(typedefQName);\r
+               type = typeBuilder.build();\r
+\r
+               QName qname = new QName(namespace, revision, prefix, NAME);\r
+               tested = new LeafSchemaNodeBuilder(qname);\r
+       }\r
+\r
+       @Test\r
+       public void test() {\r
+               tested.setType(type);\r
+               tested.setPath(schemaPath);\r
+               tested.setDescription(description);\r
+               tested.setReference(reference);\r
+               tested.setStatus(Status.OBSOLOTE);\r
+               tested.setConfiguration(false);\r
+               tested.setConstraints(constraint);\r
+               tested.setMustDefinitionBuilder(mustBuilder);\r
+\r
+               LeafSchemaNode result = tested.build();\r
+\r
+               assertEquals(type, result.getType());\r
+               assertEquals(schemaPath, result.getPath());\r
+               assertEquals(description, result.getDescription());\r
+               assertEquals(reference, result.getReference());\r
+               assertEquals(Status.OBSOLOTE, result.getStatus());\r
+               assertFalse(result.isConfiguration());\r
+               assertEquals(constraint, result.getConstraints());\r
+               assertEquals(must, result.getMustDefinition());\r
+       }\r
+\r
+}\r