resolve merge conflicts of a73ffc21e0
to rvc-dev-plus-aosp
Test: I solemnly swear I tested this conflict resolution. Bug: None Change-Id: Ie8ad8a9e91bf4a86c90060b15dc88f9860539637
This commit is contained in:
commit
300b266264
7 changed files with 127 additions and 84 deletions
|
@ -111,6 +111,10 @@ type config struct {
|
|||
fs pathtools.FileSystem
|
||||
mockBpList string
|
||||
|
||||
// If testAllowNonExistentPaths is true then PathForSource and PathForModuleSrc won't error
|
||||
// in tests when a path doesn't exist.
|
||||
testAllowNonExistentPaths bool
|
||||
|
||||
OncePer
|
||||
}
|
||||
|
||||
|
@ -230,6 +234,10 @@ func TestConfig(buildDir string, env map[string]string, bp string, fs map[string
|
|||
buildDir: buildDir,
|
||||
captureBuild: true,
|
||||
env: envCopy,
|
||||
|
||||
// Set testAllowNonExistentPaths so that test contexts don't need to specify every path
|
||||
// passed to PathForSource or PathForModuleSrc.
|
||||
testAllowNonExistentPaths: true,
|
||||
}
|
||||
config.deviceConfig = &deviceConfig{
|
||||
config: config,
|
||||
|
|
|
@ -405,7 +405,7 @@ func expandOneSrcPath(ctx ModuleContext, s string, expandedExcludes []string) (P
|
|||
p := pathForModuleSrc(ctx, s)
|
||||
if exists, _, err := ctx.Config().fs.Exists(p.String()); err != nil {
|
||||
reportPathErrorf(ctx, "%s: %s", p, err.Error())
|
||||
} else if !exists {
|
||||
} else if !exists && !ctx.Config().testAllowNonExistentPaths {
|
||||
reportPathErrorf(ctx, "module source path %q does not exist", p)
|
||||
}
|
||||
|
||||
|
@ -798,7 +798,7 @@ func PathForSource(ctx PathContext, pathComponents ...string) SourcePath {
|
|||
}
|
||||
} else if exists, _, err := ctx.Config().fs.Exists(path.String()); err != nil {
|
||||
reportPathErrorf(ctx, "%s: %s", path, err.Error())
|
||||
} else if !exists {
|
||||
} else if !exists && !ctx.Config().testAllowNonExistentPaths {
|
||||
reportPathErrorf(ctx, "source path %q does not exist", path)
|
||||
}
|
||||
return path
|
||||
|
|
|
@ -2719,7 +2719,7 @@ func TestCodelessApp(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestEmbedNotice(t *testing.T) {
|
||||
ctx, _ := testJava(t, cc.GatherRequiredDepsForTest(android.Android)+`
|
||||
ctx, _ := testJavaWithFS(t, cc.GatherRequiredDepsForTest(android.Android)+`
|
||||
android_app {
|
||||
name: "foo",
|
||||
srcs: ["a.java"],
|
||||
|
@ -2775,7 +2775,12 @@ func TestEmbedNotice(t *testing.T) {
|
|||
srcs: ["b.java"],
|
||||
notice: "TOOL_NOTICE",
|
||||
}
|
||||
`)
|
||||
`, map[string][]byte{
|
||||
"APP_NOTICE": nil,
|
||||
"GENRULE_NOTICE": nil,
|
||||
"LIB_NOTICE": nil,
|
||||
"TOOL_NOTICE": nil,
|
||||
})
|
||||
|
||||
// foo has NOTICE files to process, and embed_notices is true.
|
||||
foo := ctx.ModuleForTests("foo", "android_common")
|
||||
|
|
|
@ -1470,7 +1470,7 @@ func metalavaCmd(ctx android.ModuleContext, rule *android.RuleBuilder, javaVersi
|
|||
FlagWithInput("@", srcJarList).
|
||||
FlagWithOutput("--strict-input-files:warn ", android.PathForModuleOut(ctx, ctx.ModuleName()+"-"+"violations.txt"))
|
||||
|
||||
if implicitsRsp.String() != "" {
|
||||
if implicitsRsp != nil {
|
||||
cmd.FlagWithArg("--strict-input-files-exempt ", "@"+implicitsRsp.String())
|
||||
}
|
||||
|
||||
|
|
|
@ -142,9 +142,14 @@ func testJavaErrorWithConfig(t *testing.T, pattern string, config android.Config
|
|||
return ctx, config
|
||||
}
|
||||
|
||||
func testJavaWithFS(t *testing.T, bp string, fs map[string][]byte) (*android.TestContext, android.Config) {
|
||||
t.Helper()
|
||||
return testJavaWithConfig(t, testConfig(nil, bp, fs))
|
||||
}
|
||||
|
||||
func testJava(t *testing.T, bp string) (*android.TestContext, android.Config) {
|
||||
t.Helper()
|
||||
return testJavaWithConfig(t, testConfig(nil, bp, nil))
|
||||
return testJavaWithFS(t, bp, nil)
|
||||
}
|
||||
|
||||
func testJavaWithConfig(t *testing.T, config android.Config) (*android.TestContext, android.Config) {
|
||||
|
@ -740,7 +745,7 @@ func TestResources(t *testing.T) {
|
|||
|
||||
for _, test := range table {
|
||||
t.Run(test.name, func(t *testing.T) {
|
||||
ctx, _ := testJava(t, `
|
||||
ctx, _ := testJavaWithFS(t, `
|
||||
java_library {
|
||||
name: "foo",
|
||||
srcs: [
|
||||
|
@ -750,7 +755,13 @@ func TestResources(t *testing.T) {
|
|||
],
|
||||
`+test.prop+`,
|
||||
}
|
||||
`+test.extra)
|
||||
`+test.extra,
|
||||
map[string][]byte{
|
||||
"java-res/a/a": nil,
|
||||
"java-res/b/b": nil,
|
||||
"java-res2/a": nil,
|
||||
},
|
||||
)
|
||||
|
||||
foo := ctx.ModuleForTests("foo", "android_common").Output("withres/foo.jar")
|
||||
fooRes := ctx.ModuleForTests("foo", "android_common").Output("res/foo.jar")
|
||||
|
@ -769,7 +780,7 @@ func TestResources(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestIncludeSrcs(t *testing.T) {
|
||||
ctx, _ := testJava(t, `
|
||||
ctx, _ := testJavaWithFS(t, `
|
||||
java_library {
|
||||
name: "foo",
|
||||
srcs: [
|
||||
|
@ -790,7 +801,11 @@ func TestIncludeSrcs(t *testing.T) {
|
|||
java_resource_dirs: ["java-res"],
|
||||
include_srcs: true,
|
||||
}
|
||||
`)
|
||||
`, map[string][]byte{
|
||||
"java-res/a/a": nil,
|
||||
"java-res/b/b": nil,
|
||||
"java-res2/a": nil,
|
||||
})
|
||||
|
||||
// Test a library with include_srcs: true
|
||||
foo := ctx.ModuleForTests("foo", "android_common").Output("withres/foo.jar")
|
||||
|
@ -832,7 +847,7 @@ func TestIncludeSrcs(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestGeneratedSources(t *testing.T) {
|
||||
ctx, _ := testJava(t, `
|
||||
ctx, _ := testJavaWithFS(t, `
|
||||
java_library {
|
||||
name: "foo",
|
||||
srcs: [
|
||||
|
@ -847,7 +862,10 @@ func TestGeneratedSources(t *testing.T) {
|
|||
tool_files: ["java-res/a"],
|
||||
out: ["gen.java"],
|
||||
}
|
||||
`)
|
||||
`, map[string][]byte{
|
||||
"a.java": nil,
|
||||
"b.java": nil,
|
||||
})
|
||||
|
||||
javac := ctx.ModuleForTests("foo", "android_common").Rule("javac")
|
||||
genrule := ctx.ModuleForTests("gen", "").Rule("generator")
|
||||
|
@ -932,7 +950,7 @@ func TestSharding(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestDroiddoc(t *testing.T) {
|
||||
ctx, _ := testJava(t, `
|
||||
ctx, _ := testJavaWithFS(t, `
|
||||
droiddoc_exported_dir {
|
||||
name: "droiddoc-templates-sdk",
|
||||
path: ".",
|
||||
|
@ -945,7 +963,7 @@ func TestDroiddoc(t *testing.T) {
|
|||
droiddoc {
|
||||
name: "bar-doc",
|
||||
srcs: [
|
||||
"bar-doc/*.java",
|
||||
"bar-doc/a.java",
|
||||
"bar-doc/IFoo.aidl",
|
||||
":bar-doc-aidl-srcs",
|
||||
],
|
||||
|
@ -963,7 +981,11 @@ func TestDroiddoc(t *testing.T) {
|
|||
todo_file: "libcore-docs-todo.html",
|
||||
args: "-offlinemode -title \"libcore\"",
|
||||
}
|
||||
`)
|
||||
`,
|
||||
map[string][]byte{
|
||||
"bar-doc/a.java": nil,
|
||||
"bar-doc/b.java": nil,
|
||||
})
|
||||
|
||||
barDoc := ctx.ModuleForTests("bar-doc", "android_common").Rule("javadoc")
|
||||
var javaSrcs []string
|
||||
|
@ -989,7 +1011,7 @@ func TestDroidstubsWithSystemModules(t *testing.T) {
|
|||
droidstubs {
|
||||
name: "stubs-source-system-modules",
|
||||
srcs: [
|
||||
"bar-doc/*.java",
|
||||
"bar-doc/a.java",
|
||||
],
|
||||
sdk_version: "none",
|
||||
system_modules: "source-system-modules",
|
||||
|
@ -1010,7 +1032,7 @@ func TestDroidstubsWithSystemModules(t *testing.T) {
|
|||
droidstubs {
|
||||
name: "stubs-prebuilt-system-modules",
|
||||
srcs: [
|
||||
"bar-doc/*.java",
|
||||
"bar-doc/a.java",
|
||||
],
|
||||
sdk_version: "none",
|
||||
system_modules: "prebuilt-system-modules",
|
||||
|
|
71
java/lint_defaults.txt
Normal file
71
java/lint_defaults.txt
Normal file
|
@ -0,0 +1,71 @@
|
|||
# Treat LintError as fatal to catch invocation errors
|
||||
--fatal_check LintError
|
||||
|
||||
# Downgrade existing errors to warnings
|
||||
--warning_check AppCompatResource
|
||||
--warning_check AppLinkUrlError
|
||||
--warning_check ByteOrderMark
|
||||
--warning_check DuplicateActivity
|
||||
--warning_check DuplicateDefinition
|
||||
--warning_check DuplicateIds
|
||||
--warning_check EllipsizeMaxLines
|
||||
--warning_check ExtraTranslation
|
||||
--warning_check FontValidationError
|
||||
--warning_check FullBackupContent
|
||||
--warning_check GetContentDescriptionOverride
|
||||
--warning_check HardcodedDebugMode
|
||||
--warning_check ImpliedQuantity
|
||||
--warning_check ImpliedTouchscreenHardware
|
||||
--warning_check IncludeLayoutParam
|
||||
--warning_check Instantiatable
|
||||
--warning_check InvalidPermission
|
||||
--warning_check InvalidUsesTagAttribute
|
||||
--warning_check InvalidWakeLockTag
|
||||
--warning_check LibraryCustomView
|
||||
--warning_check LogTagMismatch
|
||||
--warning_check LongLogTag
|
||||
--warning_check MenuTitle
|
||||
--warning_check MissingClass
|
||||
--warning_check MissingConstraints
|
||||
--warning_check MissingDefaultResource
|
||||
--warning_check MissingIntentFilterForMediaSearch
|
||||
--warning_check MissingLeanbackLauncher
|
||||
--warning_check MissingLeanbackSupport
|
||||
--warning_check MissingOnPlayFromSearch
|
||||
--warning_check MissingPrefix
|
||||
--warning_check MissingQuantity
|
||||
--warning_check MissingSuperCall
|
||||
--warning_check MissingTvBanner
|
||||
--warning_check NamespaceTypo
|
||||
--warning_check NetworkSecurityConfig
|
||||
--warning_check NotSibling
|
||||
--warning_check ObjectAnimatorBinding
|
||||
--warning_check OnClick
|
||||
--warning_check Orientation
|
||||
--warning_check OverrideAbstract
|
||||
--warning_check ParcelCreator
|
||||
--warning_check ProtectedPermissions
|
||||
--warning_check RecyclerView
|
||||
--warning_check ReferenceType
|
||||
--warning_check RequiredSize
|
||||
--warning_check ResAuto
|
||||
--warning_check ResourceCycle
|
||||
--warning_check ResourceType
|
||||
--warning_check RestrictedApi
|
||||
--warning_check RtlCompat
|
||||
--warning_check ServiceCast
|
||||
--warning_check StringFormatInvalid
|
||||
--warning_check StringFormatMatches
|
||||
--warning_check UnknownId
|
||||
--warning_check ValidFragment
|
||||
--warning_check ValidRestrictions
|
||||
--warning_check WebViewLayout
|
||||
--warning_check WifiManagerLeak
|
||||
--warning_check WrongCall
|
||||
--warning_check WrongConstant
|
||||
--warning_check WrongManifestParent
|
||||
--warning_check WrongThread
|
||||
--warning_check WrongViewCast
|
||||
|
||||
# TODO(158390965): remove this when lint doesn't crash
|
||||
#--disable_check HardcodedDebugMode
|
|
@ -25,35 +25,12 @@ func TestConfig(buildDir string, env map[string]string, bp string, fs map[string
|
|||
bp += GatherRequiredDepsForTest()
|
||||
|
||||
mockFS := map[string][]byte{
|
||||
"a.java": nil,
|
||||
"b.java": nil,
|
||||
"c.java": nil,
|
||||
"b.kt": nil,
|
||||
"a.jar": nil,
|
||||
"b.jar": nil,
|
||||
"c.jar": nil,
|
||||
"APP_NOTICE": nil,
|
||||
"GENRULE_NOTICE": nil,
|
||||
"LIB_NOTICE": nil,
|
||||
"TOOL_NOTICE": nil,
|
||||
"AndroidTest.xml": nil,
|
||||
"java-res/a/a": nil,
|
||||
"java-res/b/b": nil,
|
||||
"java-res2/a": nil,
|
||||
"java-fg/a.java": nil,
|
||||
"java-fg/b.java": nil,
|
||||
"java-fg/c.java": nil,
|
||||
"api/current.txt": nil,
|
||||
"api/removed.txt": nil,
|
||||
"api/system-current.txt": nil,
|
||||
"api/system-removed.txt": nil,
|
||||
"api/test-current.txt": nil,
|
||||
"api/test-removed.txt": nil,
|
||||
"framework/aidl/a.aidl": nil,
|
||||
"aidl/foo/IFoo.aidl": nil,
|
||||
"aidl/bar/IBar.aidl": nil,
|
||||
"assets_a/a": nil,
|
||||
"assets_b/b": nil,
|
||||
|
||||
"prebuilts/sdk/14/public/android.jar": nil,
|
||||
"prebuilts/sdk/14/public/framework.aidl": nil,
|
||||
|
@ -104,51 +81,11 @@ func TestConfig(buildDir string, env map[string]string, bp string, fs map[string
|
|||
"prebuilts/sdk/tools/core-lambda-stubs.jar": nil,
|
||||
"prebuilts/sdk/Android.bp": []byte(`prebuilt_apis { name: "sdk", api_dirs: ["14", "28", "30", "current"],}`),
|
||||
|
||||
"prebuilts/apk/app.apk": nil,
|
||||
"prebuilts/apk/app_arm.apk": nil,
|
||||
"prebuilts/apk/app_arm64.apk": nil,
|
||||
"prebuilts/apk/app_xhdpi.apk": nil,
|
||||
"prebuilts/apk/app_xxhdpi.apk": nil,
|
||||
|
||||
"prebuilts/apks/app.apks": nil,
|
||||
|
||||
// For framework-res, which is an implicit dependency for framework
|
||||
"AndroidManifest.xml": nil,
|
||||
"build/make/target/product/security/testkey": nil,
|
||||
|
||||
"build/soong/scripts/jar-wrapper.sh": nil,
|
||||
|
||||
"build/make/core/verify_uses_libraries.sh": nil,
|
||||
|
||||
"build/make/core/proguard.flags": nil,
|
||||
"build/make/core/proguard_basic_keeps.flags": nil,
|
||||
|
||||
"jdk8/jre/lib/jce.jar": nil,
|
||||
"jdk8/jre/lib/rt.jar": nil,
|
||||
"jdk8/lib/tools.jar": nil,
|
||||
|
||||
"bar-doc/a.java": nil,
|
||||
"bar-doc/b.java": nil,
|
||||
"bar-doc/IFoo.aidl": nil,
|
||||
"bar-doc/IBar.aidl": nil,
|
||||
"bar-doc/known_oj_tags.txt": nil,
|
||||
"external/doclava/templates-sdk": nil,
|
||||
|
||||
"cert/new_cert.x509.pem": nil,
|
||||
"cert/new_cert.pk8": nil,
|
||||
"lineage.bin": nil,
|
||||
|
||||
"testdata/data": nil,
|
||||
|
||||
"stubs-sources/foo/Foo.java": nil,
|
||||
"stubs/sources/foo/Foo.java": nil,
|
||||
|
||||
// For java_sdk_library
|
||||
"api/module-lib-current.txt": nil,
|
||||
"api/module-lib-removed.txt": nil,
|
||||
"api/system-server-current.txt": nil,
|
||||
"api/system-server-removed.txt": nil,
|
||||
"build/soong/scripts/gen-java-current-api-files.sh": nil,
|
||||
"api/module-lib-current.txt": nil,
|
||||
"api/module-lib-removed.txt": nil,
|
||||
"api/system-server-current.txt": nil,
|
||||
"api/system-server-removed.txt": nil,
|
||||
}
|
||||
|
||||
cc.GatherRequiredFilesForTest(mockFS)
|
||||
|
|
Loading…
Reference in a new issue