diff options
author | 2017-12-21 14:15:55 -0800 | |
---|---|---|
committer | 2017-12-21 14:18:11 -0800 | |
commit | cc99efdc6bec68979334345175e18066249e78e8 (patch) | |
tree | 40f8542d728cd67b1a1b5b4d95685b2f205d8e27 /src/test/java/com/google/devtools/build/lib/rules | |
parent | c1f55e7d4cc31bd1dee5ba586f852353dfd04aa1 (diff) |
Change Mock xcrunwrapper dependency to accurately be a sh_binary instead of a file.
This allows writing java tests for skylark rules which might need to depend on a sh_binary xcrunwrapper.
RELNOTES: None.
PiperOrigin-RevId: 179857352
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/rules')
3 files changed, 22 insertions, 11 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibraryTest.java b/src/test/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibraryTest.java index 8fe598b529..d4e455c3a2 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibraryTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibraryTest.java @@ -156,11 +156,12 @@ public class AppleStaticLibraryTest extends ObjcRuleTestCase { configurationBin("x86_64", ConfigurationDistinguisher.APPLEBIN_IOS) + "x/x-fl.a"; assertThat(Artifact.toExecPaths(action.getInputs())) - .containsExactly(i386Lib, x8664Lib, MOCK_XCRUNWRAPPER_PATH); + .containsExactly(i386Lib, x8664Lib, MOCK_XCRUNWRAPPER_PATH, + MOCK_XCRUNWRAPPER_EXECUTABLE_PATH); assertThat(action.getArguments()) .containsExactly( - MOCK_XCRUNWRAPPER_PATH, + MOCK_XCRUNWRAPPER_EXECUTABLE_PATH, LIPO, "-create", i386Lib, @@ -247,10 +248,11 @@ public class AppleStaticLibraryTest extends ObjcRuleTestCase { + "x/x-fl.a"; assertThat(Artifact.toExecPaths(action.getInputs())) - .containsExactly(i386Bin, armv7kBin, MOCK_XCRUNWRAPPER_PATH); + .containsExactly(i386Bin, armv7kBin, MOCK_XCRUNWRAPPER_PATH, + MOCK_XCRUNWRAPPER_EXECUTABLE_PATH); assertContainsSublist(action.getArguments(), ImmutableList.of( - MOCK_XCRUNWRAPPER_PATH, LIPO, "-create")); + MOCK_XCRUNWRAPPER_EXECUTABLE_PATH, LIPO, "-create")); assertThat(action.getArguments()).containsAllOf(armv7kBin, i386Bin); assertContainsSublist(action.getArguments(), ImmutableList.of( "-o", execPathEndingWith(action.getOutputs(), "x_lipo.a"))); 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 07cab81ef9..ac1ac200d4 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 @@ -863,7 +863,7 @@ public class BazelJ2ObjcLibraryTest extends J2ObjcLibraryTest { .add("--dummy_archive") .add(execPath + "tools/objc/libdummy_lib.a") .add("--xcrunwrapper") - .add("tools/objc/xcrunwrapper") + .add(MOCK_XCRUNWRAPPER_EXECUTABLE_PATH) .add("--dependency_mapping_files") .add(dependencyMappingFile.getExecPathString()) .add("--header_mapping_files") 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 a6fccfd4a9..c5577e76a3 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 @@ -130,7 +130,9 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { toolsRepoExecPath("tools/objc/swiftstdlibtoolwrapper"); protected static final String MOCK_LIBTOOL_PATH = toolsRepoExecPath("tools/objc/libtool"); protected static final String MOCK_XCRUNWRAPPER_PATH = - toolsRepoExecPath("tools/objc/xcrunwrapper"); + toolsRepoExecPath("tools/objc/xcrunwrapper.sh"); + protected static final String MOCK_XCRUNWRAPPER_EXECUTABLE_PATH = + toolExecutable("tools/objc/xcrunwrapper"); protected static final ImmutableList<String> FASTBUILD_COPTS = ImmutableList.of("-O0", "-DDEBUG"); protected static final DottedVersion DEFAULT_IOS_SDK_VERSION = @@ -195,6 +197,11 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { } + private static String toolExecutable(String toolSrcPath) { + return String.format("%s-out/host/bin/%s", TestConstants.PRODUCT_NAME, + TestConstants.TOOLS_REPOSITORY_PATH_PREFIX + toolSrcPath); + } + private String configurationDir( String arch, ConfigurationDistinguisher configurationDistinguisher, DottedVersion minOsVersion) { @@ -3724,7 +3731,7 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { boolean isTestRule = ruleType.getRuleTypeName().endsWith("_test"); ImmutableList.Builder<String> expectedSymbolStripArgs = ImmutableList.<String>builder() - .add(MOCK_XCRUNWRAPPER_PATH) + .add(MOCK_XCRUNWRAPPER_EXECUTABLE_PATH) .add(STRIP); expectedSymbolStripArgs.add(extraItems); @@ -4156,10 +4163,11 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { configurationBin("x86_64", ConfigurationDistinguisher.APPLEBIN_IOS) + "x/x_bin"; assertThat(Artifact.toExecPaths(action.getInputs())) - .containsExactly(i386Bin, x8664Bin, MOCK_XCRUNWRAPPER_PATH); + .containsExactly(i386Bin, x8664Bin, MOCK_XCRUNWRAPPER_PATH, + MOCK_XCRUNWRAPPER_EXECUTABLE_PATH); assertThat(action.getArguments()) - .containsExactly(MOCK_XCRUNWRAPPER_PATH, LIPO, + .containsExactly(MOCK_XCRUNWRAPPER_EXECUTABLE_PATH, LIPO, "-create", i386Bin, x8664Bin, "-o", execPathEndingWith(action.getOutputs(), "x_lipobin")) .inOrder(); @@ -4446,10 +4454,11 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { + "x/x_bin"; assertThat(Artifact.toExecPaths(action.getInputs())) - .containsExactly(i386Bin, armv7kBin, MOCK_XCRUNWRAPPER_PATH); + .containsExactly(i386Bin, armv7kBin, MOCK_XCRUNWRAPPER_PATH, + MOCK_XCRUNWRAPPER_EXECUTABLE_PATH); assertContainsSublist(action.getArguments(), ImmutableList.of( - MOCK_XCRUNWRAPPER_PATH, LIPO, "-create")); + MOCK_XCRUNWRAPPER_EXECUTABLE_PATH, LIPO, "-create")); assertThat(action.getArguments()).containsAllOf(armv7kBin, i386Bin); assertContainsSublist(action.getArguments(), ImmutableList.of( "-o", execPathEndingWith(action.getOutputs(), "x_lipobin"))); |