diff options
author | Bernardo Rufino <brufino@google.com> | 2019-06-24 11:48:37 +0100 |
---|---|---|
committer | Bernardo Rufino <brufino@google.com> | 2019-08-05 14:35:40 +0100 |
commit | d1df67ef43f64ecbd9ba8ab4bcda492848a471d2 (patch) | |
tree | cfffdfb523c6e148ecb5cf542ea916b028ccdf7b /services/robotests | |
parent | f128bcc47f5bbda87c97160e2294ca6c3c82f33d (diff) |
Eagerly initialize BMS in Trampoline's constructor
After multi-user BMS became a lightweight class as well, so no need to
lazily initialize it. This lays the ground for unifying Trampoline and
BMS.
Test: atest TrampolineTest
Test: adb shell bmgr backupnow <package>
Bug: 135247112
Bug: 135661048
Change-Id: Ia7f69d2ed282c6dfe6443a601f27229d43802fe6
Diffstat (limited to 'services/robotests')
-rw-r--r-- | services/robotests/backup/src/com/android/server/backup/BackupManagerServiceTest.java | 56 |
1 files changed, 51 insertions, 5 deletions
diff --git a/services/robotests/backup/src/com/android/server/backup/BackupManagerServiceTest.java b/services/robotests/backup/src/com/android/server/backup/BackupManagerServiceTest.java index be93d6ba5352..e55c4a677dbc 100644 --- a/services/robotests/backup/src/com/android/server/backup/BackupManagerServiceTest.java +++ b/services/robotests/backup/src/com/android/server/backup/BackupManagerServiceTest.java @@ -26,8 +26,12 @@ import static com.android.server.backup.testing.TransportData.backupTransport; import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.assertEquals; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; +import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.robolectric.Shadows.shadowOf; import static org.testng.Assert.expectThrows; @@ -121,7 +125,7 @@ public class BackupManagerServiceTest { public void testConstructor_doesNotRegisterUsers() throws Exception { BackupManagerService backupManagerService = createService(); - assertThat(backupManagerService.getServiceUsers().size()).isEqualTo(0); + assertThat(backupManagerService.getUserServices().size()).isEqualTo(0); } /** Test that the constructor handles {@code null} parameters. */ @@ -152,7 +156,7 @@ public class BackupManagerServiceTest { backupManagerService.startServiceForUser(mUserOneId); - SparseArray<UserBackupManagerService> serviceUsers = backupManagerService.getServiceUsers(); + SparseArray<UserBackupManagerService> serviceUsers = backupManagerService.getUserServices(); assertThat(serviceUsers.size()).isEqualTo(1); assertThat(serviceUsers.get(mUserOneId)).isNotNull(); } @@ -164,7 +168,7 @@ public class BackupManagerServiceTest { backupManagerService.startServiceForUser(mUserOneId, mUserOneService); - SparseArray<UserBackupManagerService> serviceUsers = backupManagerService.getServiceUsers(); + SparseArray<UserBackupManagerService> serviceUsers = backupManagerService.getUserServices(); assertThat(serviceUsers.size()).isEqualTo(1); assertThat(serviceUsers.get(mUserOneId)).isEqualTo(mUserOneService); } @@ -178,7 +182,7 @@ public class BackupManagerServiceTest { backupManagerService.stopServiceForUser(mUserOneId); - SparseArray<UserBackupManagerService> serviceUsers = backupManagerService.getServiceUsers(); + SparseArray<UserBackupManagerService> serviceUsers = backupManagerService.getUserServices(); assertThat(serviceUsers.size()).isEqualTo(1); assertThat(serviceUsers.get(mUserOneId)).isNull(); assertThat(serviceUsers.get(mUserTwoId)).isEqualTo(mUserTwoService); @@ -204,7 +208,7 @@ public class BackupManagerServiceTest { backupManagerService.stopServiceForUser(mUserOneId); - SparseArray<UserBackupManagerService> serviceUsers = backupManagerService.getServiceUsers(); + SparseArray<UserBackupManagerService> serviceUsers = backupManagerService.getUserServices(); assertThat(serviceUsers.size()).isEqualTo(0); } @@ -1500,6 +1504,48 @@ public class BackupManagerServiceTest { } // --------------------------------------------- + // Lifecycle tests + // --------------------------------------------- + + + /** testOnStart_publishesService */ + @Test + public void testOnStart_publishesService() { + Trampoline trampoline = mock(Trampoline.class); + BackupManagerService.Lifecycle lifecycle = + spy(new BackupManagerService.Lifecycle(mContext, trampoline)); + doNothing().when(lifecycle).publishService(anyString(), any()); + + lifecycle.onStart(); + + verify(lifecycle).publishService(Context.BACKUP_SERVICE, trampoline); + } + + /** testOnUnlockUser_forwards */ + @Test + public void testOnUnlockUser_forwards() { + Trampoline trampoline = mock(Trampoline.class); + BackupManagerService.Lifecycle lifecycle = + new BackupManagerService.Lifecycle(mContext, trampoline); + + lifecycle.onUnlockUser(UserHandle.USER_SYSTEM); + + verify(trampoline).onUnlockUser(UserHandle.USER_SYSTEM); + } + + /** testOnStopUser_forwards */ + @Test + public void testOnStopUser_forwards() { + Trampoline trampoline = mock(Trampoline.class); + BackupManagerService.Lifecycle lifecycle = + new BackupManagerService.Lifecycle(mContext, trampoline); + + lifecycle.onStopUser(UserHandle.USER_SYSTEM); + + verify(trampoline).onStopUser(UserHandle.USER_SYSTEM); + } + + // --------------------------------------------- // Service tests // --------------------------------------------- |