X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fyang-model-parser-impl%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmodel%2Fparser%2Fbuilder%2FLeafListSchemaNodeBuilderTest.java;fp=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fyang-model-parser-impl%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmodel%2Fparser%2Fbuilder%2FLeafListSchemaNodeBuilderTest.java;h=9df458a2335c9f50a827ba7829fcfd3b2f6602d9;hb=42210c03b0a4c54706320ba9f55794c0abd4d201;hp=0000000000000000000000000000000000000000;hpb=7576b38152b393793b1c9ec3df0ff86685f95236;p=controller.git 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 index 0000000000..9df458a233 --- /dev/null +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/model/parser/builder/LeafListSchemaNodeBuilderTest.java @@ -0,0 +1,99 @@ +/* + * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ +package org.opendaylight.controller.model.parser.builder; + +import static org.junit.Assert.*; +import static org.mockito.Mockito.when; + +import java.net.URI; +import java.util.Date; + +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mock; +import org.mockito.MockitoAnnotations; +import org.opendaylight.controller.model.parser.api.GroupingBuilder; +import org.opendaylight.controller.model.parser.api.UsesNodeBuilder; +import org.opendaylight.controller.model.parser.builder.LeafSchemaNodeBuilder; +import org.opendaylight.controller.model.parser.builder.MustDefinitionBuilder; +import org.opendaylight.controller.model.parser.builder.TypedefBuilder; +import org.opendaylight.controller.yang.common.QName; +import org.opendaylight.controller.yang.model.api.ConstraintDefinition; +import org.opendaylight.controller.yang.model.api.GroupingDefinition; +import org.opendaylight.controller.yang.model.api.LeafSchemaNode; +import org.opendaylight.controller.yang.model.api.MustDefinition; +import org.opendaylight.controller.yang.model.api.SchemaPath; +import org.opendaylight.controller.yang.model.api.Status; +import org.opendaylight.controller.yang.model.api.TypeDefinition; +import org.opendaylight.controller.yang.model.api.UsesNode; + + +public class LeafListSchemaNodeBuilderTest { + + private LeafSchemaNodeBuilder tested; + + private final String NAME = "test-leaf"; + + private final URI namespace = URI.create("test:leaf.name"); + private final Date revision = new Date(); + private final String prefix = "x"; + + private SchemaPath schemaPath; + private final String description = "description of container"; + private final String reference = "reference"; + + private QName typedefQName; + private TypeDefinition type; + @Mock private ConstraintDefinition constraint; + @Mock private UsesNodeBuilder usesBuilder; + @Mock private UsesNode uses; + @Mock private MustDefinitionBuilder mustBuilder; + @Mock private MustDefinition must; + @Mock private GroupingBuilder groupingBuilder; + @Mock private GroupingDefinition grouping; + + @Before + public void init() { + MockitoAnnotations.initMocks(this); + when(usesBuilder.build()).thenReturn(uses); + when(mustBuilder.build()).thenReturn(must); + when(groupingBuilder.build()).thenReturn(grouping); + + schemaPath = TestUtils.createSchemaPath(true, namespace, "main", "interface"); + typedefQName = new QName(namespace, "test-type"); + TypedefBuilder typeBuilder = new TypedefBuilder(typedefQName); + type = typeBuilder.build(); + + QName qname = new QName(namespace, revision, prefix, NAME); + tested = new LeafSchemaNodeBuilder(qname); + } + + @Test + public void test() { + tested.setType(type); + tested.setPath(schemaPath); + tested.setDescription(description); + tested.setReference(reference); + tested.setStatus(Status.OBSOLOTE); + tested.setConfiguration(false); + tested.setConstraints(constraint); + tested.setMustDefinitionBuilder(mustBuilder); + + LeafSchemaNode result = tested.build(); + + assertEquals(type, result.getType()); + assertEquals(schemaPath, result.getPath()); + assertEquals(description, result.getDescription()); + assertEquals(reference, result.getReference()); + assertEquals(Status.OBSOLOTE, result.getStatus()); + assertFalse(result.isConfiguration()); + assertEquals(constraint, result.getConstraints()); + assertEquals(must, result.getMustDefinition()); + } + +}