From 827ba622e4bba1efbe145c268897ad9ae0a934e1 Mon Sep 17 00:00:00 2001 From: Martin Stjernholm Date: Thu, 3 Feb 2022 00:20:11 +0000 Subject: [PATCH] Show all descriptions when failing to find one. Test: m nothing Change-Id: Idfac00a94e8e3e90112028f5c2f6949f50d45f31 --- android/testing.go | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/android/testing.go b/android/testing.go index 8daf6b783..39864e103 100644 --- a/android/testing.go +++ b/android/testing.go @@ -781,19 +781,21 @@ func (b baseTestingComponent) buildParamsFromRule(rule string) TestingBuildParam return p } -func (b baseTestingComponent) maybeBuildParamsFromDescription(desc string) TestingBuildParams { +func (b baseTestingComponent) maybeBuildParamsFromDescription(desc string) (TestingBuildParams, []string) { + var searchedDescriptions []string for _, p := range b.provider.BuildParamsForTests() { + searchedDescriptions = append(searchedDescriptions, p.Description) if strings.Contains(p.Description, desc) { - return b.newTestingBuildParams(p) + return b.newTestingBuildParams(p), searchedDescriptions } } - return TestingBuildParams{} + return TestingBuildParams{}, searchedDescriptions } func (b baseTestingComponent) buildParamsFromDescription(desc string) TestingBuildParams { - p := b.maybeBuildParamsFromDescription(desc) + p, searchedDescriptions := b.maybeBuildParamsFromDescription(desc) if p.Rule == nil { - panic(fmt.Errorf("couldn't find description %q", desc)) + panic(fmt.Errorf("couldn't find description %q\nall descriptions:\n%s", desc, strings.Join(searchedDescriptions, "\n"))) } return p } @@ -860,7 +862,8 @@ func (b baseTestingComponent) Rule(rule string) TestingBuildParams { // MaybeDescription finds a call to ctx.Build with BuildParams.Description set to a the given string. Returns an empty // BuildParams if no rule is found. func (b baseTestingComponent) MaybeDescription(desc string) TestingBuildParams { - return b.maybeBuildParamsFromDescription(desc) + p, _ := b.maybeBuildParamsFromDescription(desc) + return p } // Description finds a call to ctx.Build with BuildParams.Description set to a the given string. Panics if no rule is