list.addAll( children ? c.getChildren() : c.getAncestors()); for( Facet facet : findAllFacets( c )) list.addAll( children ? facet.getChildren() : facet.getAncestors());
s = writeCollection( component.getChildren()); if( ! Utils.isEmptyOrWhitespaces( s )) { p = new BlockProperty( file, ParsingConstants.PROPERTY_GRAPH_CHILDREN, s );
@Test public void testInsertChild() { Component component_1 = new Component( "comp 1" ); Component component_1_1 = new Component( "comp 11" ); Assert.assertEquals( 0, component_1.getAncestors().size()); Assert.assertEquals( 0, component_1.getChildren().size()); Assert.assertEquals( 0, component_1_1.getAncestors().size()); Assert.assertEquals( 0, component_1_1.getChildren().size()); component_1.addChild( component_1_1 ); Assert.assertEquals( 0, component_1.getAncestors().size()); Assert.assertEquals( 1, component_1.getChildren().size()); Assert.assertEquals( 1, component_1_1.getAncestors().size()); Assert.assertEquals( 0, component_1_1.getChildren().size()); Assert.assertEquals( component_1_1, component_1.getChildren().iterator().next()); Assert.assertEquals( component_1, component_1_1.getAncestors().iterator().next()); Assert.assertNotSame( component_1, component_1_1 ); }
for( AbstractType type : comp.getChildren()) { if( type instanceof Facet ) { children.add( type );
for( AbstractType type : comp.getChildren()) { if( type instanceof Facet ) { children.add( type );
Component root1 = ComponentHelpers.findComponent( app.getGraphs(), ComplexApplicationFactory1.ROOT_1 ); Assert.assertNotNull( root1 ); Assert.assertEquals( 1, root1.getChildren().size()); Assert.assertEquals( 0, root2.getChildren().size()); Assert.assertEquals( 0, c.getChildren().size()); Assert.assertEquals( 0, ComponentHelpers.findAllChildren( c ).size()); Assert.assertEquals( 0, c.getChildren().size()); Assert.assertEquals( 0, ComponentHelpers.findAllChildren( c ).size()); Assert.assertEquals( 1, c.getChildren().size()); Assert.assertEquals( ComplexApplicationFactory1.APP_3, c.getChildren().iterator().next().getName());
Assert.assertEquals( 0, c1.importedVariables.size()); Assert.assertEquals( 1, c1.getFacets().size()); Assert.assertEquals( 0, c1.getChildren().size()); Assert.assertEquals( 0, comp2.importedVariables.size()); Assert.assertEquals( 0, comp2.getFacets().size()); Assert.assertEquals( 0, comp2.getChildren().size());
@Test public void testLoadApplication_Mongo() throws Exception { File directory = TestUtils.findTestFile( "/applications/mongo" ); ApplicationLoadResult result = RuntimeModelIo.loadApplication( directory ); Assert.assertNotNull( result ); Assert.assertNotNull( result.applicationTemplate ); Assert.assertEquals( 0, result.applicationTemplate.externalExports.size()); Assert.assertEquals( 2, result.loadErrors.size()); for( RoboconfError error : result.loadErrors ) Assert.assertEquals( ErrorCode.PROJ_NO_RESOURCE_DIRECTORY, error.getErrorCode()); Assert.assertEquals( "Mongo", result.applicationTemplate.getName()); Assert.assertNotNull( result.applicationTemplate.getGraphs()); Graphs g = result.applicationTemplate.getGraphs(); Assert.assertEquals( 1, g.getRootComponents().size()); Component vmComponent = g.getRootComponents().iterator().next(); Assert.assertEquals( "VM", vmComponent.getName()); Assert.assertEquals( "target", vmComponent.getInstallerName()); Assert.assertEquals( 0, vmComponent.getFacets().size()); Collection<Component> children = ComponentHelpers.findAllChildren( vmComponent ); Assert.assertEquals( 1, children.size()); Component childComponent = children.iterator().next(); Assert.assertEquals( "puppet", childComponent.getInstallerName()); Assert.assertEquals( 0, childComponent.getChildren().size()); Assert.assertEquals( 2, childComponent.exportedVariables.size()); Assert.assertNull( childComponent.exportedVariables.get( "Mongo.ip" )); Assert.assertEquals( "27017", ComponentHelpers.findAllExportedVariables( childComponent ).get( "Mongo.port" )); Assert.assertEquals( 2, childComponent.importedVariables.size()); Assert.assertTrue( childComponent.importedVariables.containsKey( "Mongo.ip" )); Assert.assertTrue( childComponent.importedVariables.containsKey( "Mongo.port" )); }
Assert.assertEquals( 0, c1.importedVariables.size()); Assert.assertEquals( 1, c1.getFacets().size()); Assert.assertEquals( 0, c1.getChildren().size()); Assert.assertEquals( 0, c2.importedVariables.size()); Assert.assertEquals( 0, c2.getFacets().size()); Assert.assertEquals( 1, c2.getChildren().size()); Assert.assertEquals( 0, comp1.importedVariables.size()); Assert.assertEquals( 0, comp1.getFacets().size()); Assert.assertEquals( 0, comp1.getChildren().size()); Assert.assertEquals( 0, comp2.importedVariables.size()); Assert.assertEquals( 0, comp2.getFacets().size()); Assert.assertEquals( 0, comp2.getChildren().size());
Assert.assertEquals( "App", childComponent.getName()); Assert.assertEquals( "logger", childComponent.getInstallerName()); Assert.assertEquals( 0, childComponent.getChildren().size());
Assert.assertEquals( "VM", vmComponent.getName()); Assert.assertEquals( "target", vmComponent.getInstallerName()); Assert.assertEquals( 3, vmComponent.getChildren().size());