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

Commit f5fd5c49 authored by Doris Ling's avatar Doris Ling
Browse files

Add feature flag check for mainline module version.

- in about phone settings, only show the mainline module version if the
feature is enabled.

Bug: 122615240
Test: make RunSettingsRoboTests
Change-Id: If872859755dade7e601a47eb387d10c3b247d06e
parent 1cf1d9b6
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -28,4 +28,5 @@ public class FeatureFlags {
    public static final String NETWORK_INTERNET_V2 = "settings_network_and_internet_v2";
    public static final String WIFI_SHARING = "settings_wifi_sharing";
    public static final String SLICE_INJECTION = "settings_slice_injection";
    public static final String MAINLINE_MODULE = "settings_mainline_module";
}
+7 −0
Original line number Diff line number Diff line
@@ -19,9 +19,11 @@ package com.android.settings.deviceinfo.firmwareversion;
import android.content.Context;
import android.content.pm.PackageManager;
import android.text.TextUtils;
import android.util.FeatureFlagUtils;
import android.util.Log;

import com.android.settings.R;
import com.android.settings.core.FeatureFlags;

import androidx.annotation.VisibleForTesting;

@@ -48,6 +50,11 @@ public class ModuleVersionDialogController {
     * Updates the mainline module version field of the dialog.
     */
    public void initialize() {
        if (!FeatureFlagUtils.isEnabled(mContext, FeatureFlags.MAINLINE_MODULE)) {
            mDialog.removeSettingFromScreen(MODULE_VERSION_LABEL_ID);
            mDialog.removeSettingFromScreen(MODULE_VERSION_VALUE_ID);
            return;
        }
        final String moduleProvider = mContext.getString(
            com.android.internal.R.string.config_defaultModuleMetadataProvider);
        if (!TextUtils.isEmpty(moduleProvider)) {
+14 −0
Original line number Diff line number Diff line
@@ -25,6 +25,9 @@ import static org.mockito.Mockito.when;
import android.content.Context;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.util.FeatureFlagUtils;

import com.android.settings.core.FeatureFlags;

import org.junit.Before;
import org.junit.Test;
@@ -52,6 +55,17 @@ public class ModuleVersionDialogControllerTest {
        when(mDialog.getContext()).thenReturn(mContext);
        when(mContext.getPackageManager()).thenReturn(mPackageManager);
        mController = new ModuleVersionDialogController(mDialog);
        FeatureFlagUtils.setEnabled(mContext, FeatureFlags.MAINLINE_MODULE, true);
    }

    @Test
    public void initialize_featureDisabled_shouldRemoveSettingFromDialog() {
        FeatureFlagUtils.setEnabled(mContext, FeatureFlags.MAINLINE_MODULE, false);

        mController.initialize();

        verify(mDialog).removeSettingFromScreen(mController.MODULE_VERSION_LABEL_ID);
        verify(mDialog).removeSettingFromScreen(mController.MODULE_VERSION_VALUE_ID);
    }

    @Test