Add java/testing.go for sysprop_test.go
Share more of the setup code for java tests to sysprop_tests.go.
Test: java_test.go, sysprop_test.go
Change-Id: I0e3b287bf188c432d995a9a91a18ebef12aa47d1
Merged-In: I0e3b287bf188c432d995a9a91a18ebef12aa47d1
(cherry picked from commit b19745363f
)
This commit is contained in:
@@ -268,6 +268,7 @@ bootstrap_go_package {
|
|||||||
"java/sdk_library.go",
|
"java/sdk_library.go",
|
||||||
"java/support_libraries.go",
|
"java/support_libraries.go",
|
||||||
"java/system_modules.go",
|
"java/system_modules.go",
|
||||||
|
"java/testing.go",
|
||||||
],
|
],
|
||||||
testSrcs: [
|
testSrcs: [
|
||||||
"java/app_test.go",
|
"java/app_test.go",
|
||||||
|
@@ -15,7 +15,6 @@
|
|||||||
package java
|
package java
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
@@ -54,16 +53,7 @@ func TestMain(m *testing.M) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func testConfig(env map[string]string) android.Config {
|
func testConfig(env map[string]string) android.Config {
|
||||||
if env == nil {
|
return TestConfig(buildDir, env)
|
||||||
env = make(map[string]string)
|
|
||||||
}
|
|
||||||
if env["ANDROID_JAVA8_HOME"] == "" {
|
|
||||||
env["ANDROID_JAVA8_HOME"] = "jdk8"
|
|
||||||
}
|
|
||||||
config := android.TestArchConfig(buildDir, env)
|
|
||||||
config.TestProductVariables.DeviceSystemSdkVersions = []string{"14", "15"}
|
|
||||||
return config
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func testContext(config android.Config, bp string,
|
func testContext(config android.Config, bp string,
|
||||||
@@ -113,53 +103,7 @@ func testContext(config android.Config, bp string,
|
|||||||
|
|
||||||
ctx.Register()
|
ctx.Register()
|
||||||
|
|
||||||
extraModules := []string{
|
bp += GatherRequiredDepsForTest()
|
||||||
"core-lambda-stubs",
|
|
||||||
"framework",
|
|
||||||
"ext",
|
|
||||||
"android_stubs_current",
|
|
||||||
"android_system_stubs_current",
|
|
||||||
"android_test_stubs_current",
|
|
||||||
"core.current.stubs",
|
|
||||||
"core.platform.api.stubs",
|
|
||||||
"kotlin-stdlib",
|
|
||||||
"kotlin-annotations",
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, extra := range extraModules {
|
|
||||||
bp += fmt.Sprintf(`
|
|
||||||
java_library {
|
|
||||||
name: "%s",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
no_standard_libs: true,
|
|
||||||
sdk_version: "core_current",
|
|
||||||
system_modules: "core-platform-api-stubs-system-modules",
|
|
||||||
}
|
|
||||||
`, extra)
|
|
||||||
}
|
|
||||||
|
|
||||||
bp += `
|
|
||||||
android_app {
|
|
||||||
name: "framework-res",
|
|
||||||
no_framework_libs: true,
|
|
||||||
}
|
|
||||||
`
|
|
||||||
|
|
||||||
systemModules := []string{
|
|
||||||
"core-system-modules",
|
|
||||||
"core-platform-api-stubs-system-modules",
|
|
||||||
"android_stubs_current_system_modules",
|
|
||||||
"android_system_stubs_current_system_modules",
|
|
||||||
"android_test_stubs_current_system_modules",
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, extra := range systemModules {
|
|
||||||
bp += fmt.Sprintf(`
|
|
||||||
java_system_modules {
|
|
||||||
name: "%s",
|
|
||||||
}
|
|
||||||
`, extra)
|
|
||||||
}
|
|
||||||
|
|
||||||
mockFS := map[string][]byte{
|
mockFS := map[string][]byte{
|
||||||
"Android.bp": []byte(bp),
|
"Android.bp": []byte(bp),
|
||||||
|
88
java/testing.go
Normal file
88
java/testing.go
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
// Copyright 2019 Google Inc. All rights reserved.
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
|
package java
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
|
||||||
|
"android/soong/android"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestConfig(buildDir string, env map[string]string) android.Config {
|
||||||
|
if env == nil {
|
||||||
|
env = make(map[string]string)
|
||||||
|
}
|
||||||
|
if env["ANDROID_JAVA8_HOME"] == "" {
|
||||||
|
env["ANDROID_JAVA8_HOME"] = "jdk8"
|
||||||
|
}
|
||||||
|
config := android.TestArchConfig(buildDir, env)
|
||||||
|
config.TestProductVariables.DeviceSystemSdkVersions = []string{"14", "15"}
|
||||||
|
|
||||||
|
return config
|
||||||
|
}
|
||||||
|
|
||||||
|
func GatherRequiredDepsForTest() string {
|
||||||
|
var bp string
|
||||||
|
|
||||||
|
extraModules := []string{
|
||||||
|
"core-lambda-stubs",
|
||||||
|
"framework",
|
||||||
|
"ext",
|
||||||
|
"android_stubs_current",
|
||||||
|
"android_system_stubs_current",
|
||||||
|
"android_test_stubs_current",
|
||||||
|
"core.current.stubs",
|
||||||
|
"core.platform.api.stubs",
|
||||||
|
"kotlin-stdlib",
|
||||||
|
"kotlin-annotations",
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, extra := range extraModules {
|
||||||
|
bp += fmt.Sprintf(`
|
||||||
|
java_library {
|
||||||
|
name: "%s",
|
||||||
|
srcs: ["a.java"],
|
||||||
|
no_standard_libs: true,
|
||||||
|
sdk_version: "core_current",
|
||||||
|
system_modules: "core-platform-api-stubs-system-modules",
|
||||||
|
}
|
||||||
|
`, extra)
|
||||||
|
}
|
||||||
|
|
||||||
|
bp += `
|
||||||
|
android_app {
|
||||||
|
name: "framework-res",
|
||||||
|
no_framework_libs: true,
|
||||||
|
}
|
||||||
|
`
|
||||||
|
|
||||||
|
systemModules := []string{
|
||||||
|
"core-system-modules",
|
||||||
|
"core-platform-api-stubs-system-modules",
|
||||||
|
"android_stubs_current_system_modules",
|
||||||
|
"android_system_stubs_current_system_modules",
|
||||||
|
"android_test_stubs_current_system_modules",
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, extra := range systemModules {
|
||||||
|
bp += fmt.Sprintf(`
|
||||||
|
java_system_modules {
|
||||||
|
name: "%s",
|
||||||
|
}
|
||||||
|
`, extra)
|
||||||
|
}
|
||||||
|
|
||||||
|
return bp
|
||||||
|
}
|
@@ -19,7 +19,6 @@ import (
|
|||||||
"android/soong/cc"
|
"android/soong/cc"
|
||||||
"android/soong/java"
|
"android/soong/java"
|
||||||
|
|
||||||
"fmt"
|
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"os"
|
"os"
|
||||||
"strings"
|
"strings"
|
||||||
@@ -90,54 +89,7 @@ func testContext(config android.Config, bp string,
|
|||||||
|
|
||||||
ctx.Register()
|
ctx.Register()
|
||||||
|
|
||||||
extraModules := []string{
|
bp += java.GatherRequiredDepsForTest()
|
||||||
"core-lambda-stubs",
|
|
||||||
"framework",
|
|
||||||
"ext",
|
|
||||||
"updatable_media_stubs",
|
|
||||||
|
|
||||||
"android_stubs_current",
|
|
||||||
"android_system_stubs_current",
|
|
||||||
"android_test_stubs_current",
|
|
||||||
"core.current.stubs",
|
|
||||||
"core.platform.api.stubs",
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, extra := range extraModules {
|
|
||||||
bp += fmt.Sprintf(`
|
|
||||||
java_library {
|
|
||||||
name: "%s",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
no_standard_libs: true,
|
|
||||||
sdk_version: "core_current",
|
|
||||||
system_modules: "core-platform-api-stubs-system-modules",
|
|
||||||
}
|
|
||||||
`, extra)
|
|
||||||
}
|
|
||||||
|
|
||||||
bp += `
|
|
||||||
android_app {
|
|
||||||
name: "framework-res",
|
|
||||||
no_framework_libs: true,
|
|
||||||
}
|
|
||||||
`
|
|
||||||
|
|
||||||
systemModules := []string{
|
|
||||||
"core-system-modules",
|
|
||||||
"core-platform-api-stubs-system-modules",
|
|
||||||
"android_stubs_current_system_modules",
|
|
||||||
"android_system_stubs_current_system_modules",
|
|
||||||
"android_test_stubs_current_system_modules",
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, extra := range systemModules {
|
|
||||||
bp += fmt.Sprintf(`
|
|
||||||
java_system_modules {
|
|
||||||
name: "%s",
|
|
||||||
}
|
|
||||||
`, extra)
|
|
||||||
}
|
|
||||||
|
|
||||||
bp += cc.GatherRequiredDepsForTest(android.Android)
|
bp += cc.GatherRequiredDepsForTest(android.Android)
|
||||||
|
|
||||||
mockFS := map[string][]byte{
|
mockFS := map[string][]byte{
|
||||||
@@ -224,16 +176,12 @@ func run(t *testing.T, ctx *android.TestContext, config android.Config) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func testConfig(env map[string]string) android.Config {
|
func testConfig(env map[string]string) android.Config {
|
||||||
if env == nil {
|
config := java.TestConfig(buildDir, env)
|
||||||
env = make(map[string]string)
|
|
||||||
}
|
|
||||||
if env["ANDROID_JAVA8_HOME"] == "" {
|
|
||||||
env["ANDROID_JAVA8_HOME"] = "jdk8"
|
|
||||||
}
|
|
||||||
config := android.TestArchConfig(buildDir, env)
|
|
||||||
config.TestProductVariables.DeviceSystemSdkVersions = []string{"28"}
|
config.TestProductVariables.DeviceSystemSdkVersions = []string{"28"}
|
||||||
config.TestProductVariables.DeviceVndkVersion = proptools.StringPtr("current")
|
config.TestProductVariables.DeviceVndkVersion = proptools.StringPtr("current")
|
||||||
config.TestProductVariables.Platform_vndk_version = proptools.StringPtr("VER")
|
config.TestProductVariables.Platform_vndk_version = proptools.StringPtr("VER")
|
||||||
|
|
||||||
return config
|
return config
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user