diff --git a/runner/rules/CHANGELOG.md b/runner/rules/CHANGELOG.md index aa629707d..d518b1bec 100644 --- a/runner/rules/CHANGELOG.md +++ b/runner/rules/CHANGELOG.md @@ -15,6 +15,8 @@ **API Changes** +* `GrantPermissionRule` now has a method `#grantImmediately` to grant permissions without going through the `TestRule` infrastructure. + **Breaking API Changes** **Known Issues** diff --git a/runner/rules/java/androidx/test/rule/GrantPermissionRule.java b/runner/rules/java/androidx/test/rule/GrantPermissionRule.java index 1957edb3b..63d7c9149 100644 --- a/runner/rules/java/androidx/test/rule/GrantPermissionRule.java +++ b/runner/rules/java/androidx/test/rule/GrantPermissionRule.java @@ -113,6 +113,12 @@ public static GrantPermissionRule grant(String... permissions) { return grantPermissionRule; } + public static void grantImmediately(String... permissions) { + GrantPermissionRule grantPermissionRule = new GrantPermissionRule(); + grantPermissionRule.grantPermissions(permissions); + grantPermissionRule.permissionGranter.requestPermissions(); + } + private void grantPermissions(String... permissions) { Set permissionSet = satisfyPermissionDependencies(permissions); permissionGranter.addPermissions(permissionSet.toArray(new String[permissionSet.size()]));