aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java
diff options
context:
space:
mode:
authorGravatar Ulf Adams <ulfjack@google.com>2015-08-06 11:51:17 +0000
committerGravatar David Chen <dzc@google.com>2015-08-06 22:14:04 +0000
commit71423eb5cee46874066bccdacb36169faa404118 (patch)
tree5ae8115ace8621f98cc748847871dd8f1ed3784a /src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java
parent082c05499d4d9c654d288416ed6afefcf81cc090 (diff)
Refactor the missing fragment handling code to use a policy enum.
Flip the handling such that analysis failure is the default, rather than execution failure (fail action creation). -- MOS_MIGRATED_REVID=100020812
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java')
-rw-r--r--src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java28
1 files changed, 16 insertions, 12 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java b/src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java
index 2432ba70bc..4d1e7dade6 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java
+++ b/src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java
@@ -42,6 +42,7 @@ import com.google.devtools.build.lib.events.Location.LineAndColumn;
import com.google.devtools.build.lib.packages.Attribute.ValidityPredicate;
import com.google.devtools.build.lib.packages.Package.Builder;
import com.google.devtools.build.lib.packages.RuleClass.Builder.RuleClassType;
+import com.google.devtools.build.lib.packages.RuleClass.MissingFragmentPolicy;
import com.google.devtools.build.lib.packages.util.PackageLoadingTestCase;
import com.google.devtools.build.lib.syntax.Label;
import com.google.devtools.build.lib.syntax.Label.SyntaxException;
@@ -81,7 +82,8 @@ public class RuleClassTest extends PackageLoadingTestCase {
ImplicitOutputsFunction.NONE, RuleClass.NO_CHANGE,
DUMMY_CONFIGURED_TARGET_FACTORY, PredicatesWithMessage.<Rule>alwaysTrue(),
PREFERRED_DEPENDENCY_PREDICATE, ImmutableSet.<Class<?>>of(), null,
- NO_EXTERNAL_BINDINGS, null, ImmutableSet.<Class<?>>of(), false, true,
+ NO_EXTERNAL_BINDINGS, null, ImmutableSet.<Class<?>>of(),
+ MissingFragmentPolicy.FAIL_ANALYSIS, true,
attr("my-string-attr", STRING).mandatory().build(),
attr("my-label-attr", LABEL).mandatory().legacyAllowAnyFileType()
.value(Label.parseAbsolute("//default:label")).build(),
@@ -100,7 +102,7 @@ public class RuleClassTest extends PackageLoadingTestCase {
ImplicitOutputsFunction.NONE, RuleClass.NO_CHANGE, DUMMY_CONFIGURED_TARGET_FACTORY,
PredicatesWithMessage.<Rule>alwaysTrue(), PREFERRED_DEPENDENCY_PREDICATE,
ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS, null, ImmutableSet.<Class<?>>of(),
- false, true, attributes.toArray(new Attribute[0]));
+ MissingFragmentPolicy.FAIL_ANALYSIS, true, attributes.toArray(new Attribute[0]));
}
public void testRuleClassBasics() throws Exception {
@@ -212,7 +214,7 @@ public class RuleClassTest extends PackageLoadingTestCase {
ImplicitOutputsFunction.NONE, RuleClass.NO_CHANGE, DUMMY_CONFIGURED_TARGET_FACTORY,
PredicatesWithMessage.<Rule>alwaysTrue(), PREFERRED_DEPENDENCY_PREDICATE,
ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS, null, ImmutableSet.<Class<?>>of(),
- false, true,
+ MissingFragmentPolicy.FAIL_ANALYSIS, true,
attr("list1", LABEL_LIST).mandatory().legacyAllowAnyFileType().build(),
attr("list2", LABEL_LIST).mandatory().legacyAllowAnyFileType().build(),
attr("list3", LABEL_LIST).mandatory().legacyAllowAnyFileType().build());
@@ -242,7 +244,8 @@ public class RuleClassTest extends PackageLoadingTestCase {
ImplicitOutputsFunction.NONE, RuleClass.NO_CHANGE, DUMMY_CONFIGURED_TARGET_FACTORY,
PredicatesWithMessage.<Rule>alwaysTrue(), PREFERRED_DEPENDENCY_PREDICATE,
ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS, null, ImmutableSet.<Class<?>>of(),
- false, true, attr("visibility", LABEL_LIST).legacyAllowAnyFileType().build());
+ MissingFragmentPolicy.FAIL_ANALYSIS, true,
+ attr("visibility", LABEL_LIST).legacyAllowAnyFileType().build());
Map<String, Object> attributeValues = new HashMap<>();
attributeValues.put("visibility", Arrays.asList("//visibility:legacy_public"));
@@ -327,7 +330,7 @@ public class RuleClassTest extends PackageLoadingTestCase {
RuleClass.NO_CHANGE, DUMMY_CONFIGURED_TARGET_FACTORY,
PredicatesWithMessage.<Rule>alwaysTrue(), PREFERRED_DEPENDENCY_PREDICATE,
ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS, null, ImmutableSet.<Class<?>>of(),
- false, true, attr("outs", OUTPUT_LIST).build());
+ MissingFragmentPolicy.FAIL_ANALYSIS, true, attr("outs", OUTPUT_LIST).build());
Map<String, Object> attributeValues = new HashMap<>();
attributeValues.put("outs", Collections.singletonList("explicit_out"));
@@ -348,7 +351,7 @@ public class RuleClassTest extends PackageLoadingTestCase {
ImplicitOutputsFunction.fromTemplates("%{dirname}lib%{basename}.bar"), RuleClass.NO_CHANGE,
DUMMY_CONFIGURED_TARGET_FACTORY, PredicatesWithMessage.<Rule>alwaysTrue(),
PREFERRED_DEPENDENCY_PREDICATE, ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS,
- null, ImmutableSet.<Class<?>>of(), false, true);
+ null, ImmutableSet.<Class<?>>of(), MissingFragmentPolicy.FAIL_ANALYSIS, true);
Rule rule = createRule(ruleClass, "myRule", Collections.<String, Object>emptyMap(),
testRuleLocation);
@@ -369,7 +372,7 @@ public class RuleClassTest extends PackageLoadingTestCase {
ImplicitOutputsFunction.fromTemplates("empty"), RuleClass.NO_CHANGE,
DUMMY_CONFIGURED_TARGET_FACTORY, PredicatesWithMessage.<Rule>alwaysTrue(),
PREFERRED_DEPENDENCY_PREDICATE, ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS,
- null, ImmutableSet.<Class<?>>of(), false, true,
+ null, ImmutableSet.<Class<?>>of(), MissingFragmentPolicy.FAIL_ANALYSIS, true,
attr("condition", BOOLEAN).value(false).build(),
attr("declared1", BOOLEAN).value(false).build(),
attr("declared2", BOOLEAN).value(false).build(),
@@ -512,7 +515,7 @@ public class RuleClassTest extends PackageLoadingTestCase {
RuleClass.NO_CHANGE, DUMMY_CONFIGURED_TARGET_FACTORY,
PredicatesWithMessage.<Rule>alwaysTrue(), PREFERRED_DEPENDENCY_PREDICATE,
ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS, null, ImmutableSet.<Class<?>>of(),
- false, true, attr("outs", OUTPUT_LIST).build());
+ MissingFragmentPolicy.FAIL_ANALYSIS, true, attr("outs", OUTPUT_LIST).build());
Map<String, Object> attributeValues = new HashMap<>();
attributeValues.put("outs", ImmutableList.of("third", "fourth"));
@@ -535,7 +538,7 @@ public class RuleClassTest extends PackageLoadingTestCase {
ImplicitOutputsFunction.NONE, RuleClass.NO_CHANGE, DUMMY_CONFIGURED_TARGET_FACTORY,
PredicatesWithMessage.<Rule>alwaysTrue(), PREFERRED_DEPENDENCY_PREDICATE,
ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS, null, ImmutableSet.<Class<?>>of(),
- false, true,
+ MissingFragmentPolicy.FAIL_ANALYSIS, true,
attr("a", STRING_LIST).mandatory().build(),
attr("b", STRING_LIST).mandatory().build(),
attr("c", STRING_LIST).mandatory().build(),
@@ -621,7 +624,7 @@ public class RuleClassTest extends PackageLoadingTestCase {
ImplicitOutputsFunction.NONE, RuleClass.NO_CHANGE, DUMMY_CONFIGURED_TARGET_FACTORY,
PredicatesWithMessage.<Rule>alwaysTrue(), PREFERRED_DEPENDENCY_PREDICATE,
ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS, null, ImmutableSet.<Class<?>>of(),
- false, true, attributes);
+ MissingFragmentPolicy.FAIL_ANALYSIS, true, attributes);
return mandNonEmptyRuleClass;
}
@@ -632,7 +635,7 @@ public class RuleClassTest extends PackageLoadingTestCase {
ImplicitOutputsFunction.NONE, RuleClass.NO_CHANGE, DUMMY_CONFIGURED_TARGET_FACTORY,
PredicatesWithMessage.<Rule>alwaysTrue(), PREFERRED_DEPENDENCY_PREDICATE,
ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS, null, ImmutableSet.<Class<?>>of(),
- false, true, attr("list", LABEL_LIST)
+ MissingFragmentPolicy.FAIL_ANALYSIS, true, attr("list", LABEL_LIST)
.nonEmpty().legacyAllowAnyFileType().value(emptyList).build());
Map<String, Object> attributeValues = new LinkedHashMap<>();
@@ -718,7 +721,8 @@ public class RuleClassTest extends PackageLoadingTestCase {
false, ImplicitOutputsFunction.NONE, RuleClass.NO_CHANGE, DUMMY_CONFIGURED_TARGET_FACTORY,
PredicatesWithMessage.<Rule>alwaysTrue(), PREFERRED_DEPENDENCY_PREDICATE,
ImmutableSet.<Class<?>>of(), null, NO_EXTERNAL_BINDINGS, null,
- ImmutableSet.<Class<?>>of(DummyFragment.class), false, true, attr("attr", STRING).build());
+ ImmutableSet.<Class<?>>of(DummyFragment.class), MissingFragmentPolicy.FAIL_ANALYSIS, true,
+ attr("attr", STRING).build());
return parentRuleClass;
}