diff options
author | 2018-07-08 16:15:53 -0700 | |
---|---|---|
committer | 2018-07-08 16:17:17 -0700 | |
commit | 4e4c77ae96955138006af15664074123d6a4f51d (patch) | |
tree | daf2083fa3c02df668ff35dd21af31580d06db8f /src/test/java/com/google | |
parent | 3ac44db0427b7db46b6c39f7dbfab7b5f31f8c37 (diff) |
PiperOrigin-RevId: 203687257
Diffstat (limited to 'src/test/java/com/google')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/analysis/actions/ParamFileWriteActionTest.java | 39 |
1 files changed, 31 insertions, 8 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/actions/ParamFileWriteActionTest.java b/src/test/java/com/google/devtools/build/lib/analysis/actions/ParamFileWriteActionTest.java index 11ced4c8b6..59364a3328 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/actions/ParamFileWriteActionTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/actions/ParamFileWriteActionTest.java @@ -76,9 +76,9 @@ public class ParamFileWriteActionTest extends BuildViewTestCase { @Test public void testInputs() { - Action action = createParameterFileWriteAction( - ImmutableList.of(treeArtifact), - createTreeArtifactExpansionCommandLine()); + Action action = + createParameterFileWriteAction( + ImmutableList.of(treeArtifact), createTreeArtifactExpansionCommandLineDefault()); assertThat(Artifact.toExecPaths(action.getInputs())) .containsExactly("out/artifact/myTreeFileArtifact"); } @@ -95,10 +95,10 @@ public class ParamFileWriteActionTest extends BuildViewTestCase { } @Test - public void testWriteCommandLineWithTreeArtifactExpansion() throws Exception { - Action action = createParameterFileWriteAction( - ImmutableList.of(treeArtifact), - createTreeArtifactExpansionCommandLine()); + public void testWriteCommandLineWithTreeArtifactExpansionDefault() throws Exception { + Action action = + createParameterFileWriteAction( + ImmutableList.of(treeArtifact), createTreeArtifactExpansionCommandLineDefault()); ActionExecutionContext context = actionExecutionContext(); ActionResult actionResult = action.execute(context); assertThat(actionResult.spawnResults()).isEmpty(); @@ -110,6 +110,22 @@ public class ParamFileWriteActionTest extends BuildViewTestCase { + "out/artifact/myTreeFileArtifact/artifacts/treeFileArtifact2"); } + @Test + public void testWriteCommandLineWithTreeArtifactExpansionExpandedFunction() throws Exception { + Action action = + createParameterFileWriteAction( + ImmutableList.of(treeArtifact), + createTreeArtifactExpansionCommandLineExpandedFunction()); + ActionExecutionContext context = actionExecutionContext(); + ActionResult actionResult = action.execute(context); + assertThat(actionResult.spawnResults()).isEmpty(); + String content = new String(FileSystemUtils.readContentAsLatin1(outputArtifact.getPath())); + assertThat(content.trim()) + .isEqualTo( + "--flag1=out/artifact/myTreeFileArtifact/artifacts/treeFileArtifact1\n" + + "--flag1=out/artifact/myTreeFileArtifact/artifacts/treeFileArtifact2"); + } + private SpecialArtifact createTreeArtifact(String rootRelativePath) { PathFragment relpath = PathFragment.create(rootRelativePath); return new SpecialArtifact( @@ -145,13 +161,20 @@ public class ParamFileWriteActionTest extends BuildViewTestCase { .build(); } - private CommandLine createTreeArtifactExpansionCommandLine() { + private CommandLine createTreeArtifactExpansionCommandLineDefault() { return CustomCommandLine.builder() .add("--flag1") .addExpandedTreeArtifactExecPaths(treeArtifact) .build(); } + private CommandLine createTreeArtifactExpansionCommandLineExpandedFunction() { + return CustomCommandLine.builder() + .addExpandedTreeArtifact( + treeArtifact, artifact -> ImmutableList.of("--flag1=" + artifact.getExecPath())) + .build(); + } + private ActionExecutionContext actionExecutionContext() throws Exception { final Iterable<TreeFileArtifact> treeFileArtifacts = ImmutableList.of( createTreeFileArtifact(treeArtifact, "artifacts/treeFileArtifact1"), |