diff options
-rw-r--r-- | test-mock/Android.mk | 87 | ||||
-rw-r--r-- | test-mock/api/android-test-mock-system-current.txt | 38 | ||||
-rw-r--r-- | test-mock/api/android-test-mock-system-removed.txt | 0 | ||||
-rw-r--r-- | test-mock/api/apicheck_msg_android_test_mock-system.txt | 17 |
4 files changed, 142 insertions, 0 deletions
diff --git a/test-mock/Android.mk b/test-mock/Android.mk index 04c242cc8ae2..7926a77ccb01 100644 --- a/test-mock/Android.mk +++ b/test-mock/Android.mk @@ -111,4 +111,91 @@ update-android-test-mock-api: $(ANDROID_TEST_MOCK_OUTPUT_API_FILE) | $(ACP) @echo Copying removed.txt $(hide) $(ACP) $(ANDROID_TEST_MOCK_OUTPUT_REMOVED_API_FILE) $(ANDROID_TEST_MOCK_REMOVED_API_FILE) +# Generate the stub source files for android.test.mock.stubs-system +# ================================================================= +include $(CLEAR_VARS) +LOCAL_SRC_FILES := $(android_test_mock_source_files) + +LOCAL_JAVA_LIBRARIES := core-oj core-libart framework +LOCAL_MODULE_CLASS := JAVA_LIBRARIES +LOCAL_DROIDDOC_SOURCE_PATH := $(LOCAL_PATH)/src/android/test/mock + +ANDROID_TEST_MOCK_SYSTEM_OUTPUT_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android.test.mock.stubs-system_intermediates/api.txt +ANDROID_TEST_MOCK_SYSTEM_OUTPUT_REMOVED_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android.test.mock.stubs-system_intermediates/removed.txt + +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 + +LOCAL_DROIDDOC_OPTIONS:= \ + -stubpackages android.test.mock \ + -stubs $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android.test.mock.stubs-system_intermediates/src \ + -nodocs \ + -showAnnotation android.annotation.SystemApi \ + -api $(ANDROID_TEST_MOCK_SYSTEM_OUTPUT_API_FILE) \ + -removedApi $(ANDROID_TEST_MOCK_SYSTEM_OUTPUT_REMOVED_API_FILE) \ + +LOCAL_UNINSTALLABLE_MODULE := true +LOCAL_MODULE := android-test-mock-system-api-stubs-gen + +include $(BUILD_DROIDDOC) + +# Remember the target that will trigger the code generation. +android_test_mock_system_gen_stamp := $(full_target) + +# Add some additional dependencies +$(ANDROID_TEST_MOCK_SYSTEM_OUTPUT_API_FILE): $(full_target) +$(ANDROID_TEST_MOCK_SYSTEM_OUTPUT_REMOVED_API_FILE): $(full_target) + +# Build the android.test.mock.stubs-system library +# ================================================ +include $(CLEAR_VARS) + +LOCAL_MODULE := android.test.mock.stubs-system + +LOCAL_SOURCE_FILES_ALL_GENERATED := true + +# Make sure to run droiddoc first to generate the stub source files. +LOCAL_ADDITIONAL_DEPENDENCIES := $(android_test_mock_system_gen_stamp) +android_test_mock_system_gen_stamp := + +LOCAL_SDK_VERSION := system_current + +include $(BUILD_STATIC_JAVA_LIBRARY) + +# Archive a copy of the classes.jar in SDK build. +$(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 +# ===================================================================== + +# 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), \ + $(ANDROID_TEST_MOCK_SYSTEM_OUTPUT_API_FILE), \ + $(ANDROID_TEST_MOCK_SYSTEM_REMOVED_API_FILE), \ + $(ANDROID_TEST_MOCK_SYSTEM_OUTPUT_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, \ + $(call doc-timestamp-for,android-test-mock-system-api-stubs-gen) \ + )) + +.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: $(ANDROID_TEST_MOCK_SYSTEM_OUTPUT_API_FILE) | $(ACP) + @echo Copying current.txt + $(hide) $(ACP) $(ANDROID_TEST_MOCK_SYSTEM_OUTPUT_API_FILE) $(ANDROID_TEST_MOCK_SYSTEM_API_FILE) + @echo Copying removed.txt + $(hide) $(ACP) $(ANDROID_TEST_MOCK_SYSTEM_OUTPUT_REMOVED_API_FILE) $(ANDROID_TEST_MOCK_SYSTEM_REMOVED_API_FILE) + endif # not TARGET_BUILD_APPS not TARGET_BUILD_PDK=true + diff --git a/test-mock/api/android-test-mock-system-current.txt b/test-mock/api/android-test-mock-system-current.txt new file mode 100644 index 000000000000..20401a50b6a2 --- /dev/null +++ b/test-mock/api/android-test-mock-system-current.txt @@ -0,0 +1,38 @@ +package android.test.mock { + + public class MockContext extends android.content.Context { + method public android.content.Context createCredentialProtectedStorageContext(); + method public java.io.File getPreloadsFileCache(); + method public boolean isCredentialProtectedStorage(); + method public void sendBroadcast(android.content.Intent, java.lang.String, android.os.Bundle); + method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, android.os.Bundle); + method public void sendOrderedBroadcast(android.content.Intent, java.lang.String, android.os.Bundle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle); + } + + public deprecated class MockPackageManager extends android.content.pm.PackageManager { + method public void addOnPermissionsChangeListener(android.content.pm.PackageManager.OnPermissionsChangedListener); + method public java.util.List<android.content.IntentFilter> getAllIntentFilters(java.lang.String); + method public java.lang.String getDefaultBrowserPackageNameAsUser(int); + method public java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int); + method public android.graphics.drawable.Drawable getInstantAppIcon(java.lang.String); + method public android.content.ComponentName getInstantAppInstallerComponent(); + method public android.content.ComponentName getInstantAppResolverSettingsComponent(); + method public java.util.List<android.content.pm.InstantAppInfo> getInstantApps(); + method public java.util.List<android.content.pm.IntentFilterVerificationInfo> getIntentFilterVerifications(java.lang.String); + method public int getIntentVerificationStatusAsUser(java.lang.String, int); + method public int getPermissionFlags(java.lang.String, java.lang.String, android.os.UserHandle); + method public void grantRuntimePermission(java.lang.String, java.lang.String, android.os.UserHandle); + method public int installExistingPackage(java.lang.String) throws android.content.pm.PackageManager.NameNotFoundException; + method public int installExistingPackage(java.lang.String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method public void registerDexModule(java.lang.String, android.content.pm.PackageManager.DexModuleRegisterCallback); + method public void removeOnPermissionsChangeListener(android.content.pm.PackageManager.OnPermissionsChangedListener); + method public void revokeRuntimePermission(java.lang.String, java.lang.String, android.os.UserHandle); + method public boolean setDefaultBrowserPackageNameAsUser(java.lang.String, int); + method public void setUpdateAvailable(java.lang.String, boolean); + method public boolean updateIntentVerificationStatusAsUser(java.lang.String, int, int); + method public void updatePermissionFlags(java.lang.String, java.lang.String, int, int, android.os.UserHandle); + method public void verifyIntentFilter(int, int, java.util.List<java.lang.String>); + } + +} + diff --git a/test-mock/api/android-test-mock-system-removed.txt b/test-mock/api/android-test-mock-system-removed.txt new file mode 100644 index 000000000000..e69de29bb2d1 --- /dev/null +++ b/test-mock/api/android-test-mock-system-removed.txt diff --git a/test-mock/api/apicheck_msg_android_test_mock-system.txt b/test-mock/api/apicheck_msg_android_test_mock-system.txt new file mode 100644 index 000000000000..3a97117f3ea1 --- /dev/null +++ b/test-mock/api/apicheck_msg_android_test_mock-system.txt @@ -0,0 +1,17 @@ + +****************************** +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. +****************************** + + + |