diff options
Diffstat (limited to 'android/testing.go')
-rw-r--r-- | android/testing.go | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/android/testing.go b/android/testing.go index 7440869f3..23aadda53 100644 --- a/android/testing.go +++ b/android/testing.go @@ -19,6 +19,7 @@ import ( "fmt" "path/filepath" "regexp" + "runtime" "sort" "strings" "sync" @@ -1152,6 +1153,30 @@ func AndroidMkEntriesForTest(t *testing.T, ctx *TestContext, mod blueprint.Modul return entriesList } +func AndroidMkInfoForTest(t *testing.T, ctx *TestContext, mod blueprint.Module) *AndroidMkProviderInfo { + if runtime.GOOS == "darwin" && mod.(Module).base().Os() != Darwin { + // The AndroidMkInfo provider is not set in this case. + t.Skip("AndroidMkInfo provider is not set on darwin") + } + + t.Helper() + var ok bool + if _, ok = mod.(AndroidMkProviderInfoProducer); !ok { + t.Errorf("module does not implement AndroidMkProviderInfoProducer: " + mod.Name()) + } + + info := OtherModuleProviderOrDefault(ctx, mod, AndroidMkInfoProvider) + aconfigUpdateAndroidMkInfos(ctx, mod.(Module), info) + info.PrimaryInfo.fillInEntries(ctx, mod) + if len(info.ExtraInfo) > 0 { + for _, ei := range info.ExtraInfo { + ei.fillInEntries(ctx, mod) + } + } + + return info +} + func AndroidMkDataForTest(t *testing.T, ctx *TestContext, mod blueprint.Module) AndroidMkData { t.Helper() var p AndroidMkDataProvider |