Repository: brooklyn-server
Updated Branches:
  refs/heads/master f4a6bb868 -> e5dcf40a9


BROOKLYN-267: test for brooklyn.parameters inheritance

Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/4c5d099d
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/4c5d099d
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/4c5d099d

Branch: refs/heads/master
Commit: 4c5d099d16d5b5dffa2c44bb26f8ab5c181daf32
Parents: f4a6bb8
Author: Aled Sage <aled.s...@gmail.com>
Authored: Mon May 16 14:59:09 2016 +0100
Committer: Aled Sage <aled.s...@gmail.com>
Committed: Mon May 16 14:59:09 2016 +0100

----------------------------------------------------------------------
 .../brooklyn/catalog/CatalogYamlEntityTest.java | 50 ++++++++++++++++++++
 1 file changed, 50 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/4c5d099d/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java
----------------------------------------------------------------------
diff --git 
a/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java
 
b/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java
index 38e2941..a75c325 100644
--- 
a/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java
+++ 
b/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java
@@ -19,6 +19,7 @@
 package org.apache.brooklyn.camp.brooklyn.catalog;
 
 import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertNotNull;
 import static org.testng.Assert.assertTrue;
 import static org.testng.Assert.fail;
 
@@ -33,11 +34,14 @@ import 
org.apache.brooklyn.api.internal.AbstractBrooklynObjectSpec;
 import org.apache.brooklyn.api.typereg.BrooklynTypeRegistry;
 import org.apache.brooklyn.api.typereg.RegisteredType;
 import org.apache.brooklyn.camp.brooklyn.AbstractYamlTest;
+import org.apache.brooklyn.config.ConfigKey;
 import org.apache.brooklyn.core.catalog.internal.CatalogUtils;
+import org.apache.brooklyn.core.config.ConfigKeys;
 import org.apache.brooklyn.core.mgmt.osgi.OsgiStandaloneTest;
 import org.apache.brooklyn.core.test.entity.TestEntity;
 import org.apache.brooklyn.core.test.entity.TestEntityImpl;
 import org.apache.brooklyn.core.typereg.RegisteredTypes;
+import org.apache.brooklyn.entity.stock.BasicApplication;
 import org.apache.brooklyn.entity.stock.BasicEntity;
 import org.apache.brooklyn.test.support.TestResourceUnavailableException;
 import org.apache.brooklyn.util.collections.MutableList;
@@ -804,6 +808,52 @@ public class CatalogYamlEntityTest extends 
AbstractYamlTest {
                 "- type: vanilla");
     }
 
+    @Test
+    public void testItemWithBrooklynParameters() throws Exception {
+        String id = "inline_version.app";
+        String version = TEST_VERSION;
+        addCatalogItems(
+                "brooklyn.catalog:",
+                "  id: " + id,
+                "  version: " + TEST_VERSION,
+                "  item:",
+                "    brooklyn.parameters:",
+                "    - name: test.myconf",
+                "      type:  string",
+                "      default: myval",
+                "    services:",
+                "    - type: " + BasicApplication.class.getName(),
+                "      brooklyn.config:",
+                "        myconf2: $brooklyn:config(\"test.myconf\")",
+                "        myconf2.from.root: 
$brooklyn:root().config(\"test.myconf\")",
+                "      brooklyn.children:",
+                "      - type: "+BasicEntity.class.getName(),
+                "        brooklyn.config:",
+                "          myconf3: $brooklyn:config(\"test.myconf\")",
+                "          myconf3.from.root: 
$brooklyn:root().config(\"test.myconf\")");
+
+        RegisteredType catalogItem = mgmt().getTypeRegistry().get(id, version);
+        assertEquals(catalogItem.getVersion(), version);
+        
+        String yaml = "name: simple-app-yaml\n" +
+                "location: localhost\n" +
+                "services: \n" +
+                "  - type: "+id+":"+version;
+        Entity app = createAndStartApplication(yaml);
+        Entity child = Iterables.getOnlyElement(app.getChildren());
+        ConfigKey<?> configKey = 
app.getEntityType().getConfigKey("test.myconf");
+        assertNotNull(configKey);
+        assertEquals(app.config().get(configKey), "myval");
+        
assertEquals(app.config().get(ConfigKeys.newStringConfigKey("myconf2.from.root")),
 "myval");
+        
assertEquals(child.config().get(ConfigKeys.newStringConfigKey("myconf3.from.root")),
 "myval");
+        
assertEquals(app.config().get(ConfigKeys.newStringConfigKey("myconf2")), 
"myval");
+        
+        // TODO Because of https://issues.apache.org/jira/browse/BROOKLYN-267, 
the assertion below fails: 
+        // 
assertEquals(child.config().get(ConfigKeys.newStringConfigKey("myconf3")), 
"myval");
+        
+        mgmt().getCatalog().deleteCatalogItem(id, version);
+    }
+
     private void registerAndLaunchAndAssertSimpleEntity(String symbolicName, 
String serviceType) throws Exception {
         addCatalogOSGiEntity(symbolicName, serviceType);
         String yaml = "name: simple-app-yaml\n" +

Reply via email to