You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@edgent.apache.org by dl...@apache.org on 2016/12/29 18:07:00 UTC

[1/4] incubator-edgent git commit: [Edgent-319] fix CommandStreamTest on MSWin

Repository: incubator-edgent
Updated Branches:
  refs/heads/master e47ba5417 -> cc405cc6c


[Edgent-319] fix CommandStreamTest on MSWin

Project: http://git-wip-us.apache.org/repos/asf/incubator-edgent/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-edgent/commit/88f3a535
Tree: http://git-wip-us.apache.org/repos/asf/incubator-edgent/tree/88f3a535
Diff: http://git-wip-us.apache.org/repos/asf/incubator-edgent/diff/88f3a535

Branch: refs/heads/master
Commit: 88f3a5353c100ae61acccb505abcbe7173ee6eae
Parents: c7cbe49
Author: Dale LaBossiere <dl...@us.ibm.com>
Authored: Wed Dec 28 10:40:26 2016 -0500
Committer: Dale LaBossiere <dl...@us.ibm.com>
Committed: Wed Dec 28 10:40:26 2016 -0500

----------------------------------------------------------------------
 .../connectors/command/CommandStreamsTest.java  | 36 +++++++++++++++++---
 1 file changed, 32 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/88f3a535/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
----------------------------------------------------------------------
diff --git a/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java b/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
index a24bec8..3959dda 100644
--- a/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
+++ b/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
@@ -20,6 +20,7 @@ package org.apache.edgent.test.connectors.command;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertNotNull;
+import static org.junit.Assume.assumeTrue;
 
 import java.io.File;
 import java.lang.ProcessBuilder.Redirect;
@@ -50,6 +51,28 @@ public class CommandStreamsTest extends TopologyAbstractTest implements DirectTe
             "Line 2",
             "Line 3",
     };
+    
+    private boolean isWindows() {
+      return System.getProperty("os.name").contains("Windows");
+    }
+    
+    private String[] mkCatFileCmd(String path) {
+      if (isWindows()) {
+        return new String[] {"cmd", "/c", "type", path};
+      }
+      else {
+        return new String[] {"cat", path};
+      }
+    }
+    
+    private String[] mkCatStdInOutCmd() {
+      if (isWindows()) {
+        return new String[] {"cmd", "/c", "findstr", "^"};
+      }
+      else {
+        return new String[] {"cat"};
+      }
+    }
 
     public String[] getLines() {
         return stdLines;
@@ -77,7 +100,7 @@ public class CommandStreamsTest extends TopologyAbstractTest implements DirectTe
       Path tempFile1 = FileUtil.createTempFile("test1", ".txt", getLines());
       System.out.println("Test: "+t.getName()+" "+tempFile1);
       
-      ProcessBuilder cmd = new ProcessBuilder("cat", tempFile1.toString());
+      ProcessBuilder cmd = new ProcessBuilder(mkCatFileCmd(tempFile1.toString()));
       
       int NUM_POLLS = 3;
       List<String> expLines = new ArrayList<>();
@@ -103,7 +126,7 @@ public class CommandStreamsTest extends TopologyAbstractTest implements DirectTe
       Path tempFile1 = FileUtil.createTempFile("test1", ".txt", getLines());
       System.out.println("Test: "+t.getName()+" "+tempFile1);
       
-      ProcessBuilder cmd = new ProcessBuilder("cat", tempFile1.toString());
+      ProcessBuilder cmd = new ProcessBuilder(mkCatFileCmd(tempFile1.toString()));
       
       // N.B. if looking at trace: EDGENT-224 generate() continues running after job is closed
       TStream<String> s = CommandStreams.generate(t, cmd);
@@ -123,7 +146,7 @@ public class CommandStreamsTest extends TopologyAbstractTest implements DirectTe
       Path tempFile1 = FileUtil.createTempFile("test1", ".txt", getLines());
       System.out.println("Test: "+t.getName()+" "+tempFile1);
       
-      ProcessBuilder cmd = new ProcessBuilder("cat", tempFile1.toString());
+      ProcessBuilder cmd = new ProcessBuilder(mkCatFileCmd(tempFile1.toString()));
 
       int NUM_RUNS = 3;
       List<String> expLines = new ArrayList<>();
@@ -144,7 +167,7 @@ public class CommandStreamsTest extends TopologyAbstractTest implements DirectTe
       Path tempFile1 = FileUtil.createTempFile("test1", ".txt", new String[0]);
       System.out.println("Test: "+t.getName()+" "+tempFile1);
       
-      ProcessBuilder cmd = new ProcessBuilder("cat")
+      ProcessBuilder cmd = new ProcessBuilder(mkCatStdInOutCmd())
           .redirectOutput(Redirect.appendTo(tempFile1.toFile()));
       
       TStream<String> s = t.strings(getLines());
@@ -169,6 +192,11 @@ public class CommandStreamsTest extends TopologyAbstractTest implements DirectTe
     public void testSinkRestart() throws Exception {
       Topology t = newTopology("testSinkRestart");
 
+      // until someone cares enough to create Win version of sinkcmd
+      if (isWindows()) {
+        assumeTrue("need sinkcmd for Windows", false);
+      }
+
       Path tempFile1 = FileUtil.createTempFile("test1", ".txt", new String[0]);
       System.out.println("Test: "+t.getName()+" "+tempFile1);
 


[3/4] incubator-edgent git commit: close output stream to process before destroying it

Posted by dl...@apache.org.
close output stream to process before destroying it

without the close, testSink() fails on Window seemingly because the
"catStdInOut" command isn't given a chance to write its results and
validation fails

Project: http://git-wip-us.apache.org/repos/asf/incubator-edgent/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-edgent/commit/98167a6c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-edgent/tree/98167a6c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-edgent/diff/98167a6c

Branch: refs/heads/master
Commit: 98167a6cbeb3492a403e76e95ecd80631538eb06
Parents: 89502e8
Author: Dale LaBossiere <dl...@us.ibm.com>
Authored: Thu Dec 29 12:35:47 2016 -0500
Committer: Dale LaBossiere <dl...@us.ibm.com>
Committed: Thu Dec 29 12:35:47 2016 -0500

----------------------------------------------------------------------
 .../edgent/connectors/command/runtime/CommandConnector.java  | 8 ++++++++
 .../edgent/test/connectors/command/CommandStreamsTest.java   | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/98167a6c/connectors/command/src/main/java/org/apache/edgent/connectors/command/runtime/CommandConnector.java
----------------------------------------------------------------------
diff --git a/connectors/command/src/main/java/org/apache/edgent/connectors/command/runtime/CommandConnector.java b/connectors/command/src/main/java/org/apache/edgent/connectors/command/runtime/CommandConnector.java
index fca3d4c..97bcb01 100644
--- a/connectors/command/src/main/java/org/apache/edgent/connectors/command/runtime/CommandConnector.java
+++ b/connectors/command/src/main/java/org/apache/edgent/connectors/command/runtime/CommandConnector.java
@@ -86,6 +86,14 @@ abstract class CommandConnector implements AutoCloseable {
   
   protected void closeProcess() {
     if (currentProcess != null) {
+      if (currentProcess.getOutputStream() != null) {
+        try {
+          currentProcess.getOutputStream().close();
+        }
+        catch (IOException e) {
+          logger.error("Unable to close OutputStream to cmd {}", toCmdForMsg(), e);
+        }
+      }
       currentProcess.destroy();
       currentProcess = null;
     }

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/98167a6c/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
----------------------------------------------------------------------
diff --git a/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java b/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
index 6d68904..bf4bb65 100644
--- a/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
+++ b/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
@@ -67,7 +67,7 @@ public class CommandStreamsTest extends TopologyAbstractTest implements DirectTe
     
     private String[] mkCatStdInOutCmd() {
       if (isWindows()) {
-        return new String[] {"cmd", "/c", "findstr", "^"};
+        return new String[] {"cmd", "/c", "findstr", ".*"};
       }
       else {
         return new String[] {"cat"};


[2/4] incubator-edgent git commit: avoid newer form of assumeTrue

Posted by dl...@apache.org.
avoid newer form of assumeTrue

Project: http://git-wip-us.apache.org/repos/asf/incubator-edgent/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-edgent/commit/89502e84
Tree: http://git-wip-us.apache.org/repos/asf/incubator-edgent/tree/89502e84
Diff: http://git-wip-us.apache.org/repos/asf/incubator-edgent/diff/89502e84

Branch: refs/heads/master
Commit: 89502e84af32cd4f97fdbcc3e96c73a3da77fb67
Parents: 88f3a53
Author: Dale LaBossiere <dl...@us.ibm.com>
Authored: Wed Dec 28 15:10:55 2016 -0500
Committer: Dale LaBossiere <dl...@us.ibm.com>
Committed: Wed Dec 28 15:10:55 2016 -0500

----------------------------------------------------------------------
 .../edgent/test/connectors/command/CommandStreamsTest.java       | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/89502e84/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
----------------------------------------------------------------------
diff --git a/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java b/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
index 3959dda..6d68904 100644
--- a/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
+++ b/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
@@ -193,9 +193,7 @@ public class CommandStreamsTest extends TopologyAbstractTest implements DirectTe
       Topology t = newTopology("testSinkRestart");
 
       // until someone cares enough to create Win version of sinkcmd
-      if (isWindows()) {
-        assumeTrue("need sinkcmd for Windows", false);
-      }
+      assumeTrue(!isWindows());
 
       Path tempFile1 = FileUtil.createTempFile("test1", ".txt", new String[0]);
       System.out.println("Test: "+t.getName()+" "+tempFile1);


[4/4] incubator-edgent git commit: Merge pull request #262

Posted by dl...@apache.org.
Merge pull request #262

This closes #262


Project: http://git-wip-us.apache.org/repos/asf/incubator-edgent/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-edgent/commit/cc405cc6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-edgent/tree/cc405cc6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-edgent/diff/cc405cc6

Branch: refs/heads/master
Commit: cc405cc6ce913d689eb615eb5bd3cbc87b9eabe8
Parents: e47ba54 98167a6
Author: Dale LaBossiere <dl...@us.ibm.com>
Authored: Thu Dec 29 13:06:52 2016 -0500
Committer: Dale LaBossiere <dl...@us.ibm.com>
Committed: Thu Dec 29 13:06:52 2016 -0500

----------------------------------------------------------------------
 .../command/runtime/CommandConnector.java       |  8 +++++
 .../connectors/command/CommandStreamsTest.java  | 34 +++++++++++++++++---
 2 files changed, 38 insertions(+), 4 deletions(-)
----------------------------------------------------------------------