diff options
author | 2017-08-15 23:21:25 +0200 | |
---|---|---|
committer | 2017-08-16 11:06:03 +0200 | |
commit | 59f1d889f71d6d203ca061787d4ea16465df1916 (patch) | |
tree | d0e52ac5be0fe8eed9c0e6886127919e156a2c85 /src/test/java/com/google/devtools/build/lib/rules/objc | |
parent | ff746b4aaa5bb7109ff543a72c165fa6e785916f (diff) |
Add more type safety to CustomCommandLine.
Allowing add(Object) is too loose and can easily lead to programmer mistakes.
Because of type erasure, we can't use the same overload name for (eg.) add(NestedSet<String>) and add(NestedSet<Artifact>). The API is overhauled to use the same terms everywhere, eg. "add", "addPaths", "addExecPaths". This is similar to how it used to be a few CLs ago.
The API is overhauled to make sure it's consistent for all types. While tedious, the facade methods immediately dispatch to internal helpers, so implementation wise it's not too heavy.
While large, this CL is almost entirely an automated refactor.
PiperOrigin-RevId: 165358287
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/rules/objc')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java | 10 |
1 files changed, 5 insertions, 5 deletions
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 8ec3cc6111..24a977c1db 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 @@ -2157,7 +2157,7 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { .containsExactlyElementsIn( new Builder() .add(MOCK_IBTOOLWRAPPER_PATH) - .add(storyboardZip) + .addExecPath(storyboardZip) .addDynamicString(archiveRoot) // archive root .add("--minimum-deployment-target", minimumOsVersion.toString()) .add("--module") @@ -2180,7 +2180,7 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { .containsExactlyElementsIn( new Builder() .add(MOCK_IBTOOLWRAPPER_PATH) - .add(storyboardZip) + .addExecPath(storyboardZip) .addDynamicString(archiveRoot) // archive root .add("--minimum-deployment-target", minimumOsVersion.toString()) .add("--module") @@ -2217,10 +2217,10 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { } expectedCommandLine - .add("--output_zip_path", swiftLibsZip) + .addExecPath("--output_zip_path", swiftLibsZip) .add("--bundle_path", bundlePath) .add("--platform", platformName) - .add("--scan-executable", binary); + .addExecPath("--scan-executable", binary); assertThat(toolAction.getArguments()).isEqualTo(expectedCommandLine.build().arguments()); } @@ -3870,7 +3870,7 @@ public abstract class ObjcRuleTestCase extends BuildViewTestCase { .isEqualTo( new CustomCommandLine.Builder() .add(MOCK_IBTOOLWRAPPER_PATH) - .add(storyboardZip) + .addExecPath(storyboardZip) .add("launch.storyboardc") .add("--minimum-deployment-target") .add("8.1") |