don't record excluded apps in backup
This commit is contained in:
parent
e54d96d548
commit
4b1c76d585
2 changed files with 26 additions and 0 deletions
|
@ -80,6 +80,7 @@ internal class ApkBackupManager(
|
|||
nm.onAppsNotBackedUp()
|
||||
packageService.notBackedUpPackages.forEach { packageInfo ->
|
||||
val packageName = packageInfo.packageName
|
||||
if (!settingsManager.isBackupEnabled(packageName)) return@forEach
|
||||
try {
|
||||
val packageState = if (packageInfo.isStopped()) WAS_STOPPED else NOT_ALLOWED
|
||||
val packageMetadata = metadataManager.getPackageMetadata(packageName)
|
||||
|
|
|
@ -66,6 +66,7 @@ internal class ApkBackupManagerTest : TransportTest() {
|
|||
fun `Package state of app that is not stopped gets recorded as not-allowed`() = runBlocking {
|
||||
every { nm.onAppsNotBackedUp() } just Runs
|
||||
every { packageService.notBackedUpPackages } returns listOf(packageInfo)
|
||||
every { settingsManager.isBackupEnabled(packageInfo.packageName) } returns true
|
||||
|
||||
expectUploadIcons()
|
||||
|
||||
|
@ -91,6 +92,7 @@ internal class ApkBackupManagerTest : TransportTest() {
|
|||
fun `Package state of app gets recorded even if no previous state`() = runBlocking {
|
||||
every { nm.onAppsNotBackedUp() } just Runs
|
||||
every { packageService.notBackedUpPackages } returns listOf(packageInfo)
|
||||
every { settingsManager.isBackupEnabled(packageInfo.packageName) } returns true
|
||||
|
||||
expectUploadIcons()
|
||||
|
||||
|
@ -122,6 +124,7 @@ internal class ApkBackupManagerTest : TransportTest() {
|
|||
|
||||
every { nm.onAppsNotBackedUp() } just Runs
|
||||
every { packageService.notBackedUpPackages } returns listOf(packageInfo)
|
||||
every { settingsManager.isBackupEnabled(packageInfo.packageName) } returns true
|
||||
|
||||
expectUploadIcons()
|
||||
|
||||
|
@ -147,6 +150,7 @@ internal class ApkBackupManagerTest : TransportTest() {
|
|||
fun `Package state only updated when changed`() = runBlocking {
|
||||
every { nm.onAppsNotBackedUp() } just Runs
|
||||
every { packageService.notBackedUpPackages } returns listOf(packageInfo)
|
||||
every { settingsManager.isBackupEnabled(packageInfo.packageName) } returns true
|
||||
|
||||
expectUploadIcons()
|
||||
|
||||
|
@ -166,6 +170,25 @@ internal class ApkBackupManagerTest : TransportTest() {
|
|||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `Package state only updated if not excluded`() = runBlocking {
|
||||
every { nm.onAppsNotBackedUp() } just Runs
|
||||
every { packageService.notBackedUpPackages } returns listOf(packageInfo)
|
||||
every { settingsManager.isBackupEnabled(packageInfo.packageName) } returns false
|
||||
|
||||
expectUploadIcons()
|
||||
|
||||
every { settingsManager.backupApks() } returns false
|
||||
expectFinalUpload()
|
||||
every { nm.onApkBackupDone() } just Runs
|
||||
|
||||
apkBackupManager.backup()
|
||||
|
||||
verifyAll(inverse = true) {
|
||||
metadataManager.onPackageDoesNotGetBackedUp(packageInfo, NOT_ALLOWED)
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `two packages get backed up, one their APK uploaded`() = runBlocking {
|
||||
val notAllowedPackages = listOf(
|
||||
|
@ -217,6 +240,7 @@ internal class ApkBackupManagerTest : TransportTest() {
|
|||
fun `we keep trying to upload metadata at the end`() = runBlocking {
|
||||
every { nm.onAppsNotBackedUp() } just Runs
|
||||
every { packageService.notBackedUpPackages } returns listOf(packageInfo)
|
||||
every { settingsManager.isBackupEnabled(packageInfo.packageName) } returns true
|
||||
|
||||
expectUploadIcons()
|
||||
|
||||
|
@ -247,6 +271,7 @@ internal class ApkBackupManagerTest : TransportTest() {
|
|||
}
|
||||
|
||||
private suspend fun expectUploadIcons() {
|
||||
every { settingsManager.getToken() } returns token
|
||||
val stream = ByteArrayOutputStream()
|
||||
coEvery { plugin.getOutputStream(token, FILE_BACKUP_ICONS) } returns stream
|
||||
every { iconManager.uploadIcons(token, stream) } just Runs
|
||||
|
|
Loading…
Reference in a new issue