diff options
| author | Remi NGUYEN VAN <reminv@google.com> | 2020-03-19 14:53:35 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-03-19 14:53:35 +0000 |
| commit | 23b888f92cbcc7eaad4cff677d11a488d00ad2ca (patch) | |
| tree | 7df8f039277ccc586643d869dbbbeb53570865cb /core/java | |
| parent | 5165c12a4a965e9c161fbb529f13072e9cafd338 (diff) | |
| parent | fc9119df29f67d70c887a67e08ea510d48b5a124 (diff) | |
Merge "Add a test API for testing NetworkStack.getService" into rvc-dev
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/net/NetworkStack.java | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/core/java/android/net/NetworkStack.java b/core/java/android/net/NetworkStack.java index a6d52d133ce9..86f3dfd412f6 100644 --- a/core/java/android/net/NetworkStack.java +++ b/core/java/android/net/NetworkStack.java @@ -45,6 +45,9 @@ public class NetworkStack { public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK"; + @Nullable + private static volatile IBinder sMockService; + /** * Get an {@link IBinder} representing the NetworkStack stable AIDL Interface, if registered. * @hide @@ -53,9 +56,23 @@ public class NetworkStack { @SystemApi @TestApi public static IBinder getService() { + final IBinder mockService = sMockService; + if (mockService != null) return mockService; return ServiceManager.getService(Context.NETWORK_STACK_SERVICE); } + /** + * Set a mock service for testing, to be returned by future calls to {@link #getService()}. + * + * <p>Passing a {@code null} {@code mockService} resets {@link #getService()} to normal + * behavior. + * @hide + */ + @TestApi + public static void setServiceForTest(@Nullable IBinder mockService) { + sMockService = mockService; + } + private NetworkStack() {} /** |
