X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fbinding-generator-impl%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Fyang%2Ftypes%2Ftest%2FGeneratedTypesTest.java;h=bd7fcb9ce661fa2f0a648f9182df723579044e3a;hp=425c23246d98a5e4e90ed708e8eeca6187d78860;hb=f9de1cd89c17888a2bd02486d5f7519f0b391bba;hpb=960ee728b77e39cd95b6c20892f01b4db6258f41;ds=sidebyside diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/yang/types/test/GeneratedTypesTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/yang/types/test/GeneratedTypesTest.java index 425c23246d..bd7fcb9ce6 100644 --- a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/yang/types/test/GeneratedTypesTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/yang/types/test/GeneratedTypesTest.java @@ -17,6 +17,7 @@ import java.util.Set; import org.junit.Test; import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator; import org.opendaylight.controller.sal.binding.generator.impl.BindingGeneratorImpl; +import org.opendaylight.controller.sal.binding.model.api.Enumeration; import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty; import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject; import org.opendaylight.controller.sal.binding.model.api.GeneratedType; @@ -37,6 +38,47 @@ public class GeneratedTypesTest { return parser.resolveSchemaContext(modules); } + @Test + public void testLeafEnumResolving() { + final String ietfInterfacesPath = getClass().getResource( + "/enum-test-models/ietf-interfaces@2012-11-15.yang").getPath(); + final String ifTypePath = getClass().getResource( + "/enum-test-models/iana-if-type@2012-06-05.yang").getPath(); + final String yangTypesPath = getClass().getResource( + "/enum-test-models/ietf-yang-types@2010-09-24.yang").getPath(); + + final SchemaContext context = resolveSchemaContextFromFiles( + ietfInterfacesPath, ifTypePath, yangTypesPath); + assertTrue(context != null); + + final BindingGenerator bindingGen = new BindingGeneratorImpl(); + final List genTypes = bindingGen.generateTypes(context); + assertTrue(genTypes != null); + } + + @Test + public void testTypedefEnumResolving() { + final String ianaIfTypePath = getClass().getResource( + "/leafref-test-models/iana-if-type@2012-06-05.yang").getPath(); + + final SchemaContext context = resolveSchemaContextFromFiles(ianaIfTypePath); + assertTrue(context != null); + + final BindingGenerator bindingGen = new BindingGeneratorImpl(); + final List genTypes = bindingGen.generateTypes(context); + assertTrue(genTypes != null); + assertEquals(1, genTypes.size()); + + final Type type = genTypes.get(0); + assertTrue(type instanceof GeneratedType); + + final GeneratedType genType = (GeneratedType) type; + assertEquals(1, genType.getEnumDefintions().size()); + + final Enumeration enumer = genType.getEnumDefintions().get(0); + assertEquals(272, enumer.getValues().size()); + } + @Test public void testMultipleModulesResolving() { final String topologyPath = getClass().getResource( @@ -51,7 +93,7 @@ public class GeneratedTypesTest { final List genTypes = bindingGen.generateTypes(context); assertTrue(genTypes != null); - assertEquals(11, genTypes.size()); + assertEquals(13, genTypes.size()); } @Test @@ -88,9 +130,9 @@ public class GeneratedTypesTest { final BindingGenerator bindingGen = new BindingGeneratorImpl(); final List genTypes = bindingGen.generateTypes(context); - assertEquals(21, genTypes.size()); + assertEquals(25, genTypes.size()); assertTrue(genTypes != null); - + int resolvedLeafrefCount = 0; for (final Type type : genTypes) { if (type.getName().equals("InterfaceKey") @@ -98,7 +140,7 @@ public class GeneratedTypesTest { final GeneratedTransferObject genTO = (GeneratedTransferObject) type; final List properties = genTO .getProperties(); - + assertTrue(properties != null); for (final GeneratedProperty property : properties) { if (property.getName().equals("InterfaceId")) { @@ -217,7 +259,7 @@ public class GeneratedTypesTest { final List genTypes = bindingGen.generateTypes(context); assertTrue(genTypes != null); - assertEquals(2, genTypes.size()); + assertEquals(3, genTypes.size()); final GeneratedType simpleContainer = (GeneratedType) genTypes.get(0); final GeneratedType nestedContainer = (GeneratedType) genTypes.get(1); @@ -295,7 +337,7 @@ public class GeneratedTypesTest { final List genTypes = bindingGen.generateTypes(context); assertTrue(genTypes != null); - assertEquals(2, genTypes.size()); + assertEquals(3, genTypes.size()); final GeneratedType simpleContainer = (GeneratedType) genTypes.get(0); final GeneratedType nestedContainer = (GeneratedType) genTypes.get(1); @@ -368,7 +410,7 @@ public class GeneratedTypesTest { final List genTypes = bindingGen.generateTypes(context); assertTrue(genTypes != null); - assertEquals(4, genTypes.size()); + assertEquals(5, genTypes.size()); int genTypesCount = 0; int genTOsCount = 0; @@ -451,7 +493,7 @@ public class GeneratedTypesTest { final List genTypes = bindingGen.generateTypes(context); assertTrue(genTypes != null); - assertEquals(6, genTypes.size()); + assertEquals(7, genTypes.size()); int genTypesCount = 0; int genTOsCount = 0; @@ -483,7 +525,7 @@ public class GeneratedTypesTest { } } - assertEquals(4, genTypesCount); + assertEquals(5, genTypesCount); assertEquals(2, genTOsCount); } @@ -498,7 +540,7 @@ public class GeneratedTypesTest { final List genTypes = bindingGen.generateTypes(context); assertTrue(genTypes != null); - assertEquals(13, genTypes.size()); + assertEquals(14, genTypes.size()); int genTypesCount = 0; int genTOsCount = 0; @@ -510,7 +552,7 @@ public class GeneratedTypesTest { } } - assertEquals(10, genTypesCount); + assertEquals(11, genTypesCount); assertEquals(3, genTOsCount); } }