Decomplicate consuming the output of docker commands in tests.

Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/e49ee80d
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/e49ee80d
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/e49ee80d

Branch: refs/heads/master
Commit: e49ee80d86b0dbec6ff80050c4b2bff1bddbd51b
Parents: 6ddf598
Author: Adrian Cole <[email protected]>
Authored: Wed Oct 29 12:52:13 2014 -0700
Committer: Adrian Cole <[email protected]>
Committed: Thu Oct 30 21:15:07 2014 -0700

----------------------------------------------------------------------
 .../docker/compute/BaseDockerApiLiveTest.java   | 22 +++++++-------------
 .../docker/features/RemoteApiLiveTest.java      | 10 +++------
 2 files changed, 10 insertions(+), 22 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/e49ee80d/docker/src/test/java/org/jclouds/docker/compute/BaseDockerApiLiveTest.java
----------------------------------------------------------------------
diff --git 
a/docker/src/test/java/org/jclouds/docker/compute/BaseDockerApiLiveTest.java 
b/docker/src/test/java/org/jclouds/docker/compute/BaseDockerApiLiveTest.java
index ce64e01..54f61a1 100644
--- a/docker/src/test/java/org/jclouds/docker/compute/BaseDockerApiLiveTest.java
+++ b/docker/src/test/java/org/jclouds/docker/compute/BaseDockerApiLiveTest.java
@@ -16,6 +16,9 @@
  */
 package org.jclouds.docker.compute;
 
+import static com.google.common.base.Charsets.UTF_8;
+import static org.jclouds.util.Closeables2.closeQuietly;
+
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
@@ -32,10 +35,8 @@ import org.jclouds.docker.DockerApi;
 import org.jclouds.io.Payload;
 import org.jclouds.io.Payloads;
 import org.jclouds.sshj.config.SshjSshClientModule;
-import org.testng.Assert;
 import org.testng.annotations.Test;
 
-import com.google.common.base.Charsets;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.io.CharStreams;
 import com.google.inject.Module;
@@ -60,23 +61,14 @@ public class BaseDockerApiLiveTest extends 
BaseApiLiveTest<DockerApi> {
       return overrides;
    }
 
-   protected String consumeStream(InputStream stream, boolean 
swallowIOException) {
-      String result = null;
+   protected String consumeStream(InputStream stream) {
       try {
-         result = CharStreams.toString(new InputStreamReader(stream, 
Charsets.UTF_8));
+         return CharStreams.toString(new InputStreamReader(stream, UTF_8));
       } catch (IOException e) {
-         Assert.fail();
+         throw new AssertionError(e);
       } finally {
-         // TODO: remove swallowIOException over-optimization and just use 
Closeables2.closeQuietly
-         try {
-            stream.close();
-         } catch (IOException e) {
-            if (!swallowIOException) {
-               throw new RuntimeException(e);
-            }
-         }
+         closeQuietly(stream);
       }
-      return result;
    }
 
    public static Payload tarredDockerfile() throws IOException {

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/e49ee80d/docker/src/test/java/org/jclouds/docker/features/RemoteApiLiveTest.java
----------------------------------------------------------------------
diff --git 
a/docker/src/test/java/org/jclouds/docker/features/RemoteApiLiveTest.java 
b/docker/src/test/java/org/jclouds/docker/features/RemoteApiLiveTest.java
index a489ac3..3f23212 100644
--- a/docker/src/test/java/org/jclouds/docker/features/RemoteApiLiveTest.java
+++ b/docker/src/test/java/org/jclouds/docker/features/RemoteApiLiveTest.java
@@ -23,7 +23,6 @@ import static org.testng.Assert.assertNull;
 import static org.testng.Assert.assertTrue;
 
 import java.io.IOException;
-import java.io.InputStream;
 import java.net.URISyntaxException;
 
 import org.jclouds.docker.compute.BaseDockerApiLiveTest;
@@ -55,8 +54,7 @@ public class RemoteApiLiveTest extends BaseDockerApiLiveTest {
    @Test(dependsOnMethods = "testVersion")
    public void testCreateImage() throws IOException, InterruptedException {
       CreateImageOptions options = 
CreateImageOptions.Builder.fromImage(BUSYBOX_IMAGE);
-      InputStream createImageStream = api().createImage(options);
-      consumeStream(createImageStream, false);
+      consumeStream(api().createImage(options));
       image = api().inspectImage(BUSYBOX_IMAGE);
       assertNotNull(image);
    }
@@ -96,15 +94,13 @@ public class RemoteApiLiveTest extends 
BaseDockerApiLiveTest {
 
    @Test(dependsOnMethods = "testRemoveContainer", expectedExceptions = 
ResourceNotFoundException.class)
    public void testDeleteImage() {
-      InputStream deleteImageStream = api().deleteImage(image.id());
-      consumeStream(deleteImageStream, false);
+      consumeStream(api().deleteImage(image.id()));
       assertNull(api().inspectImage(image.id()));
    }
 
    public void testBuildImage() throws IOException, InterruptedException, 
URISyntaxException {
       BuildOptions options = 
BuildOptions.Builder.tag("testBuildImage").verbose(false).nocache(false);
-      InputStream buildImageStream = api().build(tarredDockerfile(), options);
-      String buildStream = consumeStream(buildImageStream, false);
+      String buildStream = consumeStream(api().build(tarredDockerfile(), 
options));
       Iterable<String> splitted = 
Splitter.on("\n").split(buildStream.replace("\r", "").trim());
       String lastStreamedLine = Iterables.getLast(splitted).trim();
       String rawImageId = Iterables.getLast(Splitter.on("Successfully built 
").split(lastStreamedLine));

Reply via email to