Further ProcessBuilder tweaks.

 - Test ProcessBuilder.inheritIO() setter.
 - Test ProcessBuilder.command() setters and getter.
 - Test ProcessBuilder.directory() setter and getter.
 - Clean up dead code that was accidentally committed.

Tested:
   cts-tradefed run cts -c libcore.java.lang.ProcessBuilderTest

Change-Id: Ifa85bad62db7b18a772b7f5c054bf9afb71144f0
diff --git a/luni/src/test/java/libcore/java/lang/ProcessBuilderTest.java b/luni/src/test/java/libcore/java/lang/ProcessBuilderTest.java
index 89e10fb..4055fc7 100644
--- a/luni/src/test/java/libcore/java/lang/ProcessBuilderTest.java
+++ b/luni/src/test/java/libcore/java/lang/ProcessBuilderTest.java
@@ -29,6 +29,7 @@
 import java.lang.ProcessBuilder.Redirect.Type;
 import java.nio.charset.Charset;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Locale;
@@ -183,16 +184,6 @@
                 errorString.contains(missingFilePath) && !errorString.equals(missingFilePath));
     }
 
-    /**
-     * Writes Base64 encoded bytes, followed by the raw bytes, to the given {@code outputStream}.
-     */
-    private static void writeBase64AndRawBytesTo(byte[] bytes, OutputStream outputStream)
-            throws IOException {
-        String base64OfBytes = Base64.encode(bytes);
-        outputStream.write(base64OfBytes.getBytes(Charset.defaultCharset()));
-        outputStream.write(bytes); // trailing garbage
-    }
-
     public void testEnvironment() throws Exception {
         ProcessBuilder pb = new ProcessBuilder(shell(), "-c", "echo $A");
         pb.environment().put("A", "android");
@@ -330,20 +321,36 @@
     }
 
     public void testRedirect_defaultsToPipe() {
-        checkSetAndGet(PIPE, PIPE, PIPE, new ProcessBuilder());
+        assertRedirects(PIPE, PIPE, PIPE, new ProcessBuilder());
     }
 
     public void testRedirect_setAndGet() {
         File file = new File("/tmp/fake-file-for/java.lang.ProcessBuilderTest");
-        checkSetAndGet(Redirect.from(file), PIPE, PIPE, new ProcessBuilder().redirectInput(file));
-        checkSetAndGet(PIPE, Redirect.to(file), PIPE, new ProcessBuilder().redirectOutput(file));
-        checkSetAndGet(PIPE, PIPE, Redirect.to(file), new ProcessBuilder().redirectError(file));
-        checkSetAndGet(Redirect.from(file), INHERIT, Redirect.to(file),
+        assertRedirects(Redirect.from(file), PIPE, PIPE, new ProcessBuilder().redirectInput(file));
+        assertRedirects(PIPE, Redirect.to(file), PIPE, new ProcessBuilder().redirectOutput(file));
+        assertRedirects(PIPE, PIPE, Redirect.to(file), new ProcessBuilder().redirectError(file));
+        assertRedirects(Redirect.from(file), INHERIT, Redirect.to(file),
                 new ProcessBuilder()
                         .redirectInput(PIPE)
                         .redirectOutput(INHERIT)
                         .redirectError(file)
                         .redirectInput(file));
+
+        assertRedirects(Redirect.INHERIT, Redirect.INHERIT, Redirect.INHERIT,
+                new ProcessBuilder().inheritIO());
+    }
+
+    public void testCommand_setAndGet() {
+        List<String> expected = Collections.unmodifiableList(
+                Arrays.asList("echo", "fake", "command", "for", TAG));
+        assertEquals(expected, new ProcessBuilder().command(expected).command());
+        assertEquals(expected, new ProcessBuilder().command("echo", "fake", "command", "for", TAG)
+                .command());
+    }
+
+    public void testDirectory_setAndGet() {
+        File directory = new File("/tmp/fake/directory/for/" + TAG);
+        assertEquals(directory, new ProcessBuilder().directory(directory).directory());
     }
 
     /**
@@ -383,7 +390,7 @@
         assertEquals(expectedError, processError.get());
     }
 
-    private static void checkSetAndGet(Redirect in, Redirect out, Redirect err, ProcessBuilder pb) {
+    private static void assertRedirects(Redirect in, Redirect out, Redirect err, ProcessBuilder pb) {
         List<Redirect> expected = Arrays.asList(in, out, err);
         List<Redirect> actual = Arrays.asList(
                 pb.redirectInput(), pb.redirectOutput(), pb.redirectError());