aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc/AbstractIosTestRule.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/AbstractIosTestRule.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/AbstractIosTestRule.java132
1 files changed, 0 insertions, 132 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/AbstractIosTestRule.java b/src/main/java/com/google/devtools/build/lib/rules/objc/AbstractIosTestRule.java
deleted file mode 100644
index 75f3e9ca29..0000000000
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/AbstractIosTestRule.java
+++ /dev/null
@@ -1,132 +0,0 @@
-// Copyright 2014 The Bazel Authors. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-package com.google.devtools.build.lib.rules.objc;
-
-import static com.google.devtools.build.lib.packages.Attribute.ConfigurationTransition.HOST;
-import static com.google.devtools.build.lib.packages.Attribute.attr;
-import static com.google.devtools.build.lib.packages.BuildType.LABEL;
-import static com.google.devtools.build.lib.packages.BuildType.LABEL_LIST;
-import static com.google.devtools.build.lib.syntax.Type.STRING_LIST;
-
-import com.google.common.collect.ImmutableList;
-import com.google.devtools.build.lib.Constants;
-import com.google.devtools.build.lib.analysis.RuleDefinition;
-import com.google.devtools.build.lib.analysis.RuleDefinitionEnvironment;
-import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
-import com.google.devtools.build.lib.cmdline.Label;
-import com.google.devtools.build.lib.packages.Attribute.LateBoundLabelList;
-import com.google.devtools.build.lib.packages.ImplicitOutputsFunction;
-import com.google.devtools.build.lib.packages.Rule;
-import com.google.devtools.build.lib.packages.RuleClass;
-import com.google.devtools.build.lib.rules.apple.AppleConfiguration;
-import com.google.devtools.build.lib.rules.java.J2ObjcConfiguration;
-import com.google.devtools.build.lib.util.FileType;
-
-import java.util.List;
-
-/**
- * Rule definition for {@code ios_test} rule. Abstract so that extensions can support
- * the equivalent ios_test and experimental_ios_test rules until experimental_ios_test is
- * fully deprecated.
- */
-public abstract class AbstractIosTestRule implements RuleDefinition {
- @Override
- public RuleClass build(RuleClass.Builder builder, final RuleDefinitionEnvironment env) {
- return builder
- .requiresConfigurationFragments(ObjcConfiguration.class, J2ObjcConfiguration.class,
- AppleConfiguration.class)
- /*<!-- #BLAZE_RULE(ios_test).IMPLICIT_OUTPUTS -->
- <ul>
- <li><code><var>name</var>.ipa</code>: the test bundle as an
- <code>.ipa</code> file
- <li><code><var>name</var>.xcodeproj/project.pbxproj: An Xcode project file which can be
- used to develop or build on a Mac.</li>
- </ul>
- <!-- #END_BLAZE_RULE.IMPLICIT_OUTPUTS -->*/
- .setImplicitOutputsFunction(
- ImplicitOutputsFunction.fromFunctions(ReleaseBundlingSupport.IPA, XcodeSupport.PBXPROJ))
- .override(
- attr(IosTest.TARGET_DEVICE, LABEL)
- .allowedFileTypes()
- .allowedRuleClasses("ios_device")
- .value(
- env.getLabel(Constants.TOOLS_REPOSITORY + "//tools/objc/sim_devices:default")))
- /* <!-- #BLAZE_RULE(ios_test).ATTRIBUTE(ios_test_target_device) -->
- The device against how to run the test. If this attribute is defined, the test will run on
- the lab device. Otherwise, the test will run on simulator.
- ${SYNOPSIS}
- <!-- #END_BLAZE_RULE.ATTRIBUTE -->*/
- .add(
- attr("ios_test_target_device", LABEL)
- .allowedFileTypes()
- .allowedRuleClasses("ios_lab_device"))
- /* <!-- #BLAZE_RULE(ios_test).ATTRIBUTE(ios_device_arg) -->
- Extra arguments to pass to the <code>ios_test_target_device</code>'s binary. They should be
- in the form KEY=VALUE or simply KEY (check your device's documentation for allowed
- parameters).
- ${SYNOPSIS}
- <!-- #END_BLAZE_RULE.ATTRIBUTE -->*/
- .add(attr("ios_device_arg", STRING_LIST))
- /* <!-- #BLAZE_RULE(ios_test).ATTRIBUTE(plugins) -->
- Plugins to pass to the test runner.
- ${SYNOPSIS}
- <!-- #END_BLAZE_RULE.ATTRIBUTE -->*/
- .add(attr("plugins", LABEL_LIST).allowedFileTypes(FileType.of("_deploy.jar")))
- .add(
- attr("$test_template", LABEL)
- .value(
- env.getLabel(
- Constants.TOOLS_REPOSITORY + "//tools/objc:ios_test.sh.bazel_template")))
- .add(
- attr("$test_runner", LABEL)
- .value(env.getLabel(Constants.TOOLS_REPOSITORY + "//tools/objc:testrunner")))
- .add(
- attr(IosTest.MEMLEAKS_DEP, LABEL)
- .value(env.getLabel(Constants.TOOLS_REPOSITORY + "//tools/objc/memleaks:memleaks")))
- .add(
- attr(IosTest.MEMLEAKS_PLUGIN, LABEL)
- .value(env.getLabel(Constants.TOOLS_REPOSITORY + "//tools/objc:memleaks_plugin")))
- .override(
- attr(":gcov", LABEL_LIST)
- .cfg(HOST)
- .value(
- new LateBoundLabelList<BuildConfiguration>() {
- @Override
- public List<Label> getDefault(Rule rule, BuildConfiguration configuration) {
- if (!configuration.isCodeCoverageEnabled()) {
- return ImmutableList.of();
- }
- return ImmutableList.of(
- configuration
- .getFragment(ObjcConfiguration.class)
- .getExperimentalGcovLabel());
- }
- }))
- .build();
- }
-}
-
-/*<!-- #BLAZE_RULE (NAME = ios_test, TYPE = TEST, FAMILY = Objective-C) -->
-
-${ATTRIBUTE_SIGNATURE}
-
-<p>This rule provides a way to build iOS unit tests written in KIF, GTM and XCTest test frameworks
-on both iOS simulator and real devices.
-</p>
-
-${ATTRIBUTE_DEFINITION}
-
-<!-- #END_BLAZE_RULE -->*/