Merge "Build android.test.* with java_sdk_library"

This commit is contained in:
Treehugger Robot
2018-09-07 01:01:59 +00:00
committed by Gerrit Code Review
31 changed files with 74 additions and 432 deletions

View File

@@ -1091,7 +1091,7 @@ doc_defaults {
"ext",
"framework",
"voip-common",
"android.test.mock",
"android.test.mock.impl",
],
local_sourcepaths: frameworks_base_subdirs,
html_dirs: [
@@ -1228,7 +1228,7 @@ doc_defaults {
"ext",
"framework",
"voip-common",
"android.test.mock",
"android.test.mock.impl",
],
local_sourcepaths: frameworks_base_subdirs,
installable: false,

View File

@@ -182,11 +182,11 @@
code to link against. -->
<library name="android.test.base"
file="/system/framework/android.test.base.jar" />
file="/system/framework/android.test.base.impl.jar" />
<library name="android.test.mock"
file="/system/framework/android.test.mock.jar" />
file="/system/framework/android.test.mock.impl.jar" />
<library name="android.test.runner"
file="/system/framework/android.test.runner.jar" />
file="/system/framework/android.test.runner.impl.jar" />
<!-- These are the standard packages that are white-listed to always have internet
access while in power save mode, even if they aren't in the foreground. -->

View File

@@ -19,9 +19,8 @@
// This contains the junit.framework and android.test classes that were in
// Android API level 25 excluding those from android.test.runner.
// Also contains the com.android.internal.util.Predicate[s] classes.
java_library {
java_sdk_library {
name: "android.test.base",
installable: true,
srcs: ["src/**/*.java"],
@@ -29,11 +28,38 @@ java_library {
javacflags: ["-Xep:DepAnn:ERROR"],
},
hostdex: true,
api_packages: [
"android.test",
"android.test.suitebuilder.annotation",
"com.android.internal.util",
"junit.framework",
],
droiddoc_options: ["stubsourceonly"],
compile_dex: true,
}
// Build the android.test.base_static library
// ==========================================
// This is only intended for inclusion in the android.test.runner-minus-junit,
// robolectric_android-all-stub and repackaged.android.test.* libraries.
// Must not be used elewhere.
java_library_static {
name: "android.test.base_static",
installable: false,
srcs: ["src/**/*.java"],
errorprone: {
javacflags: ["-Xep:DepAnn:ERROR"],
},
// Needs to be consistent with the repackaged version of this make target.
java_version: "1.8",
sdk_version: "current",
hostdex: true,
}
// Build the legacy-test library
@@ -46,7 +72,7 @@ java_library {
installable: true,
sdk_version: "current",
static_libs: ["android.test.base"],
static_libs: ["android.test.base_static"],
}
// Build the repackaged.android.test.base library
@@ -57,7 +83,7 @@ java_library_static {
name: "repackaged.android.test.base",
sdk_version: "current",
static_libs: ["android.test.base"],
static_libs: ["android.test.base_static"],
jarjar_rules: "jarjar-rules.txt",
// Pin java_version until jarjar is certified to support later versions. http://b/72703434
@@ -84,38 +110,3 @@ java_library_static {
],
}
droiddoc {
name: "android-test-base-api-stubs-gen-docs",
srcs: [
"src/**/*.java",
],
custom_template: "droiddoc-templates-sdk",
installable: false,
args: "-stubpackages android.test:" +
"android.test.suitebuilder.annotation:" +
"com.android.internal.util:" +
"junit.framework -stubsourceonly -nodocs",
sdk_version: "current",
api_tag_name: "ANDROID_TEST_BASE",
api_filename: "android-test-base-api.txt",
removed_api_filename: "android-test-base-removed.txt",
}
// Build the android.test.base.stubs library
// =========================================
java_library_static {
name: "android.test.base.stubs",
srcs: [
":android-test-base-api-stubs-gen-docs",
],
product_variables: {
pdk: {
enabled: false,
},
unbundled_build: {
enabled: false,
},
},
sdk_version: "current",
compile_dex: true,
}

View File

@@ -16,50 +16,6 @@
LOCAL_PATH:= $(call my-dir)
# For unbundled build we'll use the prebuilt jar from prebuilts/sdk.
ifeq (,$(TARGET_BUILD_APPS)$(filter true,$(TARGET_BUILD_PDK)))
ANDROID_TEST_BASE_API_FILE := $(LOCAL_PATH)/api/android-test-base-current.txt
ANDROID_TEST_BASE_REMOVED_API_FILE := $(LOCAL_PATH)/api/android-test-base-removed.txt
full_classes_jar := $(call intermediates-dir-for,JAVA_LIBRARIES,android.test.base.stubs,,COMMON)/classes.jar
# Archive a copy of the classes.jar in SDK build.
$(call dist-for-goals,sdk win_sdk,$(full_classes_jar):android.test.base.stubs.jar)
# Check that the android.test.base.stubs library has not changed
# ==============================================================
# Check that the API we're building hasn't changed from the not-yet-released
# SDK version.
$(eval $(call check-api, \
check-android-test-base-api-current, \
$(ANDROID_TEST_BASE_API_FILE), \
$(INTERNAL_PLATFORM_ANDROID_TEST_BASE_API_FILE), \
$(ANDROID_TEST_BASE_REMOVED_API_FILE), \
$(INTERNAL_PLATFORM_ANDROID_TEST_BASE_REMOVED_API_FILE), \
-error 2 -error 3 -error 4 -error 5 -error 6 \
-error 7 -error 8 -error 9 -error 10 -error 11 -error 12 -error 13 -error 14 -error 15 \
-error 16 -error 17 -error 18 -error 19 -error 20 -error 21 -error 23 -error 24 \
-error 25 -error 26 -error 27, \
cat $(LOCAL_PATH)/api/apicheck_msg_android_test_base.txt, \
check-android-test-base-api, \
$(OUT_DOCS)/android-test-base-api-stubs-gen-docs-stubs.srcjar \
))
.PHONY: check-android-test-base-api
checkapi: check-android-test-base-api
.PHONY: update-android-test-base-api
update-api: update-android-test-base-api
update-android-test-base-api: $(INTERNAL_PLATFORM_ANDROID_TEST_BASE_API_FILE) | $(ACP)
@echo Copying current.txt
$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_TEST_BASE_API_FILE) $(ANDROID_TEST_BASE_API_FILE)
@echo Copying removed.txt
$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_TEST_BASE_REMOVED_API_FILE) $(ANDROID_TEST_BASE_REMOVED_API_FILE)
endif # not TARGET_BUILD_APPS not TARGET_BUILD_PDK=true
ifeq ($(HOST_OS),linux)
# Build the legacy-performance-test-hostdex library
# =================================================

View File

@@ -1,17 +0,0 @@
******************************
You have tried to change the API from what has been previously approved.
To make these errors go away, you have two choices:
1) You can add "@hide" javadoc comments to the methods, etc. listed in the
errors above.
2) You can update android-test-base-current.txt by executing the following command:
make update-android-test-base-api
To submit the revised android-test-base-current.txt to the main Android repository,
you will need approval.
******************************

View File

View File

View File

@@ -25,7 +25,7 @@ java_library_static {
static_libs: [
"android.test.base-minus-junit",
"android.test.runner-minus-junit",
"android.test.mock",
"android.test.mock.impl",
],
no_framework_libs: true,

View File

@@ -16,95 +16,15 @@
// Build the android.test.mock library
// ===================================
java_library {
java_sdk_library {
name: "android.test.mock",
installable: true,
java_version: "1.8",
srcs: ["src/**/*.java"],
no_framework_libs: true,
libs: [
"framework",
api_packages: [
"android.test.mock",
],
}
doc_defaults {
name:"android.test.mock.docs-defaults",
srcs: ["src/android/test/mock/**/*.java"],
// Includes the main framework source to ensure that doclava has access to the
// visibility information for the base classes of the mock classes. Without it
// otherwise hidden methods could be visible.
srcs_lib: "framework",
srcs_lib_whitelist_dirs: ["core/java"],
srcs_lib_whitelist_pkgs: ["android"],
libs: [
"core-oj",
"core-libart",
"framework",
"conscrypt",
"okhttp",
"bouncycastle",
"ext",
],
local_sourcepaths: ["src/android/test/mock"],
custom_template: "droiddoc-templates-sdk",
installable: false,
}
android_test_mock_docs_args =
"-hide 110 -hide 111 -hide 113 -hide 121 -hide 125 -hide 126 -hide 127 -hide 128 " +
"-stubpackages android.test.mock " +
"-nodocs "
droiddoc {
name: "android.test.mock.docs",
defaults: ["android.test.mock.docs-defaults"],
api_tag_name: "ANDROID_TEST_MOCK",
api_filename: "api/android-test-mock-current.txt",
removed_api_filename: "api/android-test-mock-removed.txt",
args: android_test_mock_docs_args,
}
droiddoc {
name: "android.test.mock.docs-system",
defaults: ["android.test.mock.docs-defaults"],
api_tag_name: "ANDROID_TEST_MOCK_SYSTEM",
api_filename: "api/android-test-mock-system-current.txt",
removed_api_filename: "api/android-test-mock-system-removed.txt",
args: android_test_mock_docs_args +
"-showAnnotation android.annotation.SystemApi ",
}
java_library_static {
name: "android.test.mock.stubs",
srcs: [":android.test.mock.docs"],
sdk_version: "current",
product_variables: {
unbundled_build: {
// Unbundled apps will use the prebuilt one
// prebuilts/sdk/current
enabled: false,
},
},
compile_dex: true,
}
java_library_static {
name: "android.test.mock.stubs-system",
srcs: [":android.test.mock.docs-system"],
sdk_version: "system_current",
product_variables: {
unbundled_build: {
// Unbundled apps will use the prebuilt one
// prebuilts/sdk/system_current
enabled: false,
},
},
compile_dex: true,
}

View File

@@ -1,93 +0,0 @@
#
# Copyright (C) 2008 The Android Open Source Project
#
# 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.
#
LOCAL_PATH:= $(call my-dir)
# Archive a copy of the classes.jar in SDK build.
full_classes_jar := $(call intermediates-dir-for,JAVA_LIBRARIES,android.test.mock.stubs,,COMMON)/classes.jar
$(call dist-for-goals,sdk win_sdk,$(full_classes_jar):android.test.mock.stubs.jar)
# Check that the android.test.mock.stubs library has not changed
# ==============================================================
ANDROID_TEST_MOCK_API_FILE := $(LOCAL_PATH)/api/android-test-mock-current.txt
ANDROID_TEST_MOCK_REMOVED_API_FILE := $(LOCAL_PATH)/api/android-test-mock-removed.txt
# Check that the API we're building hasn't changed from the not-yet-released
# SDK version.
$(eval $(call check-api, \
check-android-test-mock-api-current, \
$(ANDROID_TEST_MOCK_API_FILE), \
$(INTERNAL_PLATFORM_ANDROID_TEST_MOCK_API_FILE), \
$(ANDROID_TEST_MOCK_REMOVED_API_FILE), \
$(INTERNAL_PLATFORM_ANDROID_TEST_MOCK_REMOVED_API_FILE), \
-error 2 -error 3 -error 4 -error 5 -error 6 \
-error 7 -error 8 -error 9 -error 10 -error 11 -error 12 -error 13 -error 14 -error 15 \
-error 16 -error 17 -error 18 -error 19 -error 20 -error 21 -error 23 -error 24 \
-error 25 -error 26 -error 27, \
cat $(LOCAL_PATH)/api/apicheck_msg_android_test_mock.txt, \
check-android-test-mock-api, \
$(OUT_DOCS)/android.test.mock.docs-stubs.srcjar \
))
.PHONY: check-android-test-mock-api
checkapi: check-android-test-mock-api
.PHONY: update-android-test-mock-api
update-api: update-android-test-mock-api
update-android-test-mock-api: $(INTERNAL_PLATFORM_ANDROID_TEST_MOCK_API_FILE) | $(ACP)
@echo Copying current.txt
$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_TEST_MOCK_API_FILE) $(ANDROID_TEST_MOCK_API_FILE)
@echo Copying removed.txt
$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_TEST_MOCK_REMOVED_API_FILE) $(ANDROID_TEST_MOCK_REMOVED_API_FILE)
# Archive a copy of the classes.jar in SDK build.
full_classes_jar := $(call intermediates-dir-for,JAVA_LIBRARIES,android.test.mock.stubs-system,,COMMON)/classes.jar
$(call dist-for-goals,sdk win_sdk,$(full_classes_jar):android.test.mock.stubs_system.jar)
# Check that the android.test.mock.stubs-system library has not changed
# =====================================================================
ANDROID_TEST_MOCK_SYSTEM_API_FILE := $(LOCAL_PATH)/api/android-test-mock-system-current.txt
ANDROID_TEST_MOCK_SYSTEM_REMOVED_API_FILE := $(LOCAL_PATH)/api/android-test-mock-system-removed.txt
# Check that the API we're building hasn't changed from the not-yet-released
# SDK version.
$(eval $(call check-api, \
check-android-test-mock-system-api-current, \
$(ANDROID_TEST_MOCK_SYSTEM_API_FILE), \
$(INTERNAL_PLATFORM_ANDROID_TEST_MOCK_SYSTEM_API_FILE), \
$(ANDROID_TEST_MOCK_SYSTEM_REMOVED_API_FILE), \
$(INTERNAL_PLATFORM_ANDROID_TEST_MOCK_SYSTEM_REMOVED_API_FILE), \
-error 2 -error 3 -error 4 -error 5 -error 6 \
-error 7 -error 8 -error 9 -error 10 -error 11 -error 12 -error 13 -error 14 -error 15 \
-error 16 -error 17 -error 18 -error 19 -error 20 -error 21 -error 23 -error 24 \
-error 25 -error 26 -error 27, \
cat $(LOCAL_PATH)/api/apicheck_msg_android_test_mock-system.txt, \
check-android-test-mock-system-api, \
$(OUT_DOCS)/android.test.mock.docs-system-stubs.srcjar \
))
.PHONY: check-android-test-mock-system-api
checkapi: check-android-test-mock-system-api
.PHONY: update-android-test-mock-system-api
update-api: update-android-test-mock-system-api
update-android-test-mock-system-api: $(INTERNAL_PLATFORM_ANDROID_TEST_MOCK_SYSTEM_API_FILE) | $(ACP)
@echo Copying current.txt
$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_TEST_MOCK_SYSTEM_API_FILE) $(ANDROID_TEST_MOCK_SYSTEM_API_FILE)
@echo Copying removed.txt
$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_TEST_MOCK_SYSTEM_REMOVED_API_FILE) $(ANDROID_TEST_MOCK_SYSTEM_REMOVED_API_FILE)

View File

@@ -1,17 +0,0 @@
******************************
You have tried to change the API from what has been previously approved.
To make these errors go away, you have two choices:
1) You can add "@hide" javadoc comments to the methods, etc. listed in the
errors above.
2) You can update android-test-mock-current.txt by executing the following command:
make update-android-test-mock-system-api
To submit the revised android-test-mock-system-current.txt to the main Android repository,
you will need approval.
******************************

View File

@@ -1,17 +0,0 @@
******************************
You have tried to change the API from what has been previously approved.
To make these errors go away, you have two choices:
1) You can add "@hide" javadoc comments to the methods, etc. listed in the
errors above.
2) You can update android-test-mock-current.txt by executing the following command:
make update-android-test-mock-api
To submit the revised android-test-mock-current.txt to the main Android repository,
you will need approval.
******************************

View File

View File

@@ -0,0 +1,16 @@
package android.test.mock {
public deprecated class MockPackageManager extends android.content.pm.PackageManager {
method public java.lang.String getDefaultBrowserPackageNameAsUser(int);
method public int getInstallReason(java.lang.String, android.os.UserHandle);
method public java.util.List<android.content.pm.ApplicationInfo> getInstalledApplicationsAsUser(int, int);
method public java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int);
method public java.lang.String[] getNamesForUids(int[]);
method public java.lang.String getPermissionControllerPackageName();
method public java.lang.String getServicesSystemSharedLibraryPackageName();
method public java.lang.String getSharedSystemSharedLibraryPackageName();
method public boolean isPermissionReviewModeEnabled();
}
}

View File

View File

@@ -16,23 +16,32 @@
// Build the android.test.runner library
// =====================================
java_library {
java_sdk_library {
name: "android.test.runner",
installable: true,
// Needs to be consistent with the repackaged version of this make target.
java_version: "1.8",
srcs: ["src/**/*.java"],
errorprone: {
javacflags: ["-Xep:DepAnn:ERROR"],
},
sdk_version: "current",
libs: [
"android.test.base",
"android.test.mock.stubs",
"android.test.mock",
],
stub_only_libs: [
"android.test.base",
"android.test.mock",
],
api_packages: [
"android.test",
"android.test.suitebuilder",
"junit.runner",
"junit.textui",
],
droiddoc_options: ["stubsourceonly"],
compile_dex: true
}
// Build the android.test.runner-minus-junit library
@@ -46,8 +55,8 @@ java_library {
sdk_version: "current",
libs: [
"android.test.base",
"android.test.mock.stubs",
"android.test.base_static",
"android.test.mock",
"junit",
],
}
@@ -70,7 +79,7 @@ java_library_static {
sdk_version: "current",
libs: [
"android.test.base",
"android.test.base_static",
],
jarjar_rules: "jarjar-rules.txt",
@@ -78,48 +87,3 @@ java_library_static {
java_version: "1.8",
}
droiddoc {
name: "android-test-runner-api-stubs-gen-docs",
srcs: [
"src/**/*.java",
],
libs: [
"core-oj",
"core-libart",
"framework",
"android.test.base",
"android.test.mock",
],
custom_template: "droiddoc-templates-sdk",
installable: false,
args: "-stubpackages android.test:" +
"android.test.suitebuilder:" +
"junit.runner:" +
"junit.textui -stubsourceonly -nodocs",
api_tag_name: "ANDROID_TEST_RUNNER",
api_filename: "android-test-runner-current.txt",
removed_api_filename: "android-test-runner-removed.txt",
}
// Build the android.test.runner.stubs library
// =========================================
java_library_static {
name: "android.test.runner.stubs",
srcs: [
":android-test-runner-api-stubs-gen-docs",
],
libs: [
"android.test.base.stubs",
"android.test.mock.stubs",
],
product_variables: {
pdk: {
enabled: false,
},
unbundled_build: {
enabled: false,
},
},
sdk_version: "current",
compile_dex: true,
}

View File

@@ -16,49 +16,5 @@
LOCAL_PATH:= $(call my-dir)
# For unbundled build we'll use the prebuilt jar from prebuilts/sdk.
ifeq (,$(TARGET_BUILD_APPS)$(filter true,$(TARGET_BUILD_PDK)))
ANDROID_TEST_RUNNER_API_FILE := $(LOCAL_PATH)/api/android-test-runner-current.txt
ANDROID_TEST_RUNNER_REMOVED_API_FILE := $(LOCAL_PATH)/api/android-test-runner-removed.txt
full_classes_jar := $(call intermediates-dir-for,JAVA_LIBRARIES,android.test.runner.stubs,,COMMON)/classes.jar
# Archive a copy of the classes.jar in SDK build.
$(call dist-for-goals,sdk win_sdk,$(full_classes_jar):android.test.runner.stubs.jar)
# Check that the android.test.runner.stubs library has not changed
# ================================================================
# Check that the API we're building hasn't changed from the not-yet-released
# SDK version.
$(eval $(call check-api, \
check-android-test-runner-api-current, \
$(ANDROID_TEST_RUNNER_API_FILE), \
$(INTERNAL_PLATFORM_ANDROID_TEST_RUNNER_API_FILE), \
$(ANDROID_TEST_RUNNER_REMOVED_API_FILE), \
$(INTERNAL_PLATFORM_ANDROID_TEST_RUNNER_REMOVED_API_FILE), \
-error 2 -error 3 -error 4 -error 5 -error 6 \
-error 7 -error 8 -error 9 -error 10 -error 11 -error 12 -error 13 -error 14 -error 15 \
-error 16 -error 17 -error 18 -error 19 -error 20 -error 21 -error 23 -error 24 \
-error 25 -error 26 -error 27, \
cat $(LOCAL_PATH)/api/apicheck_msg_android_test_runner.txt, \
check-android-test-runner-api, \
$(OUT_DOCS)/android-test-runner-api-stubs-gen-docs-stubs.srcjar \
))
.PHONY: check-android-test-runner-api
checkapi: check-android-test-runner-api
.PHONY: update-android-test-runner-api
update-api: update-android-test-runner-api
update-android-test-runner-api: $(INTERNAL_PLATFORM_ANDROID_TEST_RUNNER_API_FILE) | $(ACP)
@echo Copying current.txt
$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_TEST_RUNNER_API_FILE) $(ANDROID_TEST_RUNNER_API_FILE)
@echo Copying removed.txt
$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_TEST_RUNNER_REMOVED_API_FILE) $(ANDROID_TEST_RUNNER_REMOVED_API_FILE)
endif # not TARGET_BUILD_APPS not TARGET_BUILD_PDK=true
# additionally, build unit tests in a separate .apk
include $(call all-makefiles-under,$(LOCAL_PATH))

View File

@@ -1,17 +0,0 @@
******************************
You have tried to change the API from what has been previously approved.
To make these errors go away, you have two choices:
1) You can add "@hide" javadoc comments to the methods, etc. listed in the
errors above.
2) You can update android-test-runner-current.txt by executing the following command:
make update-android-test-runner-api
To submit the revised android-test-runner-current.txt to the main Android repository,
you will need approval.
******************************

View File

View File

View File

View File

View File