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

Commit e3781521 authored by Mars Lin's avatar Mars Lin
Browse files

Mock the flag for DSRMData test

Mock the feature flags for DSRMData test

Bug: 327004919
Test: atest FrameworksTelephonyTests:DataStallRecoveryManagerTest
Change-Id: Ia5f8837c90307f497466dee662944eea9533ef9e
parent 4efcf7cf
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -921,7 +921,7 @@ public class DataNetworkController extends Handler {
                            }
                        });
        mDataStallRecoveryManager = new DataStallRecoveryManager(mPhone, this, mDataServiceManagers
                .get(AccessNetworkConstants.TRANSPORT_TYPE_WWAN), looper,
                .get(AccessNetworkConstants.TRANSPORT_TYPE_WWAN), mFeatureFlags, looper,
                new DataStallRecoveryManagerCallback(this::post) {
                    @Override
                    public void onDataStallReestablishInternet() {
+5 −3
Original line number Diff line number Diff line
@@ -49,7 +49,6 @@ import com.android.internal.telephony.data.DataConfigManager.DataConfigManagerCa
import com.android.internal.telephony.data.DataNetworkController.DataNetworkControllerCallback;
import com.android.internal.telephony.data.DataSettingsManager.DataSettingsManagerCallback;
import com.android.internal.telephony.flags.FeatureFlags;
import com.android.internal.telephony.flags.FeatureFlagsImpl;
import com.android.internal.telephony.metrics.DataStallRecoveryStats;
import com.android.internal.telephony.metrics.TelephonyMetrics;
import com.android.telephony.Rlog;
@@ -155,7 +154,7 @@ public class DataStallRecoveryManager extends Handler {
    private final @NonNull Phone mPhone;
    private final @NonNull String mLogTag;
    private final @NonNull LocalLog mLocalLog = new LocalLog(128);
    private final @NonNull FeatureFlags mFeatureFlags = new FeatureFlagsImpl();
    private final @NonNull FeatureFlags mFeatureFlags;

    /** Data network controller */
    private final @NonNull DataNetworkController mDataNetworkController;
@@ -259,6 +258,7 @@ public class DataStallRecoveryManager extends Handler {
     * @param phone The phone instance.
     * @param dataNetworkController Data network controller
     * @param dataServiceManager The WWAN data service manager.
     * @param featureFlags The feature flag.
     * @param looper The looper to be used by the handler. Currently the handler thread is the phone
     *     process's main thread.
     * @param callback Callback to notify data network controller for data stall events.
@@ -267,6 +267,7 @@ public class DataStallRecoveryManager extends Handler {
            @NonNull Phone phone,
            @NonNull DataNetworkController dataNetworkController,
            @NonNull DataServiceManager dataServiceManager,
            @NonNull FeatureFlags featureFlags,
            @NonNull Looper looper,
            @NonNull DataStallRecoveryManagerCallback callback) {
        super(looper);
@@ -275,6 +276,7 @@ public class DataStallRecoveryManager extends Handler {
        log("DataStallRecoveryManager created.");
        mDataNetworkController = dataNetworkController;
        mWwanDataServiceManager = dataServiceManager;
        mFeatureFlags = featureFlags;
        mDataConfigManager = mDataNetworkController.getDataConfigManager();
        mDataNetworkController
                .getDataSettingsManager()
@@ -294,7 +296,7 @@ public class DataStallRecoveryManager extends Handler {

        registerAllEvents();

        mStats = new DataStallRecoveryStats(mPhone, dataNetworkController);
        mStats = new DataStallRecoveryStats(mPhone, mFeatureFlags, dataNetworkController);
    }

    /** Register for all events that data stall monitor is interested. */
+5 −3
Original line number Diff line number Diff line
@@ -55,7 +55,6 @@ import com.android.internal.telephony.data.DataNetworkController;
import com.android.internal.telephony.data.DataNetworkController.DataNetworkControllerCallback;
import com.android.internal.telephony.data.DataStallRecoveryManager;
import com.android.internal.telephony.flags.FeatureFlags;
import com.android.internal.telephony.flags.FeatureFlagsImpl;
import com.android.internal.telephony.subscription.SubscriptionInfoInternal;
import com.android.internal.telephony.subscription.SubscriptionManagerService;
import com.android.telephony.Rlog;
@@ -87,7 +86,7 @@ public class DataStallRecoveryStats {
    private final @NonNull String mTag;
    private final @NonNull Phone mPhone;
    private final @NonNull TelephonyManager mTelephonyManager;
    private final @NonNull FeatureFlags mFeatureFlags = new FeatureFlagsImpl();
    private final @NonNull FeatureFlags mFeatureFlags;

    // Flag to control the DSRS diagnostics
    private final boolean mIsDsrsDiagnosticsEnabled;
@@ -136,10 +135,13 @@ public class DataStallRecoveryStats {
    /**
     * Constructs a new instance of {@link DataStallRecoveryStats}.
     */
    public DataStallRecoveryStats(@NonNull final Phone phone,
    public DataStallRecoveryStats(
            @NonNull final Phone phone,
            @NonNull FeatureFlags featureFlags,
            @NonNull final DataNetworkController dataNetworkController) {
        mTag = TAG + phone.getPhoneId();
        mPhone = phone;
        mFeatureFlags = featureFlags;

        HandlerThread handlerThread = new HandlerThread(mTag + "-thread");
        handlerThread.start();
+2 −0
Original line number Diff line number Diff line
@@ -91,6 +91,7 @@ public class DataStallRecoveryManagerTest extends TelephonyTest {
        Field field = DataStallRecoveryManager.class.getDeclaredField("mPredictWaitingMillis");
        field.setAccessible(true);

        doReturn(true).when(mFeatureFlags).dsrsDiagnosticsEnabled();
        mFakeContentResolver = new FakeContentResolver();
        doReturn(mFakeContentResolver).when(mContext).getContentResolver();
        // Set the global settings for action enabled state and duration to
@@ -122,6 +123,7 @@ public class DataStallRecoveryManagerTest extends TelephonyTest {
                        mPhone,
                        mDataNetworkController,
                        mMockedWwanDataServiceManager,
                        mFeatureFlags,
                        mTestableLooper.getLooper(),
                        mDataStallRecoveryManagerCallback);