Clean up WifiDataUsageSummaryPreferenceController

Which is legacy and not finished implemented.

Bug: 295260929
Test: unit test
Test: robo test
Test: manual - on Mobile Settings page
Test: manual - on Network details page
Change-Id: I30ac639c1ba285a74038d5413b63e2c31c6cc8ba
This commit is contained in:
Chaohui Wang
2023-09-06 16:14:42 +08:00
parent 9e571e55cf
commit 4b686147b6
11 changed files with 44 additions and 590 deletions

View File

@@ -16,21 +16,16 @@
package com.android.settings.datausage;
import static android.content.pm.PackageManager.FEATURE_WIFI;
import static com.android.settings.core.BasePreferenceController.AVAILABLE;
import static com.android.settings.core.BasePreferenceController.CONDITIONALLY_UNAVAILABLE;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.NetworkTemplate;
import android.telephony.SubscriptionInfo;
@@ -128,7 +123,6 @@ public class DataUsageSummaryPreferenceControllerTest {
doReturn(mTelephonyManager).when(mTelephonyManager)
.createForSubscriptionId(mDefaultSubscriptionId);
doReturn(mPm).when(mActivity).getPackageManager();
doReturn(false).when(mPm).hasSystemFeature(eq(FEATURE_WIFI));
doReturn(TelephonyManager.SIM_STATE_READY).when(mTelephonyManager).getSimState();
mController = spy(new DataUsageSummaryPreferenceController(
@@ -156,12 +150,9 @@ public class DataUsageSummaryPreferenceControllerTest {
final long now = System.currentTimeMillis();
final DataUsageController.DataUsageInfo info = createTestDataUsageInfo(now);
final Intent intent = new Intent();
doReturn(info).when(mDataUsageController).getDataUsageInfo(any());
setupTestDataUsage(LIMIT1, USAGE1, now - UPDATE_BACKOFF_MS);
createTestDataPlan(info.cycleStart, info.cycleEnd);
doReturn(intent).when(mController).createManageSubscriptionIntent(mDefaultSubscriptionId);
mController.updateState(mSummaryPreference);
@@ -173,10 +164,8 @@ public class DataUsageSummaryPreferenceControllerTest {
// TODO (b/170330084): return intent instead of null for mSummaryPreference
verify(mSummaryPreference).setUsageInfo((info.cycleEnd / 1000) * 1000,
now - UPDATE_BACKOFF_MS,
CARRIER_NAME, 1 /* numPlans */, null /* launchIntent */);
CARRIER_NAME, 1 /* numPlans */);
verify(mSummaryPreference).setChartEnabled(true);
verify(mSummaryPreference).setWifiMode(false /* isWifiMode */, null /* usagePeriod */,
false /* isSingleWifi */);
}
@Test
@@ -184,8 +173,6 @@ public class DataUsageSummaryPreferenceControllerTest {
final long now = System.currentTimeMillis();
final DataUsageController.DataUsageInfo info = createTestDataUsageInfo(now);
final Intent intent = new Intent();
doReturn(info).when(mDataUsageController).getDataUsageInfo(any());
setupTestDataUsage(LIMIT1, USAGE1, now - UPDATE_BACKOFF_MS);
@@ -200,11 +187,8 @@ public class DataUsageSummaryPreferenceControllerTest {
info.cycleEnd,
-1L /* snapshotTime */,
CARRIER_NAME,
0 /* numPlans */,
null /* launchIntent */);
0 /* numPlans */);
verify(mSummaryPreference).setChartEnabled(true);
verify(mSummaryPreference).setWifiMode(false /* isWifiMode */, null /* usagePeriod */,
false /* isSingleWifi */);
}
@Test
@@ -227,11 +211,8 @@ public class DataUsageSummaryPreferenceControllerTest {
info.cycleEnd,
-1L /* snapshotTime */,
null /* carrierName */,
0 /* numPlans */,
null /* launchIntent */);
0 /* numPlans */);
verify(mSummaryPreference).setChartEnabled(true);
verify(mSummaryPreference).setWifiMode(false /* isWifiMode */, null /* usagePeriod */,
false /* isSingleWifi */);
}
@Test
@@ -254,11 +235,8 @@ public class DataUsageSummaryPreferenceControllerTest {
info.cycleEnd,
-1L /* snapshotTime */,
null /* carrierName */,
0 /* numPlans */,
null /* launchIntent */);
0 /* numPlans */);
verify(mSummaryPreference).setChartEnabled(false);
verify(mSummaryPreference).setWifiMode(false /* isWifiMode */, null /* usagePeriod */,
false /* isSingleWifi */);
}
@Test
@@ -268,8 +246,6 @@ public class DataUsageSummaryPreferenceControllerTest {
info.warningLevel = 0L;
info.limitLevel = 0L;
final Intent intent = new Intent();
doReturn(info).when(mDataUsageController).getDataUsageInfo(any());
setupTestDataUsage(LIMIT1, USAGE1, now - UPDATE_BACKOFF_MS);
@@ -284,8 +260,6 @@ public class DataUsageSummaryPreferenceControllerTest {
info.warningLevel = BillingCycleSettings.MIB_IN_BYTES;
info.limitLevel = 0L;
final Intent intent = new Intent();
doReturn(info).when(mDataUsageController).getDataUsageInfo(any());
setupTestDataUsage(LIMIT1, USAGE1, now - UPDATE_BACKOFF_MS);
@@ -304,8 +278,6 @@ public class DataUsageSummaryPreferenceControllerTest {
info.warningLevel = 0L;
info.limitLevel = BillingCycleSettings.MIB_IN_BYTES;
final Intent intent = new Intent();
doReturn(info).when(mDataUsageController).getDataUsageInfo(any());
setupTestDataUsage(LIMIT1, USAGE1, now - UPDATE_BACKOFF_MS);
@@ -324,8 +296,6 @@ public class DataUsageSummaryPreferenceControllerTest {
info.warningLevel = BillingCycleSettings.MIB_IN_BYTES;
info.limitLevel = BillingCycleSettings.MIB_IN_BYTES;
final Intent intent = new Intent();
doReturn(info).when(mDataUsageController).getDataUsageInfo(any());
setupTestDataUsage(LIMIT1, USAGE1, now - UPDATE_BACKOFF_MS);
@@ -335,8 +305,6 @@ public class DataUsageSummaryPreferenceControllerTest {
verify(mSummaryPreference).setLimitInfo(captor.capture());
CharSequence value = captor.getValue();
assertThat(value.toString()).isEqualTo("1.00 MB data warning / 1.00 MB data limit");
verify(mSummaryPreference).setWifiMode(false /* isWifiMode */, null /* usagePeriod */,
false /* isSingleWifi */);
}
@Test
@@ -345,12 +313,11 @@ public class DataUsageSummaryPreferenceControllerTest {
}
@Test
public void testMobileData_noSimWifi_preferenceDisabled() {
public void testMobileData_noSim_preferenceDisabled() {
final int subscriptionId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
mController.init(subscriptionId);
mController.mDataUsageController = mDataUsageController;
doReturn(true).when(mPm).hasSystemFeature(eq(FEATURE_WIFI));
assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
}
private DataUsageController.DataUsageInfo createTestDataUsageInfo(long now) {

View File

@@ -1,85 +0,0 @@
/*
* Copyright (C) 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.settings.datausage;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import android.content.Context;
import android.telephony.TelephonyManager;
import androidx.fragment.app.FragmentActivity;
import androidx.test.core.app.ApplicationProvider;
import com.android.settingslib.net.DataUsageController;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Spy;
import org.mockito.junit.MockitoJUnit;
import org.mockito.junit.MockitoRule;
import org.robolectric.RobolectricTestRunner;
import java.util.HashSet;
import java.util.Set;
@RunWith(RobolectricTestRunner.class)
public class WifiDataUsageSummaryPreferenceControllerTest {
@Rule
public final MockitoRule mMockitoRule = MockitoJUnit.rule();
@Spy
Context mContext = ApplicationProvider.getApplicationContext();
@Mock
FragmentActivity mActivity;
@Mock
TelephonyManager mTelephonyManager;
@Mock
DataUsageSummaryPreference mSummaryPreference;
@Mock
DataUsageController mDataUsageController;
@Mock
DataUsageController.DataUsageInfo mDataUsageInfo;
WifiDataUsageSummaryPreferenceController mController;
Set<String> mAllNetworkKeys = new HashSet<>();
@Before
public void setUp() {
doReturn(mContext.getResources()).when(mActivity).getResources();
doReturn(mTelephonyManager).when(mActivity).getSystemService(TelephonyManager.class);
doNothing().when(mSummaryPreference).setWifiMode(anyBoolean(), anyString(), anyBoolean());
doReturn(mDataUsageInfo).when(mDataUsageController).getDataUsageInfo(any());
mController = spy(new WifiDataUsageSummaryPreferenceController(mActivity, mAllNetworkKeys));
doReturn(mDataUsageController).when(mController).createDataUsageController(any());
}
@Test
public void updateState_nullOfDataUsageController_shouldNotCrash() {
mController.mDataUsageController = null;
mController.updateState(mSummaryPreference);
}
}