aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcLibraryTest.java
diff options
context:
space:
mode:
authorGravatar plf <plf@google.com>2017-08-31 19:24:14 +0200
committerGravatar Vladimir Moskva <vladmos@google.com>2017-09-01 12:27:43 +0200
commitca58a3e431b003bde02be043bfca74226ac4a238 (patch)
treed232bab0fde07fdf534d64bace5e9fdfc831baa3 /src/test/java/com/google/devtools/build/lib/rules/objc/ObjcLibraryTest.java
parent9d9e1a7f11d68680c87aefd16ac26ad6af4fd94c (diff)
Automated rollback of commit fc41c430e4de4594a1d699f573d191cbad52a2fb.
PiperOrigin-RevId: 167154793
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/rules/objc/ObjcLibraryTest.java')
-rw-r--r--src/test/java/com/google/devtools/build/lib/rules/objc/ObjcLibraryTest.java41
1 files changed, 41 insertions, 0 deletions
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 074a556097..3f0afa9743 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
@@ -1566,4 +1566,45 @@ public class ObjcLibraryTest extends ObjcRuleTestCase {
public void testCustomModuleMap() throws Exception {
checkCustomModuleMap(RULE_TYPE, false);
}
+
+ private boolean containsObjcFeature(String srcName) throws Exception {
+ MockObjcSupport.setup(
+ mockToolsConfig,
+ "feature {",
+ " name: 'contains_objc_sources'",
+ " flag_set {",
+ " flag_group {",
+ " flag: 'DUMMY_FLAG'",
+ " }",
+ " action: 'c++-compile'",
+ " }",
+ "}");
+ createLibraryTargetWriter("//bottom:lib").setList("srcs", srcName).write();
+ createLibraryTargetWriter("//middle:lib")
+ .setList("srcs", "b.cc")
+ .setList("deps", "//bottom:lib")
+ .write();
+ createLibraryTargetWriter("//top:lib")
+ .setList("srcs", "a.cc")
+ .setList("deps", "//middle:lib")
+ .write();
+
+ CommandAction compileAction = compileAction("//top:lib", "a.o");
+ return compileAction.getArguments().contains("DUMMY_FLAG");
+ }
+
+ @Test
+ public void testObjcSourcesFeatureCC() throws Exception {
+ assertThat(containsObjcFeature("c.cc")).isFalse();
+ }
+
+ @Test
+ public void testObjcSourcesFeatureObjc() throws Exception {
+ assertThat(containsObjcFeature("c.m")).isTrue();
+ }
+
+ @Test
+ public void testObjcSourcesFeatureObjcPlusPlus() throws Exception {
+ assertThat(containsObjcFeature("c.mm")).isTrue();
+ }
}