Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2b195852 authored by Yanting Yang's avatar Yanting Yang Committed by Automerger Merge Worker
Browse files

Merge "Hide the app details preference for mainline module apps" into rvc-dev am: cf33b4bc

Change-Id: I286857cb2b2f65581e23d5abc4eb970004db324e
parents 156ea15b cf33b4bc
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -42,6 +42,11 @@ public class AppInstallerInfoPreferenceController extends AppInfoPreferenceContr
        if (UserManager.get(mContext).isManagedProfile()) {
            return DISABLED_FOR_USER;
        }

        if (AppUtils.isMainlineModule(mContext, mPackageName)) {
            return DISABLED_FOR_USER;
        }

        return mInstallerLabel != null ? AVAILABLE : DISABLED_FOR_USER;
    }

+13 −0
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.content.pm.ApplicationInfo;
import android.content.pm.ModuleInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
@@ -148,4 +149,16 @@ public class AppInstallerInfoPreferenceControllerTest {
        verify(mPreference, never()).setEnabled(false);
        verify(mPreference).setIntent(any(Intent.class));
    }

    @Test
    public void getAvailabilityStatus_isMainlineModule_shouldReturnDisabled()
            throws PackageManager.NameNotFoundException {
        when(mUserManager.isManagedProfile()).thenReturn(false);
        when(mAppInfo.loadLabel(mPackageManager)).thenReturn("Label");
        mController.setPackageName("Package");
        when(mPackageManager.getModuleInfo("Package", 0 /* flags */)).thenReturn(new ModuleInfo());

        assertThat(mController.getAvailabilityStatus()).isEqualTo(
                BasePreferenceController.DISABLED_FOR_USER);
    }
}