diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 17bb5ff4ab3..644356924b9 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -388,7 +388,7 @@
+ android:value="com.android.settings.network.ApnSettings" />
@@ -1903,7 +1903,7 @@
+ android:value="com.android.settings.network.ApnEditor" />
+
mProfiles;
private final AppOpsManager mAppOpsManager;
@@ -58,12 +58,12 @@ public abstract class AppStateAppOpsBridge extends AppStateBaseBridge {
public AppStateAppOpsBridge(Context context, ApplicationsState appState, Callback callback,
int appOpsOpCode, String[] permissions) {
this(context, appState, callback, appOpsOpCode, permissions,
- new IPackageManagerWrapper(AppGlobals.getPackageManager()));
+ AppGlobals.getPackageManager());
}
@VisibleForTesting
AppStateAppOpsBridge(Context context, ApplicationsState appState, Callback callback,
- int appOpsOpCode, String[] permissions, IPackageManagerWrapper packageManager) {
+ int appOpsOpCode, String[] permissions, IPackageManager packageManager) {
super(appState, callback);
mContext = context;
mIPackageManager = packageManager;
@@ -210,9 +210,10 @@ public abstract class AppStateAppOpsBridge extends AppStateBaseBridge {
if (entriesForProfile == null) {
continue;
}
- @SuppressWarnings("unchecked")
- final List packageInfos = mIPackageManager
- .getPackagesHoldingPermissions(mPermissions, 0, profileId).getList();
+ @SuppressWarnings("unchecked") final List packageInfos =
+ mIPackageManager
+ .getPackagesHoldingPermissions(mPermissions, 0,
+ profileId).getList();
final int packageInfoCount = packageInfos != null ? packageInfos.size() : 0;
for (int i = 0; i < packageInfoCount; i++) {
final PackageInfo packageInfo = packageInfos.get(i);
diff --git a/src/com/android/settings/applications/AppWithAdminGrantedPermissionsCounter.java b/src/com/android/settings/applications/AppWithAdminGrantedPermissionsCounter.java
index 77cecd28059..9bb7a4bf65e 100644
--- a/src/com/android/settings/applications/AppWithAdminGrantedPermissionsCounter.java
+++ b/src/com/android/settings/applications/AppWithAdminGrantedPermissionsCounter.java
@@ -17,12 +17,12 @@ package com.android.settings.applications;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
import android.content.pm.ApplicationInfo;
+import android.content.pm.IPackageManager;
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.RemoteException;
import android.os.UserHandle;
-import com.android.settings.wrapper.IPackageManagerWrapper;
import com.android.settingslib.wrapper.PackageManagerWrapper;
/**
@@ -32,11 +32,11 @@ import com.android.settingslib.wrapper.PackageManagerWrapper;
public abstract class AppWithAdminGrantedPermissionsCounter extends AppCounter {
private final String[] mPermissions;
- private final IPackageManagerWrapper mPackageManagerService;
+ private final IPackageManager mPackageManagerService;
private final DevicePolicyManager mDevicePolicyManager;
public AppWithAdminGrantedPermissionsCounter(Context context, String[] permissions,
- PackageManagerWrapper packageManager, IPackageManagerWrapper packageManagerService,
+ PackageManagerWrapper packageManager, IPackageManager packageManagerService,
DevicePolicyManager devicePolicyManager) {
super(context, packageManager);
mPermissions = permissions;
@@ -52,7 +52,7 @@ public abstract class AppWithAdminGrantedPermissionsCounter extends AppCounter {
public static boolean includeInCount(String[] permissions,
DevicePolicyManager devicePolicyManager, PackageManagerWrapper packageManager,
- IPackageManagerWrapper packageManagerService, ApplicationInfo info) {
+ IPackageManager packageManagerService, ApplicationInfo info) {
if (info.targetSdkVersion >= Build.VERSION_CODES.M) {
// The app uses run-time permissions. Check whether one or more of the permissions were
// granted by enterprise policy.
diff --git a/src/com/android/settings/applications/AppWithAdminGrantedPermissionsLister.java b/src/com/android/settings/applications/AppWithAdminGrantedPermissionsLister.java
index 655758aa12c..13086208481 100644
--- a/src/com/android/settings/applications/AppWithAdminGrantedPermissionsLister.java
+++ b/src/com/android/settings/applications/AppWithAdminGrantedPermissionsLister.java
@@ -18,9 +18,9 @@ package com.android.settings.applications;
import android.app.admin.DevicePolicyManager;
import android.content.pm.ApplicationInfo;
+import android.content.pm.IPackageManager;
import android.os.UserManager;
-import com.android.settings.wrapper.IPackageManagerWrapper;
import com.android.settingslib.wrapper.PackageManagerWrapper;
/**
@@ -29,11 +29,11 @@ import com.android.settingslib.wrapper.PackageManagerWrapper;
*/
public abstract class AppWithAdminGrantedPermissionsLister extends AppLister {
private final String[] mPermissions;
- private final IPackageManagerWrapper mPackageManagerService;
+ private final IPackageManager mPackageManagerService;
private final DevicePolicyManager mDevicePolicyManager;
public AppWithAdminGrantedPermissionsLister(String[] permissions,
- PackageManagerWrapper packageManager, IPackageManagerWrapper packageManagerService,
+ PackageManagerWrapper packageManager, IPackageManager packageManagerService,
DevicePolicyManager devicePolicyManager, UserManager userManager) {
super(packageManager, userManager);
mPermissions = permissions;
diff --git a/src/com/android/settings/applications/ApplicationFeatureProviderImpl.java b/src/com/android/settings/applications/ApplicationFeatureProviderImpl.java
index cd54f797bdb..f59286576e3 100644
--- a/src/com/android/settings/applications/ApplicationFeatureProviderImpl.java
+++ b/src/com/android/settings/applications/ApplicationFeatureProviderImpl.java
@@ -20,6 +20,7 @@ import android.app.admin.DevicePolicyManager;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ComponentInfo;
+import android.content.pm.IPackageManager;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.pm.UserInfo;
@@ -27,7 +28,6 @@ import android.os.RemoteException;
import android.os.UserManager;
import android.util.ArraySet;
-import com.android.settings.wrapper.IPackageManagerWrapper;
import com.android.settingslib.wrapper.PackageManagerWrapper;
import java.util.ArrayList;
@@ -38,12 +38,12 @@ public class ApplicationFeatureProviderImpl implements ApplicationFeatureProvide
private final Context mContext;
private final PackageManagerWrapper mPm;
- private final IPackageManagerWrapper mPms;
+ private final IPackageManager mPms;
private final DevicePolicyManager mDpm;
private final UserManager mUm;
public ApplicationFeatureProviderImpl(Context context, PackageManagerWrapper pm,
- IPackageManagerWrapper pms, DevicePolicyManager dpm) {
+ IPackageManager pms, DevicePolicyManager dpm) {
mContext = context.getApplicationContext();
mPm = pm;
mPms = pms;
@@ -149,7 +149,7 @@ public class ApplicationFeatureProviderImpl implements ApplicationFeatureProvide
CurrentUserAndManagedProfileAppWithAdminGrantedPermissionsCounter(Context context,
String[] permissions, PackageManagerWrapper packageManager,
- IPackageManagerWrapper packageManagerService,
+ IPackageManager packageManagerService,
DevicePolicyManager devicePolicyManager, NumberOfAppsCallback callback) {
super(context, permissions, packageManager, packageManagerService, devicePolicyManager);
mCallback = callback;
@@ -181,7 +181,7 @@ public class ApplicationFeatureProviderImpl implements ApplicationFeatureProvide
private ListOfAppsCallback mCallback;
CurrentUserAppWithAdminGrantedPermissionsLister(String[] permissions,
- PackageManagerWrapper packageManager, IPackageManagerWrapper packageManagerService,
+ PackageManagerWrapper packageManager, IPackageManager packageManagerService,
DevicePolicyManager devicePolicyManager, UserManager userManager,
ListOfAppsCallback callback) {
super(permissions, packageManager, packageManagerService, devicePolicyManager,
diff --git a/src/com/android/settings/applications/appinfo/AppNotificationPreferenceController.java b/src/com/android/settings/applications/appinfo/AppNotificationPreferenceController.java
index 87fa9cab79f..4c1f0092974 100644
--- a/src/com/android/settings/applications/appinfo/AppNotificationPreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/AppNotificationPreferenceController.java
@@ -22,6 +22,7 @@ import android.content.Context;
import android.os.Bundle;
import android.support.v7.preference.Preference;
+import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.notification.AppNotificationSettings;
import com.android.settings.notification.NotificationBackend;
@@ -77,7 +78,18 @@ public class AppNotificationPreferenceController extends AppInfoPreferenceContro
public static CharSequence getNotificationSummary(NotificationBackend.AppRow appRow,
Context context) {
- // TODO: implement summary when it is known what it should say
- return "";
+ if (appRow == null) {
+ return "";
+ }
+ if (appRow.banned || appRow.channelCount == appRow.blockedChannelCount) {
+ return context.getString(R.string.notifications_disabled);
+ } else {
+ if (appRow.blockedChannelCount == 0) {
+ return context.getString(R.string.notifications_enabled);
+ }
+ return context.getString(R.string.notifications_enabled_with_info,
+ context.getResources().getQuantityString(R.plurals.notifications_categories_off,
+ appRow.blockedChannelCount, appRow.blockedChannelCount));
+ }
}
}
diff --git a/src/com/android/settings/core/gateway/SettingsGateway.java b/src/com/android/settings/core/gateway/SettingsGateway.java
index c3317fe2379..7842dbf3c95 100644
--- a/src/com/android/settings/core/gateway/SettingsGateway.java
+++ b/src/com/android/settings/core/gateway/SettingsGateway.java
@@ -16,8 +16,6 @@
package com.android.settings.core.gateway;
-import com.android.settings.ApnEditor;
-import com.android.settings.ApnSettings;
import com.android.settings.DateTimeSettings;
import com.android.settings.DeviceAdminSettings;
import com.android.settings.DisplaySettings;
@@ -91,6 +89,8 @@ import com.android.settings.inputmethod.UserDictionarySettings;
import com.android.settings.language.LanguageAndInputSettings;
import com.android.settings.localepicker.LocaleListEditor;
import com.android.settings.location.LocationSettings;
+import com.android.settings.network.ApnEditor;
+import com.android.settings.network.ApnSettings;
import com.android.settings.network.NetworkDashboardFragment;
import com.android.settings.nfc.AndroidBeam;
import com.android.settings.nfc.PaymentSettings;
diff --git a/src/com/android/settings/enterprise/BackupsEnabledPreferenceController.java b/src/com/android/settings/enterprise/BackupsEnabledPreferenceController.java
new file mode 100644
index 00000000000..b24f8dcc89a
--- /dev/null
+++ b/src/com/android/settings/enterprise/BackupsEnabledPreferenceController.java
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2018 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.enterprise;
+
+import android.content.Context;
+
+import com.android.settings.core.BasePreferenceController;
+import com.android.settings.overlay.FeatureFactory;
+
+public class BackupsEnabledPreferenceController extends BasePreferenceController {
+
+ private static final String KEY_BACKUPS_ENABLED = "backups_enabled";
+ private final EnterprisePrivacyFeatureProvider mFeatureProvider;
+
+ public BackupsEnabledPreferenceController(Context context) {
+ super(context, KEY_BACKUPS_ENABLED);
+ mFeatureProvider = FeatureFactory.getFactory(context)
+ .getEnterprisePrivacyFeatureProvider(context);
+ }
+
+ @Override
+ public int getAvailabilityStatus() {
+ return mFeatureProvider.areBackupsMandatory() ? AVAILABLE : DISABLED_FOR_USER;
+ }
+}
+
diff --git a/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProvider.java b/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProvider.java
index 048782ea35c..51d125d5c2f 100644
--- a/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProvider.java
+++ b/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProvider.java
@@ -124,4 +124,9 @@ public interface EnterprisePrivacyFeatureProvider {
* profile (if any).
*/
int getNumberOfActiveDeviceAdminsForCurrentUserAndManagedProfile();
+
+ /*
+ * Returns whether backups are mandatory.
+ */
+ boolean areBackupsMandatory();
}
diff --git a/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProviderImpl.java b/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProviderImpl.java
index 17d7f0dcb0c..eead69f8787 100644
--- a/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProviderImpl.java
+++ b/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProviderImpl.java
@@ -23,6 +23,7 @@ import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.UserInfo;
import android.content.res.Resources;
+import android.net.ConnectivityManager;
import android.os.UserHandle;
import android.os.UserManager;
import android.provider.Settings;
@@ -32,7 +33,6 @@ import android.view.View;
import com.android.settings.R;
import com.android.settings.vpn2.VpnUtils;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
import com.android.settingslib.wrapper.PackageManagerWrapper;
import java.util.Date;
@@ -44,13 +44,13 @@ public class EnterprisePrivacyFeatureProviderImpl implements EnterprisePrivacyFe
private final DevicePolicyManager mDpm;
private final PackageManagerWrapper mPm;
private final UserManager mUm;
- private final ConnectivityManagerWrapper mCm;
+ private final ConnectivityManager mCm;
private final Resources mResources;
private static final int MY_USER_ID = UserHandle.myUserId();
public EnterprisePrivacyFeatureProviderImpl(Context context, DevicePolicyManager dpm,
- PackageManagerWrapper pm, UserManager um, ConnectivityManagerWrapper cm,
+ PackageManagerWrapper pm, UserManager um, ConnectivityManager cm,
Resources resources) {
mContext = context.getApplicationContext();
mDpm = dpm;
@@ -235,6 +235,11 @@ public class EnterprisePrivacyFeatureProviderImpl implements EnterprisePrivacyFe
return activeAdmins;
}
+ @Override
+ public boolean areBackupsMandatory() {
+ return null != mDpm.getMandatoryBackupTransport();
+ }
+
protected static class EnterprisePrivacySpan extends ClickableSpan {
private final Context mContext;
diff --git a/src/com/android/settings/enterprise/EnterprisePrivacySettings.java b/src/com/android/settings/enterprise/EnterprisePrivacySettings.java
index b426d287f9c..92ae38df94e 100644
--- a/src/com/android/settings/enterprise/EnterprisePrivacySettings.java
+++ b/src/com/android/settings/enterprise/EnterprisePrivacySettings.java
@@ -82,6 +82,7 @@ public class EnterprisePrivacySettings extends DashboardFragment {
exposureChangesCategoryControllers.add(new CaCertsCurrentUserPreferenceController(context));
exposureChangesCategoryControllers.add(new CaCertsManagedProfilePreferenceController(
context));
+ exposureChangesCategoryControllers.add(new BackupsEnabledPreferenceController(context));
controllers.addAll(exposureChangesCategoryControllers);
controllers.add(new PreferenceCategoryController(context, "exposure_changes_category")
.setChildren(exposureChangesCategoryControllers));
diff --git a/src/com/android/settings/fuelgauge/batterytip/detectors/HighUsageDetector.java b/src/com/android/settings/fuelgauge/batterytip/detectors/HighUsageDetector.java
index fd150e4c93e..1b6e2f03ae3 100644
--- a/src/com/android/settings/fuelgauge/batterytip/detectors/HighUsageDetector.java
+++ b/src/com/android/settings/fuelgauge/batterytip/detectors/HighUsageDetector.java
@@ -19,6 +19,7 @@ package com.android.settings.fuelgauge.batterytip.detectors;
import android.content.Context;
import android.os.BatteryStats;
import android.support.annotation.VisibleForTesting;
+import android.text.format.DateUtils;
import com.android.internal.os.BatterySipper;
import com.android.internal.os.BatteryStatsHelper;
@@ -72,18 +73,20 @@ public class HighUsageDetector implements BatteryTipDetector {
final long foregroundTimeMs = mBatteryUtils.getProcessTimeMs(
BatteryUtils.StatusType.FOREGROUND, batterySipper.uidObj,
BatteryStats.STATS_SINCE_CHARGED);
- mHighUsageAppList.add(new AppInfo.Builder()
- .setUid(batterySipper.getUid())
- .setPackageName(
- mBatteryUtils.getPackageName(batterySipper.getUid()))
- .setScreenOnTimeMs(foregroundTimeMs)
- .build());
+ if (foregroundTimeMs >= DateUtils.MINUTE_IN_MILLIS) {
+ mHighUsageAppList.add(new AppInfo.Builder()
+ .setUid(batterySipper.getUid())
+ .setPackageName(
+ mBatteryUtils.getPackageName(batterySipper.getUid()))
+ .setScreenOnTimeMs(foregroundTimeMs)
+ .build());
+ }
}
}
+ Collections.sort(mHighUsageAppList, Collections.reverseOrder());
mHighUsageAppList = mHighUsageAppList.subList(0,
Math.min(mPolicy.highUsageAppCount, mHighUsageAppList.size()));
- Collections.sort(mHighUsageAppList, Collections.reverseOrder());
}
}
diff --git a/src/com/android/settings/ApnEditor.java b/src/com/android/settings/network/ApnEditor.java
similarity index 99%
rename from src/com/android/settings/ApnEditor.java
rename to src/com/android/settings/network/ApnEditor.java
index 15edbf4ccf8..61f12438262 100644
--- a/src/com/android/settings/ApnEditor.java
+++ b/src/com/android/settings/network/ApnEditor.java
@@ -14,7 +14,9 @@
* limitations under the License.
*/
-package com.android.settings;
+package com.android.settings.network;
+
+import static android.content.Context.TELEPHONY_SERVICE;
import android.app.AlertDialog;
import android.app.Dialog;
@@ -47,9 +49,11 @@ import android.view.View.OnKeyListener;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.internal.telephony.PhoneConstants;
import com.android.internal.util.ArrayUtils;
+import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
+import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settingslib.utils.ThreadUtils;
import java.util.Arrays;
@@ -57,11 +61,6 @@ import java.util.HashSet;
import java.util.List;
import java.util.Set;
-import static android.content.Context.TELEPHONY_SERVICE;
-
-/**
- * TODO(b/77339683): After loading all changes, please move this to network package.
- */
public class ApnEditor extends SettingsPreferenceFragment
implements OnPreferenceChangeListener, OnKeyListener {
diff --git a/src/com/android/settings/ApnPreference.java b/src/com/android/settings/network/ApnPreference.java
similarity index 98%
rename from src/com/android/settings/ApnPreference.java
rename to src/com/android/settings/network/ApnPreference.java
index 0111b26194c..412c2881aa5 100755
--- a/src/com/android/settings/ApnPreference.java
+++ b/src/com/android/settings/network/ApnPreference.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings;
+package com.android.settings.network;
import android.content.ContentUris;
import android.content.Context;
@@ -32,6 +32,8 @@ import android.widget.CompoundButton;
import android.widget.RadioButton;
import android.widget.RelativeLayout;
+import com.android.settings.R;
+
public class ApnPreference extends Preference implements
CompoundButton.OnCheckedChangeListener, OnClickListener {
final static String TAG = "ApnPreference";
diff --git a/src/com/android/settings/ApnSettings.java b/src/com/android/settings/network/ApnSettings.java
similarity index 99%
rename from src/com/android/settings/ApnSettings.java
rename to src/com/android/settings/network/ApnSettings.java
index d554301063c..bbbcdbcbb63 100755
--- a/src/com/android/settings/ApnSettings.java
+++ b/src/com/android/settings/network/ApnSettings.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings;
+package com.android.settings.network;
import android.app.Activity;
import android.app.Dialog;
@@ -39,7 +39,6 @@ import android.os.UserManager;
import android.provider.Telephony;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceGroup;
-import android.support.v7.preference.PreferenceScreen;
import android.telephony.CarrierConfigManager;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
@@ -50,7 +49,6 @@ import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.MotionEvent;
-import android.widget.TextView;
import android.widget.Toast;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
@@ -59,6 +57,8 @@ import com.android.internal.telephony.TelephonyIntents;
import com.android.internal.telephony.dataconnection.ApnSetting;
import com.android.internal.telephony.uicc.IccRecords;
import com.android.internal.telephony.uicc.UiccController;
+import com.android.settings.R;
+import com.android.settings.RestrictedSettingsFragment;
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
import java.util.ArrayList;
diff --git a/src/com/android/settings/notification/NotificationBackend.java b/src/com/android/settings/notification/NotificationBackend.java
index 34b6ce534cb..62c83886b05 100644
--- a/src/com/android/settings/notification/NotificationBackend.java
+++ b/src/com/android/settings/notification/NotificationBackend.java
@@ -60,6 +60,8 @@ public class NotificationBackend {
row.banned = getNotificationsBanned(row.pkg, row.uid);
row.showBadge = canShowBadge(row.pkg, row.uid);
row.userId = UserHandle.getUserId(row.uid);
+ row.blockedChannelCount = getBlockedChannelCount(row.pkg, row.uid);
+ row.channelCount = getChannelCount(row.pkg, row.uid);
return row;
}
@@ -178,18 +180,6 @@ public class NotificationBackend {
}
}
- public NotificationChannelGroup getGroupWithChannels(String pkg, int uid, String groupId) {
- if (groupId == null) {
- return null;
- }
- try {
- return sINM.getPopulatedNotificationChannelGroupForPackage(pkg, uid, groupId, true);
- } catch (Exception e) {
- Log.w(TAG, "Error calling NoMan", e);
- return null;
- }
- }
-
public ParceledListSlice getGroups(String pkg, int uid) {
try {
return sINM.getNotificationChannelGroupsForPackage(pkg, uid, false);
@@ -224,6 +214,15 @@ public class NotificationBackend {
}
}
+ public int getBlockedChannelCount(String pkg, int uid) {
+ try {
+ return sINM.getBlockedChannelCount(pkg, uid);
+ } catch (Exception e) {
+ Log.w(TAG, "Error calling NoMan", e);
+ return 0;
+ }
+ }
+
public boolean onlyHasDefaultChannel(String pkg, int uid) {
try {
return sINM.onlyHasDefaultChannel(pkg, uid);
@@ -233,6 +232,15 @@ public class NotificationBackend {
}
}
+ public int getChannelCount(String pkg, int uid) {
+ try {
+ return sINM.getNumNotificationChannelsForPackage(pkg, uid, false);
+ } catch (Exception e) {
+ Log.w(TAG, "Error calling NoMan", e);
+ return 0;
+ }
+ }
+
public List getRecentApps() {
try {
return sINM.getRecentNotifyingAppsForUser(UserHandle.myUserId()).getList();
@@ -259,5 +267,7 @@ public class NotificationBackend {
public String lockedChannelId;
public boolean showBadge;
public int userId;
+ public int blockedChannelCount;
+ public int channelCount;
}
}
diff --git a/src/com/android/settings/notification/VolumeSeekBarPreference.java b/src/com/android/settings/notification/VolumeSeekBarPreference.java
index 89f1e2747b7..478a7d6b3a0 100644
--- a/src/com/android/settings/notification/VolumeSeekBarPreference.java
+++ b/src/com/android/settings/notification/VolumeSeekBarPreference.java
@@ -83,6 +83,7 @@ public class VolumeSeekBarPreference extends SeekBarPreference {
public void setStream(int stream) {
mStream = stream;
setMax(mAudioManager.getStreamMaxVolume(mStream));
+ setMin(mAudioManager.getStreamMinVolume(mStream));
setProgress(mAudioManager.getStreamVolume(mStream));
}
diff --git a/src/com/android/settings/overlay/FeatureFactoryImpl.java b/src/com/android/settings/overlay/FeatureFactoryImpl.java
index f0bbe2e646d..b652c669f2b 100644
--- a/src/com/android/settings/overlay/FeatureFactoryImpl.java
+++ b/src/com/android/settings/overlay/FeatureFactoryImpl.java
@@ -51,8 +51,6 @@ import com.android.settings.slices.SlicesFeatureProvider;
import com.android.settings.slices.SlicesFeatureProviderImpl;
import com.android.settings.users.UserFeatureProvider;
import com.android.settings.users.UserFeatureProviderImpl;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
-import com.android.settings.wrapper.IPackageManagerWrapper;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.wrapper.PackageManagerWrapper;
@@ -112,7 +110,7 @@ public class FeatureFactoryImpl extends FeatureFactory {
if (mApplicationFeatureProvider == null) {
mApplicationFeatureProvider = new ApplicationFeatureProviderImpl(context,
new PackageManagerWrapper(context.getPackageManager()),
- new IPackageManagerWrapper(AppGlobals.getPackageManager()),
+ AppGlobals.getPackageManager(),
(DevicePolicyManager) context
.getSystemService(Context.DEVICE_POLICY_SERVICE));
}
@@ -134,8 +132,7 @@ public class FeatureFactoryImpl extends FeatureFactory {
(DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE),
new PackageManagerWrapper(context.getPackageManager()),
UserManager.get(context),
- new ConnectivityManagerWrapper((ConnectivityManager) context
- .getSystemService(Context.CONNECTIVITY_SERVICE)),
+ (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE),
context.getResources());
}
return mEnterprisePrivacyFeatureProvider;
diff --git a/src/com/android/settings/vpn2/VpnUtils.java b/src/com/android/settings/vpn2/VpnUtils.java
index 1aa4adaea41..4528180b0ee 100644
--- a/src/com/android/settings/vpn2/VpnUtils.java
+++ b/src/com/android/settings/vpn2/VpnUtils.java
@@ -27,7 +27,6 @@ import android.util.Log;
import com.android.internal.net.LegacyVpnInfo;
import com.android.internal.net.VpnConfig;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
/**
* Utility functions for vpn.
@@ -89,7 +88,7 @@ public class VpnUtils {
ServiceManager.getService(Context.CONNECTIVITY_SERVICE));
}
- public static boolean isAlwaysOnVpnSet(ConnectivityManagerWrapper cm, final int userId) {
+ public static boolean isAlwaysOnVpnSet(ConnectivityManager cm, final int userId) {
return cm.getAlwaysOnVpnPackageForUser(userId) != null;
}
diff --git a/src/com/android/settings/wifi/WifiEnabler.java b/src/com/android/settings/wifi/WifiEnabler.java
index c5e79b2db49..cdb9292815f 100644
--- a/src/com/android/settings/wifi/WifiEnabler.java
+++ b/src/com/android/settings/wifi/WifiEnabler.java
@@ -34,11 +34,10 @@ import android.widget.Toast;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.widget.SwitchWidgetController;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
-import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
import com.android.settingslib.WirelessUtils;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -46,7 +45,7 @@ public class WifiEnabler implements SwitchWidgetController.OnSwitchChangeListene
private final SwitchWidgetController mSwitchWidget;
private final WifiManager mWifiManager;
- private final ConnectivityManagerWrapper mConnectivityManager;
+ private final ConnectivityManager mConnectivityManager;
private final MetricsFeatureProvider mMetricsFeatureProvider;
private Context mContext;
@@ -81,20 +80,20 @@ public class WifiEnabler implements SwitchWidgetController.OnSwitchChangeListene
public WifiEnabler(Context context, SwitchWidgetController switchWidget,
MetricsFeatureProvider metricsFeatureProvider) {
- this(context, switchWidget, metricsFeatureProvider, new ConnectivityManagerWrapper(
- (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE)));
+ this(context, switchWidget, metricsFeatureProvider,
+ (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE));
}
@VisibleForTesting
WifiEnabler(Context context, SwitchWidgetController switchWidget,
MetricsFeatureProvider metricsFeatureProvider,
- ConnectivityManagerWrapper connectivityManagerWrapper) {
+ ConnectivityManager connectivityManager) {
mContext = context;
mSwitchWidget = switchWidget;
mSwitchWidget.setListener(this);
mMetricsFeatureProvider = metricsFeatureProvider;
mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
- mConnectivityManager = connectivityManagerWrapper;
+ mConnectivityManager = connectivityManager;
mIntentFilter = new IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION);
// The order matters! We really should not depend on this. :(
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index 5f299221642..4f1c832e15b 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -64,7 +64,6 @@ import com.android.settings.search.SearchIndexableRaw;
import com.android.settings.widget.SummaryUpdater.OnSummaryChangeListener;
import com.android.settings.widget.SwitchBarController;
import com.android.settings.wifi.details.WifiNetworkDetailsFragment;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.wifi.AccessPoint;
import com.android.settingslib.wifi.AccessPoint.AccessPointListener;
@@ -852,9 +851,7 @@ public class WifiSettings extends RestrictedSettingsFragment
pref.getAccessPoint().saveWifiState(pref.getExtras());
if (mCaptivePortalNetworkCallback != null
&& mCaptivePortalNetworkCallback.isCaptivePortal()) {
- ConnectivityManagerWrapper connectivityManagerWrapper =
- new ConnectivityManagerWrapper(mConnectivityManager);
- connectivityManagerWrapper.startCaptivePortalApp(
+ mConnectivityManager.startCaptivePortalApp(
mCaptivePortalNetworkCallback.getNetwork());
} else {
launchNetworkDetailsFragment(pref);
diff --git a/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java b/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java
index e7f0fdd7c1f..2339e38effa 100644
--- a/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java
+++ b/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java
@@ -48,6 +48,7 @@ import android.text.TextUtils;
import android.util.Log;
import android.widget.ImageView;
import android.widget.Toast;
+
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
@@ -60,7 +61,6 @@ import com.android.settings.wifi.WifiDetailPreference;
import com.android.settings.wifi.WifiDialog;
import com.android.settings.wifi.WifiDialog.WifiDialogListener;
import com.android.settings.wifi.WifiUtils;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -68,6 +68,7 @@ import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnPause;
import com.android.settingslib.core.lifecycle.events.OnResume;
import com.android.settingslib.wifi.AccessPoint;
+
import java.net.Inet4Address;
import java.net.Inet6Address;
import java.net.InetAddress;
@@ -114,7 +115,6 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
static final String KEY_IPV6_ADDRESSES_PREF = "ipv6_addresses";
private AccessPoint mAccessPoint;
- private final ConnectivityManagerWrapper mConnectivityManagerWrapper;
private final ConnectivityManager mConnectivityManager;
private final Fragment mFragment;
private final Handler mHandler;
@@ -152,10 +152,10 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
switch (intent.getAction()) {
case WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION:
if (!intent.getBooleanExtra(WifiManager.EXTRA_MULTIPLE_NETWORKS_CHANGED,
- false /* defaultValue */)) {
+ false /* defaultValue */)) {
// only one network changed
WifiConfiguration wifiConfiguration = intent
- .getParcelableExtra(WifiManager.EXTRA_WIFI_CONFIGURATION);
+ .getParcelableExtra(WifiManager.EXTRA_WIFI_CONFIGURATION);
if (mAccessPoint.matches(wifiConfiguration)) {
mWifiConfig = wifiConfiguration;
}
@@ -215,7 +215,7 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
public static WifiDetailPreferenceController newInstance(
AccessPoint accessPoint,
- ConnectivityManagerWrapper connectivityManagerWrapper,
+ ConnectivityManager connectivityManager,
Context context,
Fragment fragment,
Handler handler,
@@ -223,14 +223,14 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
WifiManager wifiManager,
MetricsFeatureProvider metricsFeatureProvider) {
return new WifiDetailPreferenceController(
- accessPoint, connectivityManagerWrapper, context, fragment, handler, lifecycle,
+ accessPoint, connectivityManager, context, fragment, handler, lifecycle,
wifiManager, metricsFeatureProvider, new IconInjector(context));
}
@VisibleForTesting
- /* package */ WifiDetailPreferenceController(
+ /* package */ WifiDetailPreferenceController(
AccessPoint accessPoint,
- ConnectivityManagerWrapper connectivityManagerWrapper,
+ ConnectivityManager connectivityManager,
Context context,
Fragment fragment,
Handler handler,
@@ -241,8 +241,7 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
super(context);
mAccessPoint = accessPoint;
- mConnectivityManager = connectivityManagerWrapper.getConnectivityManager();
- mConnectivityManagerWrapper = connectivityManagerWrapper;
+ mConnectivityManager = connectivityManager;
mFragment = fragment;
mHandler = handler;
mSignalStr = context.getResources().getStringArray(R.array.wifi_signal);
@@ -326,7 +325,7 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
mNetworkCapabilities = mConnectivityManager.getNetworkCapabilities(mNetwork);
updateInfo();
mContext.registerReceiver(mReceiver, mFilter);
- mConnectivityManagerWrapper.registerNetworkCallback(mNetworkRequest, mNetworkCallback,
+ mConnectivityManager.registerNetworkCallback(mNetworkRequest, mNetworkCallback,
mHandler);
}
@@ -486,7 +485,7 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
private static String ipv4PrefixLengthToSubnetMask(int prefixLength) {
try {
InetAddress all = InetAddress.getByAddress(
- new byte[]{(byte) 255, (byte) 255, (byte) 255, (byte) 255});
+ new byte[] {(byte) 255, (byte) 255, (byte) 255, (byte) 255});
return NetworkUtils.getNetworkPart(all, prefixLength).getHostAddress();
} catch (UnknownHostException e) {
return null;
@@ -538,7 +537,7 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
private void signIntoNetwork() {
mMetricsFeatureProvider.action(
mFragment.getActivity(), MetricsProto.MetricsEvent.ACTION_WIFI_SIGNIN);
- mConnectivityManagerWrapper.startCaptivePortalApp(mNetwork);
+ mConnectivityManager.startCaptivePortalApp(mNetwork);
}
@Override
diff --git a/src/com/android/settings/wifi/details/WifiNetworkDetailsFragment.java b/src/com/android/settings/wifi/details/WifiNetworkDetailsFragment.java
index b2e56b9664e..34380359e63 100644
--- a/src/com/android/settings/wifi/details/WifiNetworkDetailsFragment.java
+++ b/src/com/android/settings/wifi/details/WifiNetworkDetailsFragment.java
@@ -20,13 +20,10 @@ import static com.android.settings.wifi.WifiSettings.WIFI_DIALOG_ID;
import android.app.Dialog;
import android.content.Context;
import android.net.ConnectivityManager;
-import android.net.NetworkPolicyManager;
-import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
-import android.support.v7.preference.DropDownPreference;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
@@ -37,13 +34,11 @@ import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.wifi.WifiConfigUiBase;
import com.android.settings.wifi.WifiDialog;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.wifi.AccessPoint;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.List;
/**
@@ -126,10 +121,10 @@ public class WifiNetworkDetailsFragment extends DashboardFragment {
@Override
protected List createPreferenceControllers(Context context) {
final List controllers = new ArrayList<>();
- ConnectivityManager cm = context.getSystemService(ConnectivityManager.class);
+ final ConnectivityManager cm = context.getSystemService(ConnectivityManager.class);
mWifiDetailPreferenceController = WifiDetailPreferenceController.newInstance(
mAccessPoint,
- new ConnectivityManagerWrapper(cm),
+ cm,
context,
this,
new Handler(Looper.getMainLooper()), // UI thread.
diff --git a/src/com/android/settings/wrapper/ConnectivityManagerWrapper.java b/src/com/android/settings/wrapper/ConnectivityManagerWrapper.java
deleted file mode 100644
index c80a97b3afa..00000000000
--- a/src/com/android/settings/wrapper/ConnectivityManagerWrapper.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright (C) 2017 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.wrapper;
-
-import android.net.ConnectivityManager;
-import android.net.ConnectivityManager.NetworkCallback;
-import android.net.Network;
-import android.net.NetworkRequest;
-import android.os.Handler;
-import android.net.ProxyInfo;
-
-/**
- * This class replicates a subset of the android.net.ConnectivityManager (CM). The class
- * exists so that we can use a thin wrapper around the CM in production code and a mock in tests.
- * We cannot directly mock or shadow the CM, because some of the methods we rely on are marked as
- * hidden and are thus invisible to Robolectric.
- */
-public class ConnectivityManagerWrapper {
-
- private final ConnectivityManager mCm;
-
- public ConnectivityManagerWrapper(ConnectivityManager cm) {
- mCm = cm;
- }
-
- /**
- * Returns the real ConnectivityManager object wrapped by this wrapper.
- */
- public ConnectivityManager getConnectivityManager() {
- return mCm;
- }
-
- /**
- * Calls {@code ConnectivityManager.getAlwaysOnVpnPackageForUser()}.
- *
- * @see android.net.ConnectivityManager#getAlwaysOnVpnPackageForUser
- */
- public String getAlwaysOnVpnPackageForUser(int userId) {
- return mCm.getAlwaysOnVpnPackageForUser(userId);
- }
-
- /**
- * Calls {@code ConnectivityManager.getGlobalProxy()}.
- *
- * @see android.net.ConnectivityManager#getGlobalProxy
- */
- public ProxyInfo getGlobalProxy() {
- return mCm.getGlobalProxy();
- }
-
- /**
- * Calls {@code ConnectivityManager.registerNetworkCallback()}.
- *
- * This is part of the ConnectivityManager public API in SDK 26 or above, but is not yet visible
- * to the robolectric tests, which currently build with SDK 23.
- * TODO: delete this once the robolectric tests build with SDK 26 or above.
- *
- * @see android.net.ConnectivityManager#registerNetworkCallback(NetworkRequest,NetworkCallback,Handler)
- */
- public void registerNetworkCallback(NetworkRequest request, NetworkCallback callback,
- Handler handler) {
- mCm.registerNetworkCallback(request, callback, handler);
- }
-
- /**
- * Calls {@code ConnectivityManager.startCaptivePortalApp()}.
- *
- * This is part of the ConnectivityManager public API in SDK 26 or above, but is not yet visible
- * to the robolectric tests, which currently build with SDK 23.
- * TODO: delete this once the robolectric tests build with SDK 26 or above.
- *
- * @see android.net.ConnectivityManager#startCaptivePortalApp(Network)
- */
- public void startCaptivePortalApp(Network network) {
- mCm.startCaptivePortalApp(network);
- }
-
- /**
- * {@link ConnectivityManager#stopTethering}
- */
- public void stopTethering(int type) {
- mCm.stopTethering(type);
- }
-}
diff --git a/src/com/android/settings/wrapper/IPackageManagerWrapper.java b/src/com/android/settings/wrapper/IPackageManagerWrapper.java
deleted file mode 100644
index 9bb2df72d02..00000000000
--- a/src/com/android/settings/wrapper/IPackageManagerWrapper.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (C) 2017 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.wrapper;
-
-import android.content.Intent;
-import android.content.pm.IPackageManager;
-import android.content.pm.PackageInfo;
-import android.content.pm.ParceledListSlice;
-import android.content.pm.ResolveInfo;
-import android.os.RemoteException;
-
-/**
- * This class replicates a subset of the android.content.pm.IPackageManager (PMS). The class
- * exists so that we can use a thin wrapper around the PMS in production code and a mock in tests.
- * We cannot directly mock or shadow the PMS, because some of the methods we rely on are newer than
- * the API version supported by Robolectric.
- */
-public class IPackageManagerWrapper {
-
- private final IPackageManager mPms;
-
- public IPackageManagerWrapper(IPackageManager pms) {
- mPms = pms;
- }
-
- /**
- * Calls {@code IPackageManager.checkUidPermission()}.
- *
- * @see android.content.pm.IPackageManager#checkUidPermission
- */
- public int checkUidPermission(String permName, int uid) throws RemoteException {
- return mPms.checkUidPermission(permName, uid);
- }
-
- /**
- * Calls {@code IPackageManager.findPersistentPreferredActivity()}.
- *
- * @see android.content.pm.IPackageManager#findPersistentPreferredActivity
- */
- public ResolveInfo findPersistentPreferredActivity(Intent intent, int userId)
- throws RemoteException {
- return mPms.findPersistentPreferredActivity(intent, userId);
- }
-
- /**
- * Calls {@code IPackageManager.getPackageInfo()}.
- *
- * @see android.content.pm.IPackageManager#getPackageInfo
- */
- public PackageInfo getPackageInfo(String packageName, int flags, int userId)
- throws RemoteException {
- return mPms.getPackageInfo(packageName, flags, userId);
- }
-
- /**
- * Calls {@code IPackageManager.getAppOpPermissionPackages()}.
- *
- * @see android.content.pm.IPackageManager#getAppOpPermissionPackages
- */
- public String[] getAppOpPermissionPackages(String permissionName) throws RemoteException {
- return mPms.getAppOpPermissionPackages(permissionName);
- }
-
- /**
- * Calls {@code IPackageManager.isPackageAvailable()}.
- *
- * @see android.content.pm.IPackageManager#isPackageAvailable
- */
- public boolean isPackageAvailable(String packageName, int userId) throws RemoteException {
- return mPms.isPackageAvailable(packageName, userId);
- }
-
- /**
- * Calls {@code IPackageManager.getPackagesHoldingPermissions()}.
- *
- * @see android.content.pm.IPackageManager#getPackagesHoldingPermissions
- */
- public ParceledListSlice getPackagesHoldingPermissions(
- String[] permissions, int flags, int userId) throws RemoteException {
- return mPms.getPackagesHoldingPermissions(permissions, flags, userId);
- }
-
-}
diff --git a/tests/robotests/src/com/android/settings/applications/AppStateAppOpsBridgeTest.java b/tests/robotests/src/com/android/settings/applications/AppStateAppOpsBridgeTest.java
index 2df0117dad6..a4eeacd26bc 100644
--- a/tests/robotests/src/com/android/settings/applications/AppStateAppOpsBridgeTest.java
+++ b/tests/robotests/src/com/android/settings/applications/AppStateAppOpsBridgeTest.java
@@ -23,11 +23,11 @@ import static org.mockito.Mockito.when;
import android.Manifest;
import android.app.AppOpsManager;
import android.content.Context;
+import android.content.pm.IPackageManager;
import android.os.RemoteException;
import android.os.UserManager;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.wrapper.IPackageManagerWrapper;
import com.android.settingslib.applications.ApplicationsState.AppEntry;
import org.junit.Before;
@@ -41,7 +41,7 @@ public final class AppStateAppOpsBridgeTest {
@Mock private Context mContext;
@Mock private UserManager mUserManager;
- @Mock private IPackageManagerWrapper mPackageManagerService;
+ @Mock private IPackageManager mPackageManagerService;
@Mock private AppOpsManager mAppOpsManager;
@Before
diff --git a/tests/robotests/src/com/android/settings/applications/AppWithAdminGrantedPermissionsCounterTest.java b/tests/robotests/src/com/android/settings/applications/AppWithAdminGrantedPermissionsCounterTest.java
index a0bae85330d..dcc6a1e912e 100644
--- a/tests/robotests/src/com/android/settings/applications/AppWithAdminGrantedPermissionsCounterTest.java
+++ b/tests/robotests/src/com/android/settings/applications/AppWithAdminGrantedPermissionsCounterTest.java
@@ -29,6 +29,7 @@ import static org.mockito.Mockito.when;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
import android.content.pm.ApplicationInfo;
+import android.content.pm.IPackageManager;
import android.content.pm.PackageManager;
import android.content.pm.UserInfo;
import android.os.Build;
@@ -37,7 +38,6 @@ import android.os.UserHandle;
import android.os.UserManager;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.wrapper.IPackageManagerWrapper;
import com.android.settingslib.wrapper.PackageManagerWrapper;
import org.junit.Before;
@@ -81,7 +81,7 @@ public final class AppWithAdminGrantedPermissionsCounterTest {
@Mock
private PackageManagerWrapper mPackageManager;
@Mock
- private IPackageManagerWrapper mPackageManagerService;
+ private IPackageManager mPackageManagerService;
@Mock
private DevicePolicyManager mDevicePolicyManager;
diff --git a/tests/robotests/src/com/android/settings/applications/AppWithAdminGrantedPermissionsListerTest.java b/tests/robotests/src/com/android/settings/applications/AppWithAdminGrantedPermissionsListerTest.java
index 940fd4b8353..8365db2ec45 100644
--- a/tests/robotests/src/com/android/settings/applications/AppWithAdminGrantedPermissionsListerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/AppWithAdminGrantedPermissionsListerTest.java
@@ -27,6 +27,7 @@ import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
import android.app.admin.DevicePolicyManager;
+import android.content.pm.IPackageManager;
import android.content.pm.PackageManager;
import android.content.pm.UserInfo;
import android.os.Build;
@@ -34,7 +35,6 @@ import android.os.UserHandle;
import android.os.UserManager;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.wrapper.IPackageManagerWrapper;
import com.android.settingslib.wrapper.PackageManagerWrapper;
import org.junit.Before;
@@ -78,7 +78,7 @@ public final class AppWithAdminGrantedPermissionsListerTest {
@Mock
private PackageManagerWrapper mPackageManager;
@Mock
- private IPackageManagerWrapper mPackageManagerService;
+ private IPackageManager mPackageManagerService;
@Mock
private DevicePolicyManager mDevicePolicyManager;
diff --git a/tests/robotests/src/com/android/settings/applications/ApplicationFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/applications/ApplicationFeatureProviderImplTest.java
index 8afb7986183..a457ba24dab 100644
--- a/tests/robotests/src/com/android/settings/applications/ApplicationFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/applications/ApplicationFeatureProviderImplTest.java
@@ -24,6 +24,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.content.pm.ApplicationInfo;
+import android.content.pm.IPackageManager;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.pm.UserInfo;
@@ -33,7 +34,6 @@ import android.os.UserManager;
import com.android.settings.testutils.ApplicationTestUtils;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.wrapper.IPackageManagerWrapper;
import com.android.settingslib.wrapper.PackageManagerWrapper;
import org.junit.Before;
@@ -72,7 +72,7 @@ public final class ApplicationFeatureProviderImplTest {
@Mock
private PackageManagerWrapper mPackageManager;
@Mock
- private IPackageManagerWrapper mPackageManagerService;
+ private IPackageManager mPackageManagerService;
@Mock
private DevicePolicyManager mDevicePolicyManager;
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppNotificationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppNotificationPreferenceControllerTest.java
index 5d24180be36..a453f7840b5 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppNotificationPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppNotificationPreferenceControllerTest.java
@@ -105,4 +105,49 @@ public class AppNotificationPreferenceControllerTest {
assertThat(controller.getArguments().containsKey(EXTRA_FRAGMENT_ARG_KEY)).isTrue();
assertThat(controller.getArguments().getString(EXTRA_FRAGMENT_ARG_KEY)).isEqualTo("test");
}
+
+ @Test
+ public void getNotificationSummary_noCrashOnNull() {
+ mController.getNotificationSummary(null, mContext);
+ }
+
+ @Test
+ public void getNotificationSummary_appBlocked() {
+ NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
+ appRow.banned = true;
+ appRow.blockedChannelCount = 30;
+ assertThat(mController.getNotificationSummary(appRow, mContext).toString())
+ .isEqualTo("Off");
+ }
+
+ @Test
+ public void getNotificationSummary_appNotBlockedAllChannelsBlocked() {
+ NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
+ appRow.banned = false;
+ appRow.blockedChannelCount = 30;
+ appRow.channelCount = 30;
+ assertThat(mController.getNotificationSummary(appRow, mContext).toString())
+ .isEqualTo("Off");
+ }
+
+ @Test
+ public void getNotificationSummary_appNotBlocked() {
+ NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
+ appRow.banned = false;
+ appRow.blockedChannelCount = 30;
+ appRow.channelCount = 60;
+ assertThat(mController.getNotificationSummary(
+ appRow, mContext).toString().contains("30")).isTrue();
+ assertThat(mController.getNotificationSummary(
+ appRow, mContext).toString().contains("On")).isTrue();
+ }
+
+ @Test
+ public void getNotificationSummary_channelsNotBlocked() {
+ NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
+ appRow.banned = false;
+ appRow.blockedChannelCount = 0;
+ appRow.channelCount = 10;
+ assertThat(mController.getNotificationSummary(appRow, mContext).toString()).isEqualTo("On");
+ }
}
diff --git a/tests/robotests/src/com/android/settings/enterprise/BackupsEnabledPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/BackupsEnabledPreferenceControllerTest.java
new file mode 100644
index 00000000000..a836fa2c06b
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/enterprise/BackupsEnabledPreferenceControllerTest.java
@@ -0,0 +1,71 @@
+/*
+ * Copyright (C) 2018 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.enterprise;
+
+import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.Mockito.when;
+
+import android.content.Context;
+import android.support.v7.preference.Preference;
+
+import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RuntimeEnvironment;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+public class BackupsEnabledPreferenceControllerTest {
+
+ private static final String KEY_BACKUPS_ENABLED = "backups_enabled";
+
+ private Context mContext;
+ private FakeFeatureFactory mFeatureFactory;
+
+ private BackupsEnabledPreferenceController mController;
+
+ @Before
+ public void setUp() {
+ mContext = RuntimeEnvironment.application;
+ mFeatureFactory = FakeFeatureFactory.setupForTest();
+ mController = new BackupsEnabledPreferenceController(mContext);
+ }
+
+ @Test
+ public void testIsAvailable() {
+ when(mFeatureFactory.enterprisePrivacyFeatureProvider.areBackupsMandatory())
+ .thenReturn(false);
+ assertThat(mController.isAvailable()).isFalse();
+
+ when(mFeatureFactory.enterprisePrivacyFeatureProvider.areBackupsMandatory())
+ .thenReturn(true);
+ assertThat(mController.isAvailable()).isTrue();
+ }
+
+ @Test
+ public void testHandlePreferenceTreeClick() {
+ assertThat(mController.handlePreferenceTreeClick(new Preference(mContext, null, 0, 0)))
+ .isFalse();
+ }
+
+ @Test
+ public void testGetPreferenceKey() {
+ assertThat(mController.getPreferenceKey()).isEqualTo(KEY_BACKUPS_ENABLED);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProviderImplTest.java
index b71a35eb277..40371d75a07 100644
--- a/tests/robotests/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/enterprise/EnterprisePrivacyFeatureProviderImplTest.java
@@ -28,6 +28,7 @@ import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.content.pm.UserInfo;
import android.content.res.Resources;
+import android.net.ConnectivityManager;
import android.net.ProxyInfo;
import android.os.UserHandle;
import android.os.UserManager;
@@ -36,7 +37,6 @@ import android.text.SpannableStringBuilder;
import com.android.settings.R;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
import com.android.settingslib.wrapper.PackageManagerWrapper;
import org.junit.Before;
@@ -72,7 +72,7 @@ public class EnterprisePrivacyFeatureProviderImplTest {
private @Mock PackageManagerWrapper mPackageManagerWrapper;
private @Mock PackageManager mPackageManager;
private @Mock UserManager mUserManager;
- private @Mock ConnectivityManagerWrapper mConnectivityManger;
+ private @Mock ConnectivityManager mConnectivityManger;
private Resources mResources;
private EnterprisePrivacyFeatureProvider mProvider;
@@ -347,6 +347,15 @@ public class EnterprisePrivacyFeatureProviderImplTest {
.isEqualTo(3);
}
+ @Test
+ public void testAreBackupsMandatory() {
+ assertThat(mProvider.areBackupsMandatory()).isFalse();
+ ComponentName transportComponent = new ComponentName("test", "test");
+ when(mDevicePolicyManager.getMandatoryBackupTransport())
+ .thenReturn(transportComponent);
+ assertThat(mProvider.areBackupsMandatory()).isTrue();
+ }
+
private void resetAndInitializePackageManagerWrapper() {
reset(mPackageManagerWrapper);
when(mPackageManagerWrapper.hasSystemFeature(PackageManager.FEATURE_DEVICE_ADMIN))
diff --git a/tests/robotests/src/com/android/settings/enterprise/EnterprisePrivacySettingsTest.java b/tests/robotests/src/com/android/settings/enterprise/EnterprisePrivacySettingsTest.java
index 5266fdec9b9..7bbe9bc1c12 100644
--- a/tests/robotests/src/com/android/settings/enterprise/EnterprisePrivacySettingsTest.java
+++ b/tests/robotests/src/com/android/settings/enterprise/EnterprisePrivacySettingsTest.java
@@ -98,7 +98,7 @@ public class EnterprisePrivacySettingsTest {
private void verifyPreferenceControllers(List controllers) {
assertThat(controllers).isNotNull();
- assertThat(controllers.size()).isEqualTo(17);
+ assertThat(controllers.size()).isEqualTo(18);
int position = 0;
assertThat(controllers.get(position++)).isInstanceOf(NetworkLogsPreferenceController.class);
assertThat(controllers.get(position++)).isInstanceOf(BugReportsPreferenceController.class);
@@ -125,6 +125,8 @@ public class EnterprisePrivacySettingsTest {
CaCertsCurrentUserPreferenceController.class);
assertThat(controllers.get(position++)).isInstanceOf(
CaCertsManagedProfilePreferenceController.class);
+ assertThat(controllers.get(position++)).isInstanceOf(
+ BackupsEnabledPreferenceController.class);
assertThat(controllers.get(position++)).isInstanceOf(
PreferenceCategoryController.class);
assertThat(controllers.get(position++)).isInstanceOf(
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/HighUsageDetectorTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/HighUsageDetectorTest.java
index 14627c5b63e..d983dfc7eed 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/HighUsageDetectorTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/HighUsageDetectorTest.java
@@ -17,8 +17,10 @@
package com.android.settings.fuelgauge.batterytip.detectors;
import static com.google.common.truth.Truth.assertThat;
+
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
@@ -48,7 +50,8 @@ import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
public class HighUsageDetectorTest {
- private static final int UID = 123;
+ private static final int UID_HIGH = 123;
+ private static final int UID_ZERO = 345;
private static final long SCREEN_ON_TIME_MS = DateUtils.HOUR_IN_MILLIS;
private Context mContext;
@Mock
@@ -56,7 +59,9 @@ public class HighUsageDetectorTest {
@Mock
private BatteryUtils mBatteryUtils;
@Mock
- private BatterySipper mBatterySipper;
+ private BatterySipper mHighBatterySipper;
+ @Mock
+ private BatterySipper mZeroBatterySipper;
@Mock
private HighUsageDataParser mDataParser;
@@ -75,14 +80,25 @@ public class HighUsageDetectorTest {
mHighUsageDetector.mBatteryUtils = mBatteryUtils;
mHighUsageDetector.mDataParser = mDataParser;
doNothing().when(mHighUsageDetector).parseBatteryData();
- doReturn(UID).when(mBatterySipper).getUid();
+ doReturn(UID_HIGH).when(mHighBatterySipper).getUid();
+ mHighBatterySipper.uidObj = mock(BatteryStats.Uid.class);
+ mZeroBatterySipper.uidObj = mock(BatteryStats.Uid.class);
+ doReturn(UID_ZERO).when(mZeroBatterySipper).getUid();
mAppInfo = new AppInfo.Builder()
- .setUid(UID)
+ .setUid(UID_HIGH)
.setScreenOnTimeMs(SCREEN_ON_TIME_MS)
.build();
+ doReturn(SCREEN_ON_TIME_MS).when(mBatteryUtils).getProcessTimeMs(
+ BatteryUtils.StatusType.FOREGROUND, mHighBatterySipper.uidObj,
+ BatteryStats.STATS_SINCE_CHARGED);
+ doReturn(0L).when(mBatteryUtils).getProcessTimeMs(
+ BatteryUtils.StatusType.FOREGROUND, mZeroBatterySipper.uidObj,
+ BatteryStats.STATS_SINCE_CHARGED);
+
mUsageList = new ArrayList<>();
- mUsageList.add(mBatterySipper);
+ mUsageList.add(mHighBatterySipper);
+ when(mBatteryStatsHelper.getUsageList()).thenReturn(mUsageList);
}
@Test
@@ -95,10 +111,16 @@ public class HighUsageDetectorTest {
@Test
public void testDetect_containsHighUsageApp_tipVisible() {
doReturn(true).when(mDataParser).isDeviceHeavilyUsed();
- when(mBatteryStatsHelper.getUsageList()).thenReturn(mUsageList);
- doReturn(SCREEN_ON_TIME_MS).when(mBatteryUtils).getProcessTimeMs(
- BatteryUtils.StatusType.FOREGROUND, mBatterySipper.uidObj,
- BatteryStats.STATS_SINCE_CHARGED);
+
+ final HighUsageTip highUsageTip = (HighUsageTip) mHighUsageDetector.detect();
+ assertThat(highUsageTip.isVisible()).isTrue();
+ assertThat(highUsageTip.getHighUsageAppList()).containsExactly(mAppInfo);
+ }
+
+ @Test
+ public void testDetect_containsHighUsageApp_removeZeroOne() {
+ doReturn(true).when(mDataParser).isDeviceHeavilyUsed();
+ mUsageList.add(mZeroBatterySipper);
final HighUsageTip highUsageTip = (HighUsageTip) mHighUsageDetector.detect();
assertThat(highUsageTip.isVisible()).isTrue();
diff --git a/tests/robotests/src/com/android/settings/ApnEditorTest.java b/tests/robotests/src/com/android/settings/network/ApnEditorTest.java
similarity index 99%
rename from tests/robotests/src/com/android/settings/ApnEditorTest.java
rename to tests/robotests/src/com/android/settings/network/ApnEditorTest.java
index aca460f89ae..f3315e5153a 100644
--- a/tests/robotests/src/com/android/settings/ApnEditorTest.java
+++ b/tests/robotests/src/com/android/settings/network/ApnEditorTest.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings;
+package com.android.settings.network;
import static com.google.common.truth.Truth.assertThat;
@@ -40,7 +40,8 @@ import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
-import com.android.settings.ApnEditor.ApnData;
+import com.android.settings.R;
+import com.android.settings.network.ApnEditor.ApnData;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
@@ -52,7 +53,6 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.robolectric.Robolectric;
-import org.robolectric.RuntimeEnvironment;
@RunWith(SettingsRobolectricTestRunner.class)
public class ApnEditorTest {
diff --git a/tests/robotests/src/com/android/settings/vpn2/VpnUtilsTest.java b/tests/robotests/src/com/android/settings/vpn2/VpnUtilsTest.java
index f354c43d23f..fd41c3682ee 100644
--- a/tests/robotests/src/com/android/settings/vpn2/VpnUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/vpn2/VpnUtilsTest.java
@@ -20,8 +20,9 @@ import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
+import android.net.ConnectivityManager;
+
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -30,7 +31,7 @@ import org.junit.runner.RunWith;
public final class VpnUtilsTest {
@Test
public void testIsAlwaysOnVpnSet() {
- final ConnectivityManagerWrapper cm = mock(ConnectivityManagerWrapper.class);
+ final ConnectivityManager cm = mock(ConnectivityManager.class);
when(cm.getAlwaysOnVpnPackageForUser(0)).thenReturn("com.example.vpn");
assertThat(VpnUtils.isAlwaysOnVpnSet(cm, 0)).isTrue();
diff --git a/tests/robotests/src/com/android/settings/wifi/WifiEnablerTest.java b/tests/robotests/src/com/android/settings/wifi/WifiEnablerTest.java
index b7bc33e9a46..66cbd3011e0 100644
--- a/tests/robotests/src/com/android/settings/wifi/WifiEnablerTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/WifiEnablerTest.java
@@ -26,7 +26,6 @@ import android.net.wifi.WifiManager;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.widget.SwitchWidgetController;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import org.junit.Before;
@@ -43,7 +42,7 @@ public class WifiEnablerTest {
@Mock
private WifiManager mWifiManager;
@Mock
- private ConnectivityManagerWrapper mConnectivityManager;
+ private ConnectivityManager mConnectivityManager;
private WifiEnabler mEnabler;
@@ -52,7 +51,7 @@ public class WifiEnablerTest {
MockitoAnnotations.initMocks(this);
when(mContext.getSystemService(Context.WIFI_SERVICE)).thenReturn(mWifiManager);
mEnabler = new WifiEnabler(mContext, mock(SwitchWidgetController.class),
- mock(MetricsFeatureProvider.class), mConnectivityManager);
+ mock(MetricsFeatureProvider.class), mConnectivityManager);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java
index 9c20d18aeba..d08f922a450 100644
--- a/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java
@@ -51,7 +51,6 @@ import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Handler;
import android.provider.Settings;
-import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceCategory;
import android.support.v7.preference.PreferenceScreen;
import android.view.View;
@@ -70,7 +69,6 @@ import com.android.settings.widget.ActionButtonPreference;
import com.android.settings.widget.ActionButtonPreferenceTest;
import com.android.settings.widget.EntityHeaderController;
import com.android.settings.wifi.WifiDetailPreference;
-import com.android.settings.wrapper.ConnectivityManagerWrapper;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.wifi.AccessPoint;
@@ -91,7 +89,6 @@ import java.net.Inet4Address;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Arrays;
-import java.util.List;
import java.util.stream.Collectors;
@RunWith(SettingsRobolectricTestRunner.class)
@@ -119,8 +116,6 @@ public class WifiDetailPreferenceControllerTest {
@Mock
private ConnectivityManager mockConnectivityManager;
@Mock
- private ConnectivityManagerWrapper mockConnectivityManagerWrapper;
- @Mock
private Network mockNetwork;
@Mock
private NetworkInfo mockNetworkInfo;
@@ -173,8 +168,6 @@ public class WifiDetailPreferenceControllerTest {
private ArgumentCaptor mCallbackCaptor;
@Captor
private ArgumentCaptor mForgetClickListener;
- @Captor
- private ArgumentCaptor mIpv6AddressCaptor;
private Context mContext;
private Lifecycle mLifecycle;
@@ -245,12 +238,9 @@ public class WifiDetailPreferenceControllerTest {
when(mockAccessPoint.getConfig()).thenReturn(mockWifiConfig);
when(mockAccessPoint.getLevel()).thenReturn(LEVEL);
when(mockAccessPoint.getSecurityString(false)).thenReturn(SECURITY);
-
- when(mockConnectivityManagerWrapper.getConnectivityManager())
- .thenReturn(mockConnectivityManager);
when(mockConnectivityManager.getNetworkInfo(any(Network.class)))
.thenReturn(mockNetworkInfo);
- doNothing().when(mockConnectivityManagerWrapper).registerNetworkCallback(
+ doNothing().when(mockConnectivityManager).registerNetworkCallback(
nullable(NetworkRequest.class), mCallbackCaptor.capture(), nullable(Handler.class));
mockButtonsPref = ActionButtonPreferenceTest.createMock();
when(mockButtonsPref.setButton1OnClickListener(mForgetClickListener.capture()))
@@ -281,7 +271,7 @@ public class WifiDetailPreferenceControllerTest {
private WifiDetailPreferenceController newWifiDetailPreferenceController() {
return new WifiDetailPreferenceController(
mockAccessPoint,
- mockConnectivityManagerWrapper,
+ mockConnectivityManager,
mContext,
mockFragment,
null, // Handler
@@ -362,7 +352,7 @@ public class WifiDetailPreferenceControllerTest {
public void networkCallback_shouldBeRegisteredOnResume() {
displayAndResume();
- verify(mockConnectivityManagerWrapper, times(1)).registerNetworkCallback(
+ verify(mockConnectivityManager, times(1)).registerNetworkCallback(
nullable(NetworkRequest.class), mCallbackCaptor.capture(), nullable(Handler.class));
}
@@ -779,8 +769,6 @@ public class WifiDetailPreferenceControllerTest {
displayAndResume();
- List addrs = mIpv6AddressCaptor.getAllValues();
-
String expectedAddresses = String.join("\n",
asString(Constants.IPV6_LINKLOCAL),
asString(Constants.IPV6_GLOBAL1),
@@ -826,7 +814,7 @@ public class WifiDetailPreferenceControllerTest {
ArgumentCaptor captor = ArgumentCaptor.forClass(OnClickListener.class);
verify(mockButtonsPref).setButton2OnClickListener(captor.capture());
captor.getValue().onClick(null);
- verify(mockConnectivityManagerWrapper).startCaptivePortalApp(mockNetwork);
+ verify(mockConnectivityManager).startCaptivePortalApp(mockNetwork);
verify(mockMetricsFeatureProvider)
.action(mockActivity, MetricsProto.MetricsEvent.ACTION_WIFI_SIGNIN);
}