Skip to content

Commit 5c14596

Browse files
authored
Clean up ServiceBindingTest. (#12386)
- Don't store shadows in variables - removing confusing references to uid (these tests are all about Android users, which are different) - remove duplicated logic
1 parent 0567531 commit 5c14596

File tree

1 file changed

+12
-19
lines changed

1 file changed

+12
-19
lines changed

binder/src/test/java/io/grpc/binder/internal/ServiceBindingTest.java

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@
5252
import org.robolectric.RobolectricTestRunner;
5353
import org.robolectric.annotation.Config;
5454
import org.robolectric.shadows.ShadowApplication;
55-
import org.robolectric.shadows.ShadowDevicePolicyManager;
5655

5756
@RunWith(RobolectricTestRunner.class)
5857
public final class ServiceBindingTest {
@@ -365,12 +364,12 @@ public void testBindServiceAsUser_returnsErrorWhenSdkBelowR() {
365364
@Test
366365
@Config(sdk = 28)
367366
public void testDevicePolicyBlind_returnsErrorWhenSdkBelowR() {
368-
String deviceAdminClassName = "DevicePolicyAdmin";
369-
ComponentName adminComponent = new ComponentName(appContext, deviceAdminClassName);
370-
allowBindDeviceAdminForUser(appContext, adminComponent, 10);
367+
ComponentName adminComponent = new ComponentName(appContext, "DevicePolicyAdmin");
368+
UserHandle user10 = generateUserHandle(/* userId= */ 10);
369+
allowBindDeviceAdminForUser(appContext, adminComponent, user10);
371370
binding =
372371
newBuilder()
373-
.setTargetUserHandle(UserHandle.getUserHandleForUid(10))
372+
.setTargetUserHandle(user10)
374373
.setChannelCredentials(BinderChannelCredentials.forDevicePolicyAdmin(adminComponent))
375374
.build();
376375
binding.bind();
@@ -384,13 +383,12 @@ public void testDevicePolicyBlind_returnsErrorWhenSdkBelowR() {
384383
@Test
385384
@Config(sdk = 30)
386385
public void testBindWithDeviceAdmin() throws Exception {
387-
String deviceAdminClassName = "DevicePolicyAdmin";
388-
ComponentName adminComponent = new ComponentName(appContext, deviceAdminClassName);
389-
allowBindDeviceAdminForUser(appContext, adminComponent, /* userId= */ 0);
386+
ComponentName adminComponent = new ComponentName(appContext, "DevicePolicyAdmin");
387+
UserHandle user0 = generateUserHandle(/* userId= */ 0);
388+
allowBindDeviceAdminForUser(appContext, adminComponent, user0);
390389
binding =
391390
newBuilder()
392-
.setTargetUserHandle(UserHandle.getUserHandleForUid(/* uid= */ 0))
393-
.setTargetUserHandle(generateUserHandle(/* userId= */ 0))
391+
.setTargetUserHandle(user0)
394392
.setChannelCredentials(BinderChannelCredentials.forDevicePolicyAdmin(adminComponent))
395393
.build();
396394
shadowOf(getMainLooper()).idle();
@@ -418,15 +416,10 @@ private void assertNoLockHeld() {
418416
}
419417

420418
private static void allowBindDeviceAdminForUser(
421-
Context context, ComponentName admin, int userId) {
422-
ShadowDevicePolicyManager devicePolicyManager =
423-
shadowOf(context.getSystemService(DevicePolicyManager.class));
424-
devicePolicyManager.setDeviceOwner(admin);
425-
devicePolicyManager.setBindDeviceAdminTargetUsers(
426-
Arrays.asList(UserHandle.getUserHandleForUid(userId)));
427-
shadowOf((DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE));
428-
devicePolicyManager.setDeviceOwner(admin);
429-
devicePolicyManager.setBindDeviceAdminTargetUsers(Arrays.asList(generateUserHandle(userId)));
419+
Context context, ComponentName admin, UserHandle user) {
420+
DevicePolicyManager devicePolicyManager = context.getSystemService(DevicePolicyManager.class);
421+
shadowOf(devicePolicyManager).setBindDeviceAdminTargetUsers(Arrays.asList(user));
422+
shadowOf(devicePolicyManager).setDeviceOwner(admin);
430423
}
431424

432425
/** Generate UserHandles the hard way. */

0 commit comments

Comments
 (0)