*/
package org.opendaylight.yangtools.sal.java.api.generator.test;
-import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import java.io.File;
final GeneratorJavaFile generator = new GeneratorJavaFile(new HashSet<>(types));
generator.generateToFile(sourcesOutputDir);
- // Test if all sources are generated
+ // Test if all sources are generated from 'module foo'
File fooParent = new File(sourcesOutputDir, NS_FOO);
- assertEquals(4, fooParent.listFiles().length);
+ testFilesCount(fooParent, 4);
assertTrue(new File(fooParent, "IgpLinkAttributes.java").exists());
assertTrue(new File(fooParent, "Link1.java").exists());
assertTrue(new File(fooParent, "Link1Builder.java").exists());
+ // Test if all sources are generated from 'module bar'
+ File barParent = new File(sourcesOutputDir, NS_BAR);
+ testFilesCount(barParent, 7);
+ assertTrue(new File(barParent, "BarData.java").exists());
+ assertTrue(new File(barParent, "NetworkTopology.java").exists());
+ assertTrue(new File(barParent, "NetworkTopologyBuilder.java").exists());
+ assertTrue(new File(barParent, "Link.java").exists());
+ assertTrue(new File(barParent, "LinkAttributes.java").exists());
+
+ File networkParent = new File(barParent, "network");
+ testFilesCount(networkParent, 1);
+ File topologyParent = new File(networkParent, "topology");
+ testFilesCount(topologyParent, 3);
+ assertTrue(new File(topologyParent, "Topology.java").exists());
+ assertTrue(new File(topologyParent, "TopologyBuilder.java").exists());
+ assertTrue(new File(topologyParent, "TopologyKey.java").exists());
+
+ File linkParent = new File(barParent, "link");
+ testFilesCount(linkParent, 3);
+ assertTrue(new File(linkParent, "Link.java").exists());
+ assertTrue(new File(linkParent, "LinkBuilder.java").exists());
+ assertTrue(new File(linkParent, "LinkKey.java").exists());
+
+ // Test if all sources are generated from 'module baz'
File bazParent = new File(sourcesOutputDir, NS_BAZ);
- assertEquals(4, bazParent.listFiles().length);
+ testFilesCount(bazParent, 4);
assertTrue(new File(bazParent, "IgpLinkAttributes1.java").exists());
assertTrue(new File(bazParent, "IgpLinkAttributes1Builder.java").exists());
assertTrue(new File(bazParent, "LinkAttributes.java").exists());
ClassLoader loader = new URLClassLoader(new URL[] { compiledOutputDir.toURI().toURL() });
+ try {
+ Class<?> link1Class = Class.forName(BASE_PKG + ".urn.opendaylight.foo.rev131008.Link1", true, loader);
+ String augmentableNode = BASE_PKG + ".urn.opendaylight.bar.rev131008.link.Link";
+ testAugmentation(link1Class, augmentableNode);
+
+ Class<?> igpLinkAttributesClass = Class.forName(BASE_PKG
+ + ".urn.opendaylight.foo.rev131008.IgpLinkAttributes", true, loader);
+ testImplementsIfc(link1Class, igpLinkAttributesClass);
+ } catch (ClassNotFoundException e) {
+ throw new AssertionError("Class for augment wasn't generated");
+ }
+
try {
Class<?> igpLinkAttributes1Class = Class.forName(BASE_PKG
+ ".urn.opendaylight.baz.rev131008.IgpLinkAttributes1", true, loader);
String augmentableNode = BASE_PKG + ".urn.opendaylight.foo.rev131008.igp.link.attributes.IgpLinkAttributes";
testAugmentation(igpLinkAttributes1Class, augmentableNode);
+
+ Class<?> linkAttributesClass = Class.forName(BASE_PKG + ".urn.opendaylight.baz.rev131008.LinkAttributes",
+ true, loader);
+ testImplementsIfc(igpLinkAttributes1Class, linkAttributesClass);
} catch (ClassNotFoundException e) {
- throw new AssertionError("IdentityClass must have no-arg constructor");
+ throw new AssertionError("Class for augment wasn't generated");
}
cleanUp(sourcesOutputDir, compiledOutputDir);
// Test if all sources are generated
File parent = new File(sourcesOutputDir, NS_TEST);
- assertEquals(6, parent.listFiles().length);
+ testFilesCount(parent, 6);
File keyArgs = new File(parent, "KeyArgs.java");
File links = new File(parent, "Links.java");
File linksBuilder = new File(parent, "LinksBuilder.java");
assertTrue(testData.exists());
parent = new File(sourcesOutputDir, NS_TEST + FS + "links");
- assertEquals(7, parent.listFiles().length);
+ testFilesCount(parent, 7);
File level = new File(parent, "Level.java");
File linkGroup = new File(parent, "LinkGroup.java");
File node = new File(parent, "Node.java");
assertTrue(linksClass.isInterface());
// FIXME: anyxml
assertEquals(5, linksClass.getDeclaredMethods().length);
- testImplementIfc(linksClass, keyArgsClass);
+ testImplementsIfc(linksClass, keyArgsClass);
// Test list key constructor arguments ordering
try {
// Test if all sources were generated from 'module foo'
File parent = new File(sourcesOutputDir, NS_FOO);
- assertEquals(7, parent.listFiles().length);
+ testFilesCount(parent, 7);
assertTrue(new File(parent, "Object.java").exists());
assertTrue(new File(parent, "OpenObject.java").exists());
assertTrue(new File(parent, "ExplicitRouteObject.java").exists());
assertTrue(new File(parent, "PathKeySubobject.java").exists());
parent = new File(parent, "object");
- assertEquals(2, parent.listFiles().length);
+ testFilesCount(parent, 2);
assertTrue(new File(parent, "Nodes.java").exists());
assertTrue(new File(parent, "NodesBuilder.java").exists());
parent = new File(sourcesOutputDir, NS_FOO + FS + "open");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "object");
- assertEquals(3, parent.listFiles().length);
+ testFilesCount(parent, 3);
assertTrue(new File(parent, "Nodes1.java").exists());
assertTrue(new File(parent, "Nodes1Builder.java").exists());
parent = new File(parent, "nodes");
- assertEquals(2, parent.listFiles().length);
+ testFilesCount(parent, 2);
assertTrue(new File(parent, "Links.java").exists());
assertTrue(new File(parent, "LinksBuilder.java").exists());
parent = new File(sourcesOutputDir, NS_FOO + FS + "explicit");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "route");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "object");
- assertEquals(3, parent.listFiles().length);
+ testFilesCount(parent, 3);
assertTrue(new File(parent, "Subobjects.java").exists());
assertTrue(new File(parent, "SubobjectsBuilder.java").exists());
parent = new File(parent, "subobjects");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "subobject");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "type");
- assertEquals(3, parent.listFiles().length);
+ testFilesCount(parent, 3);
assertTrue(new File(parent, "PathKey.java").exists());
assertTrue(new File(parent, "PathKeyBuilder.java").exists());
parent = new File(parent, "path");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "key");
- assertEquals(2, parent.listFiles().length);
+ testFilesCount(parent, 2);
assertTrue(new File(parent, "PathKey.java").exists());
assertTrue(new File(parent, "PathKeyBuilder.java").exists());
// Test if all sources were generated from 'module bar'
parent = new File(sourcesOutputDir, NS_BAR);
- assertEquals(3, parent.listFiles().length);
+ testFilesCount(parent, 3);
assertTrue(new File(parent, "BasicExplicitRouteSubobjects.java").exists());
assertTrue(new File(parent, "ExplicitRouteSubobjects.java").exists());
parent = new File(parent, "basic");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "explicit");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "route");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "subobjects");
- assertEquals(2, parent.listFiles().length);
+ testFilesCount(parent, 2);
assertTrue(new File(parent, "SubobjectType.java").exists());
parent = new File(parent, "subobject");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "type");
- assertEquals(4, parent.listFiles().length);
+ testFilesCount(parent, 4);
assertTrue(new File(parent, "IpPrefix.java").exists());
assertTrue(new File(parent, "IpPrefixBuilder.java").exists());
assertTrue(new File(parent, "Label.java").exists());
// Test if all sources were generated from 'module foo'
File parent = new File(sourcesOutputDir, NS_FOO);
- assertEquals(6, parent.listFiles().length);
+ testFilesCount(parent, 6);
File fooListener = new File(parent, "FooListener.java");
File pathAttributes = new File(parent, "PathAttributes.java");
File update = new File(parent, "Update.java");
assertTrue(updateBuilder.exists());
parent = new File(sourcesOutputDir, NS_FOO + FS + "path");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "attributes");
- assertEquals(2, parent.listFiles().length);
+ testFilesCount(parent, 2);
File origin = new File(parent, "Origin.java");
File originBuilder = new File(parent, "OriginBuilder.java");
assertTrue(origin.exists());
assertTrue(originBuilder.exists());
parent = new File(sourcesOutputDir, NS_FOO + FS + "update");
- assertEquals(2, parent.listFiles().length);
+ testFilesCount(parent, 2);
pathAttributes = new File(parent, "PathAttributes.java");
File pathAttributesBuilder = new File(parent, "PathAttributesBuilder.java");
assertTrue(pathAttributes.exists());
// Test if all sources were generated from 'module bar'
parent = new File(sourcesOutputDir, NS_BAR);
- assertEquals(5, parent.listFiles().length);
+ testFilesCount(parent, 5);
File destination = new File(parent, "Destination.java");
File pathAttributes1 = new File(parent, "PathAttributes1.java");
File pathAttributes1Builder = new File(parent, "PathAttributes1Builder.java");
assertTrue(pathAttributes1Builder.exists());
parent = new File(sourcesOutputDir, NS_BAR + FS + "destination");
- assertEquals(2, parent.listFiles().length);
+ testFilesCount(parent, 2);
File destinationType = new File(parent, "DestinationType.java");
assertTrue(destinationType.exists());
parent = new File(parent, "destination");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "type");
- assertEquals(2, parent.listFiles().length);
+ testFilesCount(parent, 2);
File destinationIpv4 = new File(parent, "DestinationIp.java");
File destinationIpv4Builder = new File(parent, "DestinationIpBuilder.java");
assertTrue(destinationIpv4.exists());
assertTrue(destinationIpv4Builder.exists());
parent = new File(sourcesOutputDir, NS_BAR + FS + "update");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "path");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "attributes");
- assertEquals(3, parent.listFiles().length);
+ testFilesCount(parent, 3);
File mpUnreachNlri = new File(parent, "MpUnreachNlri.java");
File mpUnreachNlriBuilder = new File(parent, "MpUnreachNlriBuilder.java");
assertTrue(mpUnreachNlri.exists());
assertTrue(mpUnreachNlriBuilder.exists());
parent = new File(parent, "mp");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "unreach");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "nlri");
- assertEquals(3, parent.listFiles().length);
+ testFilesCount(parent, 3);
File withdrawnRoutes = new File(parent, "WithdrawnRoutes.java");
File withdrawnRoutesBuilder = new File(parent, "WithdrawnRoutesBuilder.java");
assertTrue(withdrawnRoutes.exists());
assertTrue(withdrawnRoutesBuilder.exists());
parent = new File(parent, "withdrawn");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "routes");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
destinationType = new File(parent, "DestinationType.java");
assertTrue(destinationType.exists());
// Test if all sources were generated from 'module baz'
parent = new File(sourcesOutputDir, NS_BAZ);
- assertEquals(2, parent.listFiles().length);
+ testFilesCount(parent, 2);
File linkstateDestination = new File(parent, "LinkstateDestination.java");
assertTrue(linkstateDestination.exists());
parent = new File(sourcesOutputDir, NS_BAZ + FS + "update");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "path");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "attributes");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "mp");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "unreach");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "nlri");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "withdrawn");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "routes");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "destination");
- assertEquals(1, parent.listFiles().length);
+ testFilesCount(parent, 1);
parent = new File(parent, "type");
- assertEquals(2, parent.listFiles().length);
+ testFilesCount(parent, 2);
File destinationLinkstate = new File(parent, "DestinationLinkstate.java");
File destinationLinkstateBuilder = new File(parent, "DestinationLinkstateBuilder.java");
assertTrue(destinationLinkstate.exists());
generator.generateToFile(sourcesOutputDir);
File parent = new File(sourcesOutputDir, NS_TEST);
+ testFilesCount(parent, 4);
assertTrue(new File(parent, "TestData.java").exists());
assertTrue(new File(parent, "Nodes.java").exists());
assertTrue(new File(parent, "NodesBuilder.java").exists());
// Test if all sources are generated
File fooParent = new File(sourcesOutputDir, NS_FOO);
- assertEquals(3, fooParent.listFiles().length);
+ testFilesCount(fooParent, 3);
assertTrue(new File(fooParent, "FooData.java").exists());
assertTrue(new File(fooParent, "Nodes.java").exists());
assertTrue(new File(fooParent, "NodesBuilder.java").exists());
File barParent = new File(sourcesOutputDir, NS_BAR);
- assertEquals(1, barParent.listFiles().length);
+ testFilesCount(barParent, 1);
assertTrue(new File(barParent, "IdentityClass.java").exists());
// Test if sources are compilable