[Multi-user] Fix BackupManagerServiceTest checkstyle

Similar to ag/5541540, fix the BMS test for the checkstyle preupload
hook since it will complain when we migrate BMS -> UBMS.

This does not change any test functionality, only adds javadocs.

Bug: 118520567
Test: atest BackupManagerServiceTest
Change-Id: I71800b13f2ef45d3533bedd9878761b0e6c61f0f
diff --git a/services/robotests/src/com/android/server/backup/BackupManagerServiceTest.java b/services/robotests/src/com/android/server/backup/BackupManagerServiceTest.java
index c4cb593..25d1cc7 100644
--- a/services/robotests/src/com/android/server/backup/BackupManagerServiceTest.java
+++ b/services/robotests/src/com/android/server/backup/BackupManagerServiceTest.java
@@ -11,7 +11,7 @@
  * 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
+ * limitations under the License.
  */
 
 package com.android.server.backup;
@@ -75,6 +75,7 @@
 import java.io.File;
 import java.util.List;
 
+/** Tests for the system service {@link BackupManagerService} that performs backup/restore. */
 @RunWith(RobolectricTestRunner.class)
 @Config(shadows = {ShadowAppBackupUtils.class})
 @Presubmit
@@ -94,6 +95,10 @@
     private String mTransportName;
     private ShadowPackageManager mShadowPackageManager;
 
+    /**
+     * Initialize state that {@link BackupManagerService} operations interact with. This includes
+     * setting up the transport, starting the backup thread, and creating backup data directories.
+     */
     @Before
     public void setUp() throws Exception {
         MockitoAnnotations.initMocks(this);
@@ -119,12 +124,20 @@
         mDataDir = new File(cacheDir, "data");
     }
 
+    /**
+     * Clean up and reset state that was created for testing {@link BackupManagerService}
+     * operations.
+     */
     @After
     public void tearDown() throws Exception {
         mBackupThread.quit();
         ShadowAppBackupUtils.reset();
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#MORE_DEBUG} is set to {@code false}. This is
+     * specifically to prevent overloading the logs in production.
+     */
     @Test
     public void testMoreDebug_isFalse() throws Exception {
         boolean moreDebug = BackupManagerService.MORE_DEBUG;
@@ -132,8 +145,10 @@
         assertThat(moreDebug).isFalse();
     }
 
-    /* Tests for destination string */
-
+    /**
+     * Test verifying that {@link BackupManagerService#getDestinationString(String)} returns the
+     * current destination string of inputted transport if the transport is registered.
+     */
     @Test
     public void testDestinationString() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -146,6 +161,10 @@
         assertThat(destination).isEqualTo("destinationString");
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#getDestinationString(String)} returns {@code
+     * null} if the inputted transport is not registered.
+     */
     @Test
     public void testDestinationString_whenTransportNotRegistered() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -158,6 +177,10 @@
         assertThat(destination).isNull();
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#getDestinationString(String)} throws a {@link
+     * SecurityException} if the caller does not have backup permission.
+     */
     @Test
     public void testDestinationString_withoutPermission() throws Exception {
         mShadowContext.denyPermissions(android.Manifest.permission.BACKUP);
@@ -170,8 +193,10 @@
                 () -> backupManagerService.getDestinationString(mTransportName));
     }
 
-    /* Tests for app eligibility */
-
+    /**
+     * Test verifying that {@link BackupManagerService#isAppEligibleForBackup(String)} returns
+     * {@code false} when the given app is not eligible for backup.
+     */
     @Test
     public void testIsAppEligibleForBackup_whenAppNotEligible() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -183,6 +208,10 @@
         assertThat(result).isFalse();
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#isAppEligibleForBackup(String)} returns
+     * {@code true} when the given app is eligible for backup.
+     */
     @Test
     public void testIsAppEligibleForBackup_whenAppEligible() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -197,6 +226,10 @@
                 .disposeOfTransportClient(eq(transportMock.transportClient), any());
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#isAppEligibleForBackup(String)} throws a
+     * {@link SecurityException} if the caller does not have backup permission.
+     */
     @Test
     public void testIsAppEligibleForBackup_withoutPermission() throws Exception {
         mShadowContext.denyPermissions(android.Manifest.permission.BACKUP);
@@ -209,6 +242,11 @@
                 () -> backupManagerService.isAppEligibleForBackup(PACKAGE_1));
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#filterAppsEligibleForBackup(String[])}
+     * returns an {@code array} of only apps that are eligible for backup from an {@array} of
+     * inputted apps.
+     */
     @Test
     public void testFilterAppsEligibleForBackup() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -225,6 +263,10 @@
                 .disposeOfTransportClient(eq(transportMock.transportClient), any());
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#filterAppsEligibleForBackup(String[])}
+     * returns an empty {@code array} if no inputted apps are eligible for backup.
+     */
     @Test
     public void testFilterAppsEligibleForBackup_whenNoneIsEligible() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -237,6 +279,10 @@
         assertThat(filtered).isEmpty();
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#filterAppsEligibleForBackup(String[])} throws
+     * a {@link SecurityException} if the caller does not have backup permission.
+     */
     @Test
     public void testFilterAppsEligibleForBackup_withoutPermission() throws Exception {
         mShadowContext.denyPermissions(android.Manifest.permission.BACKUP);
@@ -270,6 +316,11 @@
                 .thenReturn(mOldTransport.transportName);
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#selectBackupTransport(String)} successfully
+     * switches the current transport to the inputted transport, returns the name of the old
+     * transport, and disposes of the transport client after the operation.
+     */
     @Test
     public void testSelectBackupTransport() throws Exception {
         setUpForSelectTransport();
@@ -285,6 +336,10 @@
                 .disposeOfTransportClient(eq(mNewTransportMock.transportClient), any());
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#selectBackupTransport(String)} throws a
+     * {@link SecurityException} if the caller does not have backup permission.
+     */
     @Test
     public void testSelectBackupTransport_withoutPermission() throws Exception {
         setUpForSelectTransport();
@@ -296,6 +351,11 @@
                 () -> backupManagerService.selectBackupTransport(mNewTransport.transportName));
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#selectBackupTransportAsync(ComponentName,
+     * ISelectBackupTransportCallback)} successfully switches the current transport to the inputted
+     * transport and disposes of the transport client after the operation.
+     */
     @Test
     public void testSelectBackupTransportAsync() throws Exception {
         setUpForSelectTransport();
@@ -314,6 +374,12 @@
                 .disposeOfTransportClient(eq(mNewTransportMock.transportClient), any());
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#selectBackupTransportAsync(ComponentName,
+     * ISelectBackupTransportCallback)} does not switch the current transport to the inputted
+     * transport and notifies the inputted callback of failure when it fails to register the
+     * transport.
+     */
     @Test
     public void testSelectBackupTransportAsync_whenRegistrationFails() throws Exception {
         setUpForSelectTransport();
@@ -330,6 +396,11 @@
         verify(callback).onFailure(anyInt());
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#selectBackupTransportAsync(ComponentName,
+     * ISelectBackupTransportCallback)} does not switch the current transport to the inputted
+     * transport and notifies the inputted callback of failure when the transport gets unregistered.
+     */
     @Test
     public void testSelectBackupTransportAsync_whenTransportGetsUnregistered() throws Exception {
         setUpTransports(mTransportManager, mTransport.unregistered());
@@ -347,6 +418,11 @@
         verify(callback).onFailure(anyInt());
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#selectBackupTransportAsync(ComponentName,
+     * ISelectBackupTransportCallback)} throws a {@link SecurityException} if the caller does not
+     * have backup permission.
+     */
     @Test
     public void testSelectBackupTransportAsync_withoutPermission() throws Exception {
         setUpForSelectTransport();
@@ -366,8 +442,10 @@
                 mContext.getContentResolver(), Settings.Secure.BACKUP_TRANSPORT);
     }
 
-    /* Tests for transport attributes */
-
+    /**
+     * Test verifying that {@link BackupManagerService#getCurrentTransportComponent()} returns the
+     * {@link ComponentName} of the currently selected transport.
+     */
     @Test
     public void testGetCurrentTransportComponent() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -380,6 +458,10 @@
         assertThat(transportComponent).isEqualTo(mTransport.getTransportComponent());
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#getCurrentTransportComponent()} returns
+     * {@code null} if there is no currently selected transport.
+     */
     @Test
     public void testGetCurrentTransportComponent_whenNoTransportSelected() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -391,6 +473,10 @@
         assertThat(transportComponent).isNull();
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#getCurrentTransportComponent()} returns
+     * {@code null} if the currently selected transport is not registered.
+     */
     @Test
     public void testGetCurrentTransportComponent_whenTransportNotRegistered() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -403,6 +489,10 @@
         assertThat(transportComponent).isNull();
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#getCurrentTransportComponent()} throws a
+     * {@link SecurityException} if the caller does not have backup permission.
+     */
     @Test
     public void testGetCurrentTransportComponent_withoutPermission() throws Exception {
         mShadowContext.denyPermissions(android.Manifest.permission.BACKUP);
@@ -428,9 +518,14 @@
         mTransportUid = mContext.getPackageManager().getPackageUid(transportPackage, 0);
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#updateTransportAttributes(int, ComponentName,
+     * String, Intent, String, Intent, String)} succeeds if the uid of the transport is same as the
+     * uid of the caller.
+     */
     @Test
     public void
-            testUpdateTransportAttributes_whenTransportUidEqualsToCallingUid_callsThroughToTransportManager()
+            testUpdateTransportAttributes_whenTransportUidEqualsCallingUid_callsTransportManager()
                     throws Exception {
         setUpForUpdateTransportAttributes();
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -457,6 +552,11 @@
                         eq("dataManagementLabel"));
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#updateTransportAttributes(int, ComponentName,
+     * String, Intent, String, Intent, String)} throws a {@link SecurityException} if the uid of the
+     * transport is not equal to the uid of the caller.
+     */
     @Test
     public void testUpdateTransportAttributes_whenTransportUidNotEqualToCallingUid_throwsException()
             throws Exception {
@@ -477,6 +577,11 @@
                                 "dataManagementLabel"));
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#updateTransportAttributes(int, ComponentName,
+     * String, Intent, String, Intent, String)} throws a {@link RuntimeException} if given a {@code
+     * null} transport component.
+     */
     @Test
     public void testUpdateTransportAttributes_whenTransportComponentNull_throwsException()
             throws Exception {
@@ -497,6 +602,11 @@
                                 "dataManagementLabel"));
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#updateTransportAttributes(int, ComponentName,
+     * String, Intent, String, Intent, String)} throws a {@link RuntimeException} if given a {@code
+     * null} transport name.
+     */
     @Test
     public void testUpdateTransportAttributes_whenNameNull_throwsException() throws Exception {
         setUpForUpdateTransportAttributes();
@@ -516,6 +626,11 @@
                                 "dataManagementLabel"));
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#updateTransportAttributes(int, ComponentName,
+     * String, Intent, String, Intent, String)} throws a {@link RuntimeException} if given a {@code
+     * null} destination string.
+     */
     @Test
     public void testUpdateTransportAttributes_whenCurrentDestinationStringNull_throwsException()
             throws Exception {
@@ -536,9 +651,14 @@
                                 "dataManagementLabel"));
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#updateTransportAttributes(int, ComponentName,
+     * String, Intent, String, Intent, String)} throws a {@link RuntimeException} if given either a
+     * {@code null} data management label or {@code null} data management intent, but not both.
+     */
     @Test
     public void
-            testUpdateTransportAttributes_whenDataManagementArgumentsNullityDontMatch_throwsException()
+            testUpdateTransportAttributes_whenDataManagementArgsNullityDontMatch_throwsException()
                     throws Exception {
         setUpForUpdateTransportAttributes();
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -569,6 +689,10 @@
                                 null));
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#updateTransportAttributes(int, ComponentName,
+     * String, Intent, String, Intent, String)} succeeds if the caller has backup permission.
+     */
     @Test
     public void testUpdateTransportAttributes_whenPermissionGranted_callsThroughToTransportManager()
             throws Exception {
@@ -597,6 +721,11 @@
                         eq("dataManagementLabel"));
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#updateTransportAttributes(int, ComponentName,
+     * String, Intent, String, Intent, String)} throws a {@link SecurityException} if the caller
+     * does not have backup permission.
+     */
     @Test
     public void testUpdateTransportAttributes_whenPermissionDenied_throwsSecurityException()
             throws Exception {
@@ -634,6 +763,10 @@
         ShadowKeyValueBackupTask.reset();
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#requestBackup(String[], IBackupObserver,
+     * int)} throws a {@link SecurityException} if the caller does not have backup permission.
+     */
     @Test
     public void testRequestBackup_whenPermissionDenied() throws Exception {
         mShadowContext.denyPermissions(android.Manifest.permission.BACKUP);
@@ -644,6 +777,10 @@
                 () -> backupManagerService.requestBackup(new String[] {PACKAGE_1}, mObserver, 0));
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#requestBackup(String[], IBackupObserver,
+     * int)} throws an {@link IllegalArgumentException} if passed {@null} for packages.
+     */
     @Test
     public void testRequestBackup_whenPackagesNull() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -655,6 +792,11 @@
         verify(mObserver).backupFinished(BackupManager.ERROR_TRANSPORT_ABORTED);
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#requestBackup(String[], IBackupObserver,
+     * int)} throws an {@link IllegalArgumentException} if passed an empty {@code array} for
+     * packages.
+     */
     @Test
     public void testRequestBackup_whenPackagesEmpty() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -666,6 +808,10 @@
         verify(mObserver).backupFinished(BackupManager.ERROR_TRANSPORT_ABORTED);
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#requestBackup(String[], IBackupObserver,
+     * int)} returns {@link BackupManager#ERROR_BACKUP_NOT_ALLOWED} if backup is disabled.
+     */
     @Test
     public void testRequestBackup_whenBackupDisabled() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -678,6 +824,11 @@
         verify(mObserver).backupFinished(BackupManager.ERROR_BACKUP_NOT_ALLOWED);
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#requestBackup(String[], IBackupObserver,
+     * int)} returns {@link BackupManager#ERROR_BACKUP_NOT_ALLOWED} if the system user hasn't gone
+     * through SUW.
+     */
     @Test
     public void testRequestBackup_whenNotProvisioned() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -690,6 +841,11 @@
         verify(mObserver).backupFinished(BackupManager.ERROR_BACKUP_NOT_ALLOWED);
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#requestBackup(String[], IBackupObserver,
+     * int)} returns {@link BackupManager#ERROR_TRANSPORT_ABORTED} if the current transport is not
+     * registered.
+     */
     @Test
     public void testRequestBackup_whenTransportNotRegistered() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -704,6 +860,11 @@
         verify(mObserver).backupFinished(BackupManager.ERROR_TRANSPORT_ABORTED);
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#requestBackup(String[], IBackupObserver,
+     * int)} returns {@link BackupManager#SUCCESS} and notifies the observer of {@link
+     * BackupManager#ERROR_BACKUP_NOT_ALLOWED} if the specified app is not eligible for backup.
+     */
     @Test
     public void testRequestBackup_whenAppNotEligibleForBackup() throws Exception {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -722,6 +883,11 @@
         tearDownForRequestBackup();
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#requestBackup(String[], IBackupObserver,
+     * int)} returns {@link BackupManager#SUCCESS} and updates bookkeeping if backup for a key value
+     * package succeeds.
+     */
     @Test
     @Config(shadows = ShadowKeyValueBackupTask.class)
     public void testRequestBackup_whenPackageIsKeyValue() throws Exception {
@@ -739,6 +905,11 @@
         tearDownForRequestBackup();
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#requestBackup(String[], IBackupObserver,
+     * int)} returns {@link BackupManager#SUCCESS} and updates bookkeeping if backup for a full
+     * backup package succeeds.
+     */
     @Test
     @Config(shadows = ShadowKeyValueBackupTask.class)
     public void testRequestBackup_whenPackageIsFullBackup() throws Exception {
@@ -757,6 +928,10 @@
         tearDownForRequestBackup();
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#backupNow()} clears the calling identity
+     * for scheduling a job and then restores the original calling identity after the operation.
+     */
     @Test
     @Config(shadows = {ShadowBinder.class, ShadowKeyValueBackupJob.class})
     public void testBackupNow_clearsCallingIdentityForJobScheduler() {
@@ -771,6 +946,10 @@
         assertThat(ShadowBinder.getCallingUid()).isEqualTo(1);
     }
 
+    /**
+     * Test verifying that {@link BackupManagerService#backupNow()} restores the original calling
+     * identity if an exception is thrown during execution.
+     */
     @Test
     @Config(shadows = {ShadowBinder.class, ShadowKeyValueBackupJobException.class})
     public void testBackupNow_whenExceptionThrown_restoresCallingIdentity() {
@@ -792,8 +971,11 @@
         return backupManagerService;
     }
 
-    /* Miscellaneous tests */
-
+    /**
+     * Test verifying that {@link BackupManagerService#BackupManagerService(Context, Trampoline,
+     * HandlerThread, File, File, TransportManager)} posts a transport registration task to the
+     * backup handler thread.
+     */
     @Test
     public void testConstructor_postRegisterTransports() {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -804,6 +986,11 @@
         verify(mTransportManager).registerTransports();
     }
 
+    /**
+     * Test verifying that the {@link BackupManagerService#BackupManagerService(Context, Trampoline,
+     * HandlerThread, File, File, TransportManager)} does not directly register transports in its
+     * own thread.
+     */
     @Test
     public void testConstructor_doesNotRegisterTransportsSynchronously() {
         mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
@@ -842,6 +1029,10 @@
      */
     @Implements(KeyValueBackupJob.class)
     public static class ShadowKeyValueBackupJobException extends ShadowKeyValueBackupJob {
+        /**
+         * Implementation of {@link ShadowKeyValueBackupJob#schedule(Context, long,
+         * BackupManagerConstants)} that throws an {@link IllegalArgumentException}.
+         */
         public static void schedule(Context ctx, long delay, BackupManagerConstants constants) {
             ShadowKeyValueBackupJob.schedule(ctx, delay, constants);
             throw new IllegalArgumentException();