aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google/devtools
diff options
context:
space:
mode:
authorGravatar Klaus Aehlig <aehlig@google.com>2017-03-23 17:22:02 +0000
committerGravatar Yue Gan <yueg@google.com>2017-03-23 17:55:10 +0000
commit12b98fb6003abbe55c69a0ea1c282fb990c88971 (patch)
tree88edd6e017a615e16dfa4537da4f9546d1d83c25 /src/test/java/com/google/devtools
parent73b7b2ef372310df1418b841a1250f7cb49f2c60 (diff)
Add new utility function to encode options as argument list
...in a way preserving the list structure and without escaping. In other words, return the options as needed for an execve(3) call. -- Change-Id: Ifb168d2e720392fb3a97d557960e0c1f1a83f543 Reviewed-on: https://cr.bazel.build/9458 PiperOrigin-RevId: 151019830 MOS_MIGRATED_REVID=151019830
Diffstat (limited to 'src/test/java/com/google/devtools')
-rw-r--r--src/test/java/com/google/devtools/build/lib/util/OptionsUtilsTest.java13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/util/OptionsUtilsTest.java b/src/test/java/com/google/devtools/build/lib/util/OptionsUtilsTest.java
index b12103c377..9995dfc34f 100644
--- a/src/test/java/com/google/devtools/build/lib/util/OptionsUtilsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/util/OptionsUtilsTest.java
@@ -18,6 +18,7 @@ import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
+import com.google.common.collect.ImmutableList;
import com.google.common.collect.Lists;
import com.google.devtools.build.lib.util.OptionsUtils.PathFragmentListConverter;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -25,14 +26,12 @@ import com.google.devtools.common.options.Option;
import com.google.devtools.common.options.OptionPriority;
import com.google.devtools.common.options.OptionsBase;
import com.google.devtools.common.options.OptionsParser;
-
+import java.util.Arrays;
+import java.util.List;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
-import java.util.Arrays;
-import java.util.List;
-
/**
* Test for {@link OptionsUtils}.
*/
@@ -71,6 +70,7 @@ public class OptionsUtilsTest {
OptionsParser parser = OptionsParser.newOptionsParser(IntrospectionExample.class);
parser.parse("--alpha=no", "--gamma=no", "--echo=no");
assertEquals("--alpha=no --gamma=no", OptionsUtils.asShellEscapedString(parser));
+ assertEquals(ImmutableList.of("--alpha=no", "--gamma=no"), OptionsUtils.asArgumentList(parser));
}
@Test
@@ -79,6 +79,7 @@ public class OptionsUtilsTest {
parser.parse(OptionPriority.COMMAND_LINE, null, Arrays.asList("--alpha=no"));
parser.parse(OptionPriority.COMPUTED_DEFAULT, null, Arrays.asList("--beta=no"));
assertEquals("--beta=no --alpha=no", OptionsUtils.asShellEscapedString(parser));
+ assertEquals(ImmutableList.of("--beta=no", "--alpha=no"), OptionsUtils.asArgumentList(parser));
}
public static class BooleanOpts extends OptionsBase {
@@ -98,12 +99,14 @@ public class OptionsUtilsTest {
OptionsParser parser = OptionsParser.newOptionsParser(BooleanOpts.class);
parser.parse(OptionPriority.COMMAND_LINE, null, Arrays.asList("--b_one", "--nob_two"));
assertEquals("--b_one --nob_two", OptionsUtils.asShellEscapedString(parser));
+ assertEquals(ImmutableList.of("--b_one", "--nob_two"), OptionsUtils.asArgumentList(parser));
parser = OptionsParser.newOptionsParser(BooleanOpts.class);
parser.parse(OptionPriority.COMMAND_LINE, null, Arrays.asList("--b_one=true", "--b_two=0"));
assertTrue(parser.getOptions(BooleanOpts.class).bOne);
assertFalse(parser.getOptions(BooleanOpts.class).bTwo);
assertEquals("--b_one --nob_two", OptionsUtils.asShellEscapedString(parser));
+ assertEquals(ImmutableList.of("--b_one", "--nob_two"), OptionsUtils.asArgumentList(parser));
}
@Test
@@ -112,6 +115,8 @@ public class OptionsUtilsTest {
parser.parse(OptionPriority.COMMAND_LINE, null, Arrays.asList("--alpha=one"));
parser.parse(OptionPriority.COMMAND_LINE, null, Arrays.asList("--alpha=two"));
assertEquals("--alpha=one --alpha=two", OptionsUtils.asShellEscapedString(parser));
+ assertEquals(
+ ImmutableList.of("--alpha=one", "--alpha=two"), OptionsUtils.asArgumentList(parser));
}
private static List<PathFragment> list(PathFragment... fragments) {