Automated rollback of commit 81ab902812b0141ef034ec39338bfeefdd5254ef.
*** Reason for rollback ***
Memory regression.
RELNOTES: None
*** Original change description ***
Package Lookup: support inidividual error messages
Instead of having a single instance of NoBuildFilePackageLookupValue
(which necessarily will provide a very generic error message) support
several instances with more specific error messages. Use them to
indicate the places where a BUILD was searched for.
Fixes #7457.
Change-not-actually-to-trick-Copybara-Id: Ib5cbf198cb3926d0f619760f8d00774dd468a214
PiperOrigin-RevId: 237266579
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 120e1f9..0c5938d 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
@@ -87,12 +87,10 @@
Label topLevel = Label.parseAbsoluteUnchecked("//foo");
Label causeLabel = Label.parseAbsoluteUnchecked("//bar");
assertThat(collector.events.keySet()).containsExactly(topLevel);
- assertThat(collector.events.get(topLevel)).hasSize(1);
- Cause topLevelCause = collector.events.get(topLevel).iterator().next();
- assertThat(topLevelCause.getClass()).isAssignableTo(LoadingFailedCause.class);
- assertThat(topLevelCause.getLabel()).isEqualTo(causeLabel);
- assertThat(topLevelCause.toString())
- .contains("no such package 'bar': BUILD file not found on package path");
+ assertThat(collector.events.get(topLevel))
+ .containsExactly(
+ new LoadingFailedCause(
+ causeLabel, "no such package 'bar': BUILD file not found on package path"));
}
/**
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
index d774450..2e56120 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
@@ -349,6 +349,8 @@
PackageLookupValue.success(root2, BuildFileName.BUILD),
PackageLookupValue.success(root2, BuildFileName.BUILD))
.addEqualityGroup(
+ PackageLookupValue.NO_BUILD_FILE_VALUE, PackageLookupValue.NO_BUILD_FILE_VALUE)
+ .addEqualityGroup(
PackageLookupValue.DELETED_PACKAGE_VALUE, PackageLookupValue.DELETED_PACKAGE_VALUE)
.addEqualityGroup(
PackageLookupValue.invalidPackageName("nope1"),
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkImportLookupFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkImportLookupFunctionTest.java
index 143efd1..c05b615 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkImportLookupFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkImportLookupFunctionTest.java
@@ -195,7 +195,7 @@
ErrorInfo errorInfo = result.getError(skylarkImportLookupKey);
String errorMessage = errorInfo.getException().getMessage();
assertThat(errorMessage)
- .contains(
+ .isEqualTo(
"Unable to load package for '//pkg:ext.bzl': BUILD file not found on package path");
}
@@ -212,7 +212,7 @@
ErrorInfo errorInfo = result.getError(skylarkImportLookupKey);
String errorMessage = errorInfo.getException().getMessage();
assertThat(errorMessage)
- .contains(
+ .isEqualTo(
"Unable to load package for '//pkg:ext.bzl': BUILD file not found on package path");
}
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoaderTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoaderTest.java
index 1110640..8086f3b 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoaderTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoaderTest.java
@@ -77,7 +77,7 @@
} catch (NoSuchPackageException expected) {
assertThat(expected)
.hasMessageThat()
- .contains("no such package 'nope': BUILD file not found on package path");
+ .isEqualTo("no such package 'nope': BUILD file not found on package path");
}
assertNoEvents(handler.getEvents());
}