diff options
Diffstat (limited to 'src/test/java')
4 files changed, 14 insertions, 45 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java b/src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java index d632a3c030..29db32ad0c 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java @@ -23,6 +23,7 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Iterables; import com.google.devtools.build.lib.actions.AbstractAction; +import com.google.devtools.build.lib.actions.Action; import com.google.devtools.build.lib.actions.ActionAnalysisMetadata; import com.google.devtools.build.lib.actions.ActionExecutionContext; import com.google.devtools.build.lib.actions.ActionInputHelper; @@ -34,7 +35,6 @@ import com.google.devtools.build.lib.actions.Artifact.TreeFileArtifact; import com.google.devtools.build.lib.actions.ArtifactOwner; import com.google.devtools.build.lib.actions.CommandAction; import com.google.devtools.build.lib.analysis.ConfiguredTarget; -import com.google.devtools.build.lib.analysis.actions.ParameterFileWriteAction; import com.google.devtools.build.lib.analysis.actions.SpawnAction; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.cmdline.Label; @@ -51,7 +51,6 @@ import com.google.devtools.build.lib.testutil.TestConstants; import com.google.devtools.build.lib.vfs.FileSystemUtils; import com.google.devtools.build.lib.vfs.PathFragment; import java.io.ByteArrayOutputStream; -import java.util.List; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @@ -439,11 +438,8 @@ public class BazelJ2ObjcLibraryTest extends J2ObjcLibraryTest { SpawnAction j2objcAction = (SpawnAction) getGeneratingAction(headers); assertThat(j2objcAction.getOutputs()).containsAllOf(headers, sources); - Artifact paramFile = getFirstArtifactEndingWith(j2objcAction.getInputs(), ".param.j2objc"); - ParameterFileWriteAction paramFileAction = - (ParameterFileWriteAction) getGeneratingAction(paramFile); assertContainsSublist( - ImmutableList.copyOf(paramFileAction.getContents()), + ImmutableList.copyOf(paramFileArgsForAction(j2objcAction)), ImmutableList.of( "--output_gen_source_dir", sources.getExecPathString(), @@ -677,15 +673,10 @@ public class BazelJ2ObjcLibraryTest extends J2ObjcLibraryTest { ")"); CommandAction linkAction = linkAction("//x:test"); - List<String> linkArgs = normalizeBashArgs(linkAction.getArguments()); ConfiguredTarget target = getConfiguredTargetInAppleBinaryTransition("//x:test"); String binDir = getConfiguration(target).getBinDirectory(RepositoryName.MAIN).getExecPathString(); - Artifact fileList = getFirstArtifactEndingWith(linkAction.getInputs(), "test-linker.objlist"); - ParameterFileWriteAction filelistWriteAction = - (ParameterFileWriteAction) getGeneratingAction(fileList); - assertThat(linkArgs).contains(fileList.getExecPathString()); - assertThat(filelistWriteAction.getContents()) + assertThat(paramFileArgsForAction(linkAction)) .containsAllOf( binDir + "/java/c/y/libylib_j2objc.a", // All jre libraries mus appear after java libraries in the link order. @@ -706,18 +697,13 @@ public class BazelJ2ObjcLibraryTest extends J2ObjcLibraryTest { addSimpleJ2ObjcLibraryWithJavaPlugin(); Artifact archive = j2objcArchive("//java/com/google/app/test:transpile", "test"); CommandAction archiveAction = (CommandAction) getGeneratingAction(archive); - Artifact archiveObjList = - getFirstArtifactEndingWith(archiveAction.getInputs(), "-archive.objlist"); Artifact objectFilesFromGenJar = getFirstArtifactEndingWith(archiveAction.getInputs(), "source_files"); Artifact normalObjectFile = getFirstArtifactEndingWith(archiveAction.getInputs(), "test.o"); - ParameterFileWriteAction paramFileAction = - (ParameterFileWriteAction) getGeneratingAction(archiveObjList); - // Test that the archive obj list param file contains the individual object files inside // the object file tree artifact. - assertThat(paramFileAction.getContents(DUMMY_ARTIFACT_EXPANDER)) + assertThat(paramFileCommandLineForAction(archiveAction).arguments(DUMMY_ARTIFACT_EXPANDER)) .containsExactly( objectFilesFromGenJar.getExecPathString() + "/children1", objectFilesFromGenJar.getExecPathString() + "/children2", @@ -1008,9 +994,7 @@ public class BazelJ2ObjcLibraryTest extends J2ObjcLibraryTest { Artifact prunedArchive = getBinArtifact( "_j2objc_pruned/app/java/com/google/app/test/libtest_j2objc_pruned.a", appTarget); - Artifact paramFile = - getBinArtifact("_j2objc_pruned/app/java/com/google/app/test/test.param.j2objc", appTarget); - + Action action = getGeneratingAction(prunedArchive); ConfiguredTarget javaTarget = getConfiguredTargetInAppleBinaryTransition("//java/com/google/app/test:test"); Artifact inputArchive = getBinArtifact("libtest_j2objc.a", javaTarget); @@ -1021,10 +1005,8 @@ public class BazelJ2ObjcLibraryTest extends J2ObjcLibraryTest { String execPath = getConfiguration(javaTarget).getBinDirectory(RepositoryName.MAIN).getExecPath() + "/"; - ParameterFileWriteAction paramFileAction = - (ParameterFileWriteAction) getGeneratingAction(paramFile); assertContainsSublist( - ImmutableList.copyOf(paramFileAction.getContents()), + ImmutableList.copyOf(paramFileArgsForAction(action)), new ImmutableList.Builder<String>() .add("--input_archive") .add(inputArchive.getExecPathString()) @@ -1052,7 +1034,6 @@ public class BazelJ2ObjcLibraryTest extends J2ObjcLibraryTest { .add( TestConstants.TOOLS_REPOSITORY_PATH_PREFIX + "tools/objc/j2objc_dead_code_pruner.py") - .add("@" + paramFile.getExecPathString()) .build()); assertThat(deadCodeRemovalAction.getOutputs()).containsExactly(prunedArchive); } diff --git a/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcImportTest.java b/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcImportTest.java index d312405810..e5c52271a4 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcImportTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcImportTest.java @@ -72,7 +72,7 @@ public class ObjcImportTest extends ObjcRuleTestCase { addTrivialImportLibrary(); createBinaryTargetWriter("//bin:bin").setList("deps", "//imp:imp").write(); CommandAction linkBinAction = linkAction("//bin:bin"); - verifyObjlist(linkBinAction, "bin-linker.objlist", "imp/precomp_lib.a"); + verifyObjlist(linkBinAction, "imp/precomp_lib.a"); assertThat(Artifact.toExecPaths(linkBinAction.getInputs())) .contains("imp/precomp_lib.a"); } diff --git a/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcLibraryTest.java b/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcLibraryTest.java index 061eac34e4..abecb86aa7 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcLibraryTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcLibraryTest.java @@ -44,7 +44,6 @@ import com.google.devtools.build.lib.actions.CommandAction; import com.google.devtools.build.lib.actions.util.ActionsTestUtil; import com.google.devtools.build.lib.analysis.ConfiguredTarget; import com.google.devtools.build.lib.analysis.RunfilesProvider; -import com.google.devtools.build.lib.analysis.actions.ParameterFileWriteAction; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.analysis.config.CompilationMode; import com.google.devtools.build.lib.analysis.util.ScratchAttributeWriter; @@ -1226,9 +1225,9 @@ public class ObjcLibraryTest extends ObjcRuleTestCase { scratch.file("lib/b.m"); scratch.file("lib/BUILD", "objc_library(name = 'lib1', srcs = ['a.m', 'b.m'])"); ConfiguredTarget target = getConfiguredTarget("//lib:lib1"); - Artifact objlist = getBinArtifact("lib1-archive.objlist", target); - ParameterFileWriteAction action = (ParameterFileWriteAction) getGeneratingAction(objlist); - assertThat(action.getContents()) + Artifact lib = getBinArtifact("liblib1.a", target); + Action action = getGeneratingAction(lib); + assertThat(paramFileArgsForAction(action)) .containsExactlyElementsIn( Artifact.toExecPaths(inputsEndingWith(archiveAction("//lib:lib1"), ".o"))); } diff --git a/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java b/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java index 7ce1f00446..f6e31af4fc 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java +++ b/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java @@ -44,7 +44,6 @@ import com.google.devtools.build.lib.analysis.OutputGroupInfo; import com.google.devtools.build.lib.analysis.actions.BinaryFileWriteAction; import com.google.devtools.build.lib.analysis.actions.CustomCommandLine.Builder; import com.google.devtools.build.lib.analysis.actions.CustomCommandLine.VectorArg; -import com.google.devtools.build.lib.analysis.actions.ParameterFileWriteAction; import com.google.devtools.build.lib.analysis.actions.SpawnAction; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.analysis.config.BuildOptions; @@ -313,22 +312,14 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { * Verifies a {@code -filelist} file's contents. * * @param originalAction the action which uses the filelist artifact - * @param objlistName the path suffix of the filelist artifact * @param inputArchives path suffixes of the expected contents of the filelist */ - protected void verifyObjlist(Action originalAction, String objlistName, String... inputArchives) - throws Exception { - Artifact filelistArtifact = - getFirstArtifactEndingWith(originalAction.getInputs(), objlistName); - - ParameterFileWriteAction fileWriteAction = - (ParameterFileWriteAction) getGeneratingAction(filelistArtifact); + protected void verifyObjlist(Action originalAction, String... inputArchives) throws Exception { ImmutableList.Builder<String> execPaths = ImmutableList.builder(); for (String inputArchive : inputArchives) { execPaths.add(execPathEndingWith(originalAction.getInputs(), inputArchive)); } - - assertThat(fileWriteAction.getContents()).containsExactlyElementsIn(execPaths.build()); + assertThat(paramFileArgsForAction(originalAction)).containsExactlyElementsIn(execPaths.build()); } /** @@ -1612,10 +1603,8 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { CommandAction x8664BinAction = (CommandAction) getGeneratingAction( getFirstArtifactEndingWith(appLipoAction.getInputs(), x8664Prefix + "x/x_bin")); - verifyObjlist( - i386BinAction, "x/x-linker.objlist", "package/libcclib.a"); - verifyObjlist( - x8664BinAction, "x/x-linker.objlist", "package/libcclib.a"); + verifyObjlist(i386BinAction, "package/libcclib.a"); + verifyObjlist(x8664BinAction, "package/libcclib.a"); assertThat(Artifact.toExecPaths(i386BinAction.getInputs())) .containsAllOf( |