Cleanup and refactor RuleErrorConsumer.
This removes the need for AbstractRuleErrorConsumer, and moves the logic of the post() method of RuleContext into RuleContext proper, as it circumvents normal error handling flows.
RELNOTES: None.
PiperOrigin-RevId: 215627666
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/AnalysisFailureReportingTest.java b/src/test/java/com/google/devtools/build/lib/analysis/AnalysisFailureReportingTest.java
index acf57fd..5ee1f3c 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/AnalysisFailureReportingTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/AnalysisFailureReportingTest.java
@@ -143,9 +143,9 @@
toId(
Iterables.getOnlyElement(result.getTopLevelTargetsWithConfigs())
.getConfiguration()),
- "target '//bar:bar' is not visible from target '//foo:foo'. "
- + "Check the visibility declaration of the former target if you think the "
- + "dependency is legitimate"));
+ "in sh_library rule //foo:foo: target '//bar:bar' is not visible from target "
+ + "'//foo:foo'. Check the visibility declaration of the former target if you "
+ + "think the dependency is legitimate"));
}
// TODO(ulfjack): Add more tests for
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/LocationExpanderTest.java b/src/test/java/com/google/devtools/build/lib/analysis/LocationExpanderTest.java
index 92f5616..77db2ba 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/LocationExpanderTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/LocationExpanderTest.java
@@ -19,7 +19,6 @@
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.analysis.LocationExpander.LocationFunction;
import com.google.devtools.build.lib.cmdline.RepositoryName;
-import com.google.devtools.build.lib.packages.AbstractRuleErrorConsumer;
import com.google.devtools.build.lib.packages.RuleErrorConsumer;
import java.util.ArrayList;
import java.util.List;
@@ -30,8 +29,7 @@
/** Unit tests for {@link LocationExpander}. */
@RunWith(JUnit4.class)
public class LocationExpanderTest {
- private static final class Capture extends AbstractRuleErrorConsumer
- implements RuleErrorConsumer {
+ private static final class Capture implements RuleErrorConsumer {
private final List<String> warnsOrErrors = new ArrayList<>();
@Override
diff --git a/src/test/java/com/google/devtools/build/lib/rules/android/ResourceTestBase.java b/src/test/java/com/google/devtools/build/lib/rules/android/ResourceTestBase.java
index 647030a..0025cb2 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/android/ResourceTestBase.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/android/ResourceTestBase.java
@@ -33,7 +33,6 @@
import com.google.devtools.build.lib.cmdline.LabelSyntaxException;
import com.google.devtools.build.lib.events.ExtendedEventHandler;
import com.google.devtools.build.lib.events.StoredEventHandler;
-import com.google.devtools.build.lib.packages.AbstractRuleErrorConsumer;
import com.google.devtools.build.lib.packages.RuleClass.ConfiguredTargetFactory.RuleErrorException;
import com.google.devtools.build.lib.packages.RuleErrorConsumer;
import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey;
@@ -74,8 +73,7 @@
};
/** A faked {@link RuleErrorConsumer} that validates that only expected errors were reported. */
- public static final class FakeRuleErrorConsumer extends AbstractRuleErrorConsumer
- implements RuleErrorConsumer {
+ public static final class FakeRuleErrorConsumer implements RuleErrorConsumer {
private String ruleErrorMessage = null;
private String attributeErrorAttribute = null;
private String attributeErrorMessage = null;