Repository: incubator-taverna-common-activities
Updated Branches:
  refs/heads/docker 19b2dd013 -> a87941916


Adding ActivityInvoker for unit tests.


Project: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/commit/4cf2009a
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/tree/4cf2009a
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/diff/4cf2009a

Branch: refs/heads/docker
Commit: 4cf2009ab531243ee4bb715fb0ff79b5ce9a9a83
Parents: 003b859
Author: Nadeesh Dilanga <[email protected]>
Authored: Tue Jun 28 22:57:41 2016 -0400
Committer: Nadeesh Dilanga <[email protected]>
Committed: Tue Jun 28 22:57:41 2016 -0400

----------------------------------------------------------------------
 .../activities/docker/DockerActivity.java       | 21 +++++++++++---------
 .../docker/test/DockerActivityTest.java         | 17 +++++-----------
 .../docker/test/TestDockerCommands.java         | 11 +---------
 3 files changed, 18 insertions(+), 31 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/4cf2009a/taverna-docker-activity/src/main/java/org/apache/taverna/activities/docker/DockerActivity.java
----------------------------------------------------------------------
diff --git 
a/taverna-docker-activity/src/main/java/org/apache/taverna/activities/docker/DockerActivity.java
 
b/taverna-docker-activity/src/main/java/org/apache/taverna/activities/docker/DockerActivity.java
index e31f09f..bf3585e 100644
--- 
a/taverna-docker-activity/src/main/java/org/apache/taverna/activities/docker/DockerActivity.java
+++ 
b/taverna-docker-activity/src/main/java/org/apache/taverna/activities/docker/DockerActivity.java
@@ -67,6 +67,8 @@ public class DockerActivity extends 
AbstractAsynchronousActivity<JsonNode> {
 
     public static final String IN_IMAGE_NAME = "image-name";
 
+    public static final String RESPONSE_BODY_KEY = "response_body";
+
     private static Logger LOG = Logger.getLogger(DockerActivity.class);
 
 
@@ -94,13 +96,12 @@ public class DockerActivity extends 
AbstractAsynchronousActivity<JsonNode> {
                 T2Reference responseBodyRef = null;
                 InvocationContext context = callback.getContext();
                 ReferenceService referenceService = 
context.getReferenceService();
-                String action = map.get(ACTION).getLocalPart();
+                String action = getRenderedParam(referenceService,context, 
map.get(ACTION));
 
                 JsonNodeFactory factory = new ObjectMapper().getNodeFactory();
                 ObjectNode outJson = factory.objectNode();
 
                 RemoteClient remoteClient = new 
RemoteClient(containerConfiguration);
-                try {
                     if (CREATE_CONTAINER.equalsIgnoreCase(action)) {
 
                         CreateContainerResponse response = 
remoteClient.createContainer();
@@ -108,7 +109,7 @@ public class DockerActivity extends 
AbstractAsynchronousActivity<JsonNode> {
 
                     } else if (INSPECT.equalsIgnoreCase(action)) {
 
-                        String imageName = 
map.get(IN_IMAGE_NAME).getLocalPart();
+                        String imageName = getRenderedParam(referenceService, 
context, map.get(IN_IMAGE_NAME));
                         InspectImageResponse response = 
remoteClient.inspect(imageName);
                         outJson.put(OUT_IMAGE_ID, response.getId());
                         outJson.put(OUT_IMAGE_AUTHOR, response.getAuthor());
@@ -123,14 +124,16 @@ public class DockerActivity extends 
AbstractAsynchronousActivity<JsonNode> {
                     }
                     //TODO add any more supporting actions
                     responseBodyRef = 
referenceService.register(outJson.toString(), 0, true, context);
-                } catch (Exception e){
-                    String log = "Error occurred while executing remote docker 
commands " + e.getMessage();
-                    LOG.error(log ,e);
-                    responseBodyRef = 
referenceService.register("{\"error\",\"" + log + "\"}", 0, true, context);
-                }
-                outputs.put("response_body", responseBodyRef);
+
+                outputs.put(RESPONSE_BODY_KEY, responseBodyRef);
                 callback.receiveResult(outputs, new int[0]);
             }
         });
     }
+
+
+    private String getRenderedParam(ReferenceService referenceService, 
InvocationContext context, T2Reference key){
+        return (String) referenceService.renderIdentifier(key, String.class, 
context);
+
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/4cf2009a/taverna-docker-activity/src/test/java/org/apache/taverna/activities/docker/test/DockerActivityTest.java
----------------------------------------------------------------------
diff --git 
a/taverna-docker-activity/src/test/java/org/apache/taverna/activities/docker/test/DockerActivityTest.java
 
b/taverna-docker-activity/src/test/java/org/apache/taverna/activities/docker/test/DockerActivityTest.java
index 4759e4c..d31e625 100755
--- 
a/taverna-docker-activity/src/test/java/org/apache/taverna/activities/docker/test/DockerActivityTest.java
+++ 
b/taverna-docker-activity/src/test/java/org/apache/taverna/activities/docker/test/DockerActivityTest.java
@@ -22,16 +22,10 @@ package org.apache.taverna.activities.docker.test;
 import com.fasterxml.jackson.databind.node.JsonNodeFactory;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import org.apache.taverna.activities.docker.DockerActivity;
-import org.apache.taverna.activities.docker.DockerContainerConfiguration;
 import org.apache.taverna.activities.docker.DockerContainerConfigurationImpl;
 import org.apache.taverna.activities.docker.DockerRemoteConfig;
 import org.apache.taverna.activities.testutils.ActivityInvoker;
-import org.apache.taverna.reference.T2Reference;
-import org.apache.taverna.workflowmodel.AbstractPort;
-import org.apache.taverna.workflowmodel.Edits;
-import org.apache.taverna.workflowmodel.impl.EditsImpl;
-import 
org.apache.taverna.workflowmodel.processor.activity.impl.ActivityInputPortImpl;
-import 
org.apache.taverna.workflowmodel.processor.activity.impl.ActivityOutputPortImpl;
+import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -39,9 +33,6 @@ import java.io.File;
 import java.util.HashMap;
 import java.util.Map;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
 public class DockerActivityTest {
 
     private static final String IMAGE_NAME = "training/webapp";
@@ -52,6 +43,7 @@ public class DockerActivityTest {
 
     private DockerContainerConfigurationImpl containerConfiguration;
 
+
        @Before
        public void setup() throws Exception {
         activityConfiguration = JsonNodeFactory.instance.objectNode();
@@ -87,9 +79,10 @@ public class DockerActivityTest {
         inputs.put(DockerActivity.IN_IMAGE_NAME, IMAGE_NAME);
 
                Map<String, Class<?>> expectedOutputs = new HashMap<String, 
Class<?>>();
-               expectedOutputs.put("response_body", T2Reference.class);
+               expectedOutputs.put(DockerActivity.RESPONSE_BODY_KEY, 
String.class);
 
                Map<String,Object> outputs = 
ActivityInvoker.invokeAsyncActivity(activity, inputs, expectedOutputs);
-        System.out.println(outputs.size());
+        System.out.println(outputs.get(DockerActivity.RESPONSE_BODY_KEY));
+        Assert.assertNotNull(outputs.get(DockerActivity.RESPONSE_BODY_KEY));
        }
 }

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/4cf2009a/taverna-docker-activity/src/test/java/org/apache/taverna/activities/docker/test/TestDockerCommands.java
----------------------------------------------------------------------
diff --git 
a/taverna-docker-activity/src/test/java/org/apache/taverna/activities/docker/test/TestDockerCommands.java
 
b/taverna-docker-activity/src/test/java/org/apache/taverna/activities/docker/test/TestDockerCommands.java
index 0bbb612..0644545 100644
--- 
a/taverna-docker-activity/src/test/java/org/apache/taverna/activities/docker/test/TestDockerCommands.java
+++ 
b/taverna-docker-activity/src/test/java/org/apache/taverna/activities/docker/test/TestDockerCommands.java
@@ -40,7 +40,7 @@ public class TestDockerCommands {
 
     private static final String DOCKER_LOGIN_SUCCESS = "Login Succeeded";
 
-    public TestDockerCommands(){
+    public TestDockerCommands() {
         DockerContainerConfigurationImpl containerConfiguration = new 
DockerContainerConfigurationImpl(new TestConfigurationManager());
         
containerConfiguration.getInternalPropertyMap().put(DockerContainerConfigurationImpl.NAME,CONTAINER_NAME);
         
containerConfiguration.getInternalPropertyMap().put(DockerContainerConfigurationImpl.IMAGE,IMAGE_NAME);
@@ -83,13 +83,4 @@ public class TestDockerCommands {
         }
     }
 
-    /**
-     * Corresponding docker command > docker images --no-trunc | head
-     */
-    @Test
-    public void testInspectImage1(){
-        InspectImageResponse response = remoteClient.inspect(IMAGE_NAME);
-        System.out.println(response.getId());
-        Assert.assertNotNull(response.getId());
-    }
 }

Reply via email to