@Test @Config(minSdk = android.os.Build.VERSION_CODES.P) public void getPackageSetting_nonExistentPackage_shouldReturnNull() { assertThat(shadowPackageManager.getPackageSetting(TEST_PACKAGE_NAME)).isNull(); }
@Test @Config(minSdk = android.os.Build.VERSION_CODES.P) public void getPackageSetting_removedPackage_shouldReturnNull() { shadowPackageManager.installPackage(createPackageInfoWithPackageName(TEST_PACKAGE_NAME)); shadowPackageManager.removePackage(TEST_PACKAGE_NAME); assertThat(shadowPackageManager.getPackageSetting(TEST_PACKAGE_NAME)).isNull(); }
@Test @Config(minSdk = android.os.Build.VERSION_CODES.P) public void getPackageSetting_installedNeverSuspendedPackage_shouldReturnUnsuspendedSetting() { shadowPackageManager.installPackage(createPackageInfoWithPackageName(TEST_PACKAGE_NAME)); PackageSetting setting = shadowPackageManager.getPackageSetting(TEST_PACKAGE_NAME); assertThat(setting.isSuspended()).isFalse(); assertThat(setting.getDialogMessage()).isNull(); assertThat(setting.getSuspendedAppExtras()).isNull(); assertThat(setting.getSuspendedLauncherExtras()).isNull(); }
@Test @Config(minSdk = android.os.Build.VERSION_CODES.P) public void getPackageSetting_installedUnsuspendedPackage_shouldReturnUnsuspendedSetting() { shadowPackageManager.installPackage(createPackageInfoWithPackageName(TEST_PACKAGE_NAME)); PersistableBundle appExtras = new PersistableBundle(); appExtras.putString("key", "value"); PersistableBundle launcherExtras = new PersistableBundle(); launcherExtras.putInt("number", 7); setPackagesSuspended( new String[] {TEST_PACKAGE_NAME}, true, appExtras, launcherExtras, "Dialog message"); setPackagesSuspended( new String[] {TEST_PACKAGE_NAME}, false, appExtras, launcherExtras, "Dialog message"); PackageSetting setting = shadowPackageManager.getPackageSetting(TEST_PACKAGE_NAME); assertThat(setting.isSuspended()).isFalse(); assertThat(setting.getDialogMessage()).isNull(); assertThat(setting.getSuspendedAppExtras()).isNull(); assertThat(setting.getSuspendedLauncherExtras()).isNull(); }
@Test @Config(minSdk = android.os.Build.VERSION_CODES.P) public void getPackageSetting_installedSuspendedPackage_shouldReturnSuspendedSetting() { shadowPackageManager.installPackage(createPackageInfoWithPackageName(TEST_PACKAGE_NAME)); PersistableBundle appExtras = new PersistableBundle(); appExtras.putString("key", "value"); PersistableBundle launcherExtras = new PersistableBundle(); launcherExtras.putInt("number", 7); setPackagesSuspended( new String[] {TEST_PACKAGE_NAME}, true, appExtras, launcherExtras, "Dialog message"); PackageSetting setting = shadowPackageManager.getPackageSetting(TEST_PACKAGE_NAME); assertThat(setting.isSuspended()).isTrue(); assertThat(setting.getDialogMessage()).isEqualTo("Dialog message"); assertThat(setting.getSuspendedAppExtras().getString("key")).isEqualTo("value"); assertThat(setting.getSuspendedLauncherExtras().getInt("number")).isEqualTo(7); }