Merge changes I034a9f0a,Iad5ec577 into pi-dev
* changes: Get rid of UserPackageWrapper util. Get rid of extra whitespace under divider lines
This commit is contained in:
committed by
Android (Google) Code Review
commit
dd5977901d
@@ -24,48 +24,41 @@
|
|||||||
<com.android.settings.applications.LayoutPreference
|
<com.android.settings.applications.LayoutPreference
|
||||||
android:key="battery_header"
|
android:key="battery_header"
|
||||||
android:selectable="false"
|
android:selectable="false"
|
||||||
android:layout="@layout/battery_header"/>
|
android:layout="@layout/battery_header" />
|
||||||
|
|
||||||
<PreferenceCategory
|
<PreferenceCategory
|
||||||
android:key="battery_tip"
|
android:key="battery_tip"
|
||||||
android:layout="@layout/preference_category_no_title"/>
|
android:layout="@layout/preference_category_no_title" />
|
||||||
|
|
||||||
<PreferenceCategory
|
<Preference
|
||||||
android:key="power_management">
|
android:fragment="com.android.settings.fuelgauge.batterysaver.BatterySaverSettings"
|
||||||
|
android:key="battery_saver_summary"
|
||||||
|
android:title="@string/battery_saver"
|
||||||
|
settings:controller="com.android.settings.fuelgauge.BatterySaverController"
|
||||||
|
settings:platform_slice="true"
|
||||||
|
settings:allowDividerAbove="true" />
|
||||||
|
|
||||||
<Preference
|
<Preference
|
||||||
android:fragment="com.android.settings.fuelgauge.batterysaver.BatterySaverSettings"
|
android:fragment="com.android.settings.fuelgauge.SmartBatterySettings"
|
||||||
android:key="battery_saver_summary"
|
android:key="smart_battery_manager"
|
||||||
android:title="@string/battery_saver"
|
android:title="@string/smart_battery_manager_title"
|
||||||
settings:controller="com.android.settings.fuelgauge.BatterySaverController"
|
settings:controller="com.android.settings.fuelgauge.batterytip.BatteryManagerPreferenceController" />
|
||||||
settings:platform_slice="true"/>
|
|
||||||
|
|
||||||
<Preference
|
<SwitchPreference
|
||||||
android:fragment="com.android.settings.fuelgauge.SmartBatterySettings"
|
android:key="battery_percentage"
|
||||||
android:key="smart_battery_manager"
|
android:title="@string/battery_percentage"
|
||||||
android:title="@string/smart_battery_manager_title"
|
android:summary="@string/battery_percentage_description" />
|
||||||
settings:controller="com.android.settings.fuelgauge.batterytip.BatteryManagerPreferenceController"/>
|
|
||||||
|
|
||||||
<SwitchPreference
|
|
||||||
android:key="battery_percentage"
|
|
||||||
android:title="@string/battery_percentage"
|
|
||||||
android:summary="@string/battery_percentage_description"/>
|
|
||||||
|
|
||||||
</PreferenceCategory>
|
<com.android.settings.fuelgauge.PowerGaugePreference
|
||||||
|
android:key="last_full_charge"
|
||||||
|
android:title="@string/battery_last_full_charge"
|
||||||
|
android:selectable="false"
|
||||||
|
settings:allowDividerAbove="true" />
|
||||||
|
|
||||||
<PreferenceCategory
|
<com.android.settings.fuelgauge.PowerGaugePreference
|
||||||
android:key="device_usage_list">
|
android:key="screen_usage"
|
||||||
|
android:title="@string/device_screen_usage"
|
||||||
<com.android.settings.fuelgauge.PowerGaugePreference
|
android:selectable="false" />
|
||||||
android:key="last_full_charge"
|
|
||||||
android:title="@string/battery_last_full_charge"
|
|
||||||
android:selectable="false"/>
|
|
||||||
|
|
||||||
<com.android.settings.fuelgauge.PowerGaugePreference
|
|
||||||
android:key="screen_usage"
|
|
||||||
android:title="@string/device_screen_usage"
|
|
||||||
android:selectable="false"/>
|
|
||||||
|
|
||||||
</PreferenceCategory>
|
|
||||||
|
|
||||||
</PreferenceScreen>
|
</PreferenceScreen>
|
||||||
|
@@ -1,71 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (C) 2012 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;
|
|
||||||
|
|
||||||
import android.content.Context;
|
|
||||||
import android.text.TextUtils;
|
|
||||||
import android.util.AttributeSet;
|
|
||||||
import android.view.View;
|
|
||||||
import android.widget.EditText;
|
|
||||||
|
|
||||||
import com.android.settingslib.CustomEditTextPreference;
|
|
||||||
|
|
||||||
public class SelectableEditTextPreference extends CustomEditTextPreference {
|
|
||||||
|
|
||||||
private int mSelectionMode;
|
|
||||||
|
|
||||||
public static final int SELECTION_CURSOR_END = 0;
|
|
||||||
public static final int SELECTION_CURSOR_START = 1;
|
|
||||||
public static final int SELECTION_SELECT_ALL = 2;
|
|
||||||
|
|
||||||
public SelectableEditTextPreference(Context context, AttributeSet attrs) {
|
|
||||||
super(context, attrs);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Sets the selection mode for the text when it shows up in the dialog
|
|
||||||
* @hide
|
|
||||||
* @param selectionMode can be SELECTION_CURSOR_START, SELECTION_CURSOR_END or
|
|
||||||
* SELECTION_SELECT_ALL. Default is SELECTION_CURSOR_END
|
|
||||||
*/
|
|
||||||
public void setInitialSelectionMode(int selectionMode) {
|
|
||||||
mSelectionMode = selectionMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onBindDialogView(View view) {
|
|
||||||
super.onBindDialogView(view);
|
|
||||||
|
|
||||||
EditText editText = getEditText();
|
|
||||||
// Set the selection based on the mSelectionMode
|
|
||||||
int length = editText.getText() != null ? editText.getText().length() : 0;
|
|
||||||
if (!TextUtils.isEmpty(editText.getText())) {
|
|
||||||
switch (mSelectionMode) {
|
|
||||||
case SELECTION_CURSOR_END:
|
|
||||||
editText.setSelection(length);
|
|
||||||
break;
|
|
||||||
case SELECTION_CURSOR_START:
|
|
||||||
editText.setSelection(0);
|
|
||||||
break;
|
|
||||||
case SELECTION_SELECT_ALL:
|
|
||||||
editText.setSelection(0, length);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@@ -27,11 +27,11 @@ import android.content.pm.PackageItemInfo;
|
|||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.support.annotation.VisibleForTesting;
|
import android.support.annotation.VisibleForTesting;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
|
import android.webkit.UserPackage;
|
||||||
|
|
||||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.applications.defaultapps.DefaultAppPickerFragment;
|
import com.android.settings.applications.defaultapps.DefaultAppPickerFragment;
|
||||||
import com.android.settings.wrapper.UserPackageWrapper;
|
|
||||||
import com.android.settingslib.applications.DefaultAppInfo;
|
import com.android.settingslib.applications.DefaultAppInfo;
|
||||||
import com.android.settingslib.wrapper.PackageManagerWrapper;
|
import com.android.settingslib.wrapper.PackageManagerWrapper;
|
||||||
|
|
||||||
@@ -150,9 +150,9 @@ public class WebViewAppPicker extends DefaultAppPickerFragment {
|
|||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
String getDisabledReason(WebViewUpdateServiceWrapper webviewUpdateServiceWrapper,
|
String getDisabledReason(WebViewUpdateServiceWrapper webviewUpdateServiceWrapper,
|
||||||
Context context, String packageName) {
|
Context context, String packageName) {
|
||||||
List<UserPackageWrapper> userPackages =
|
List<UserPackage> userPackages =
|
||||||
webviewUpdateServiceWrapper.getPackageInfosAllUsers(context, packageName);
|
webviewUpdateServiceWrapper.getPackageInfosAllUsers(context, packageName);
|
||||||
for (UserPackageWrapper userPackage : userPackages) {
|
for (UserPackage userPackage : userPackages) {
|
||||||
if (!userPackage.isInstalledPackage()) {
|
if (!userPackage.isInstalledPackage()) {
|
||||||
// Package uninstalled/hidden
|
// Package uninstalled/hidden
|
||||||
return context.getString(
|
return context.getString(
|
||||||
|
@@ -28,8 +28,6 @@ import android.webkit.WebViewProviderInfo;
|
|||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.wrapper.UserPackageWrapper;
|
|
||||||
import com.android.settings.wrapper.UserPackageWrapperImpl;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -37,7 +35,8 @@ import java.util.List;
|
|||||||
public class WebViewUpdateServiceWrapper {
|
public class WebViewUpdateServiceWrapper {
|
||||||
private static final String TAG = "WVUSWrapper";
|
private static final String TAG = "WVUSWrapper";
|
||||||
|
|
||||||
public WebViewUpdateServiceWrapper() {}
|
public WebViewUpdateServiceWrapper() {
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Fetch the package currently used as WebView implementation.
|
* Fetch the package currently used as WebView implementation.
|
||||||
@@ -75,6 +74,7 @@ public class WebViewUpdateServiceWrapper {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Change WebView provider to {@param packageName}.
|
* Change WebView provider to {@param packageName}.
|
||||||
|
*
|
||||||
* @return whether the change succeeded.
|
* @return whether the change succeeded.
|
||||||
*/
|
*/
|
||||||
public boolean setWebViewProvider(String packageName) {
|
public boolean setWebViewProvider(String packageName) {
|
||||||
@@ -90,14 +90,8 @@ public class WebViewUpdateServiceWrapper {
|
|||||||
/**
|
/**
|
||||||
* Fetch PackageInfos for the package named {@param packageName} for all users on the device.
|
* Fetch PackageInfos for the package named {@param packageName} for all users on the device.
|
||||||
*/
|
*/
|
||||||
public List<UserPackageWrapper> getPackageInfosAllUsers(Context context, String packageName) {
|
public List<UserPackage> getPackageInfosAllUsers(Context context, String packageName) {
|
||||||
List<UserPackageWrapper> userPackageWrappers = new ArrayList<>();
|
return UserPackage.getPackageInfosAllUsers(context, packageName, PACKAGE_FLAGS);
|
||||||
List<UserPackage> userPackages =
|
|
||||||
UserPackage.getPackageInfosAllUsers(context, packageName, PACKAGE_FLAGS);
|
|
||||||
for (UserPackage userPackage : userPackages) {
|
|
||||||
userPackageWrappers.add(new UserPackageWrapperImpl(userPackage));
|
|
||||||
}
|
|
||||||
return userPackageWrappers;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -1,29 +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.pm.PackageInfo;
|
|
||||||
import android.content.pm.UserInfo;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Wrapper class around android.webkit.UserPackage - to be able to use UserPackage in Robolectric
|
|
||||||
* tests (such tests currently don't support mocking hidden classes).
|
|
||||||
*/
|
|
||||||
public interface UserPackageWrapper {
|
|
||||||
UserInfo getUserInfo();
|
|
||||||
PackageInfo getPackageInfo();
|
|
||||||
boolean isEnabledPackage();
|
|
||||||
boolean isInstalledPackage();
|
|
||||||
}
|
|
@@ -1,46 +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.pm.PackageInfo;
|
|
||||||
import android.content.pm.UserInfo;
|
|
||||||
import android.webkit.UserPackage;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Default implementation of UserPackageWrapper.
|
|
||||||
*/
|
|
||||||
public class UserPackageWrapperImpl implements UserPackageWrapper {
|
|
||||||
private final UserPackage mUserPackage;
|
|
||||||
|
|
||||||
public UserPackageWrapperImpl(UserPackage userPackage) {
|
|
||||||
mUserPackage = userPackage;
|
|
||||||
}
|
|
||||||
|
|
||||||
public UserInfo getUserInfo() {
|
|
||||||
return mUserPackage.getUserInfo();
|
|
||||||
}
|
|
||||||
|
|
||||||
public PackageInfo getPackageInfo() {
|
|
||||||
return mUserPackage.getPackageInfo();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isEnabledPackage() {
|
|
||||||
return mUserPackage.isEnabledPackage();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isInstalledPackage() {
|
|
||||||
return mUserPackage.isInstalledPackage();
|
|
||||||
}
|
|
||||||
}
|
|
@@ -39,10 +39,10 @@ import android.content.pm.PackageItemInfo;
|
|||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.content.pm.UserInfo;
|
import android.content.pm.UserInfo;
|
||||||
import android.os.UserManager;
|
import android.os.UserManager;
|
||||||
|
import android.webkit.UserPackage;
|
||||||
|
|
||||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||||
import com.android.settings.widget.RadioButtonPreference;
|
import com.android.settings.widget.RadioButtonPreference;
|
||||||
import com.android.settings.wrapper.UserPackageWrapper;
|
|
||||||
import com.android.settingslib.applications.DefaultAppInfo;
|
import com.android.settingslib.applications.DefaultAppInfo;
|
||||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||||
import com.android.settingslib.wrapper.PackageManagerWrapper;
|
import com.android.settingslib.wrapper.PackageManagerWrapper;
|
||||||
@@ -135,7 +135,7 @@ public class WebViewAppPickerTest {
|
|||||||
|
|
||||||
private void testSuccessfulClickChangesProvider() {
|
private void testSuccessfulClickChangesProvider() {
|
||||||
when(mWvusWrapper.getValidWebViewApplicationInfos(any()))
|
when(mWvusWrapper.getValidWebViewApplicationInfos(any()))
|
||||||
.thenReturn(Collections.singletonList(createApplicationInfo(DEFAULT_PACKAGE_NAME)));
|
.thenReturn(Collections.singletonList(createApplicationInfo(DEFAULT_PACKAGE_NAME)));
|
||||||
when(mWvusWrapper.setWebViewProvider(eq(DEFAULT_PACKAGE_NAME))).thenReturn(true);
|
when(mWvusWrapper.setWebViewProvider(eq(DEFAULT_PACKAGE_NAME))).thenReturn(true);
|
||||||
|
|
||||||
RadioButtonPreference defaultPackagePref = mock(RadioButtonPreference.class);
|
RadioButtonPreference defaultPackagePref = mock(RadioButtonPreference.class);
|
||||||
@@ -149,7 +149,7 @@ public class WebViewAppPickerTest {
|
|||||||
|
|
||||||
private void testFailingClickUpdatesSetting() {
|
private void testFailingClickUpdatesSetting() {
|
||||||
when(mWvusWrapper.getValidWebViewApplicationInfos(any()))
|
when(mWvusWrapper.getValidWebViewApplicationInfos(any()))
|
||||||
.thenReturn(Collections.singletonList(createApplicationInfo(DEFAULT_PACKAGE_NAME)));
|
.thenReturn(Collections.singletonList(createApplicationInfo(DEFAULT_PACKAGE_NAME)));
|
||||||
when(mWvusWrapper.setWebViewProvider(eq(DEFAULT_PACKAGE_NAME))).thenReturn(false);
|
when(mWvusWrapper.setWebViewProvider(eq(DEFAULT_PACKAGE_NAME))).thenReturn(false);
|
||||||
|
|
||||||
RadioButtonPreference defaultPackagePref = mock(RadioButtonPreference.class);
|
RadioButtonPreference defaultPackagePref = mock(RadioButtonPreference.class);
|
||||||
@@ -229,24 +229,24 @@ public class WebViewAppPickerTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDisabledReasonNullIfPackagesOk() {
|
public void testDisabledReasonNullIfPackagesOk() {
|
||||||
UserPackageWrapper packageForFirstUser = mock(UserPackageWrapper.class);
|
UserPackage packageForFirstUser = mock(UserPackage.class);
|
||||||
when(packageForFirstUser.isEnabledPackage()).thenReturn(true);
|
when(packageForFirstUser.isEnabledPackage()).thenReturn(true);
|
||||||
when(packageForFirstUser.isInstalledPackage()).thenReturn(true);
|
when(packageForFirstUser.isInstalledPackage()).thenReturn(true);
|
||||||
|
|
||||||
UserPackageWrapper packageForSecondUser = mock(UserPackageWrapper.class);
|
UserPackage packageForSecondUser = mock(UserPackage.class);
|
||||||
when(packageForSecondUser.isEnabledPackage()).thenReturn(true);
|
when(packageForSecondUser.isEnabledPackage()).thenReturn(true);
|
||||||
when(packageForSecondUser.isInstalledPackage()).thenReturn(true);
|
when(packageForSecondUser.isInstalledPackage()).thenReturn(true);
|
||||||
|
|
||||||
WebViewUpdateServiceWrapper wvusWrapper = mock(WebViewUpdateServiceWrapper.class);
|
WebViewUpdateServiceWrapper wvusWrapper = mock(WebViewUpdateServiceWrapper.class);
|
||||||
when(wvusWrapper.getPackageInfosAllUsers(any(), eq(DEFAULT_PACKAGE_NAME)))
|
when(wvusWrapper.getPackageInfosAllUsers(any(), eq(DEFAULT_PACKAGE_NAME)))
|
||||||
.thenReturn(Arrays.asList(packageForFirstUser, packageForSecondUser));
|
.thenReturn(Arrays.asList(packageForFirstUser, packageForSecondUser));
|
||||||
|
|
||||||
assertThat(mPicker.getDisabledReason(wvusWrapper, mContext, DEFAULT_PACKAGE_NAME)).isNull();
|
assertThat(mPicker.getDisabledReason(wvusWrapper, mContext, DEFAULT_PACKAGE_NAME)).isNull();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDisabledReasonForSingleUserDisabledPackage() {
|
public void testDisabledReasonForSingleUserDisabledPackage() {
|
||||||
UserPackageWrapper packageForFirstUser = mock(UserPackageWrapper.class);
|
UserPackage packageForFirstUser = mock(UserPackage.class);
|
||||||
when(packageForFirstUser.isEnabledPackage()).thenReturn(false);
|
when(packageForFirstUser.isEnabledPackage()).thenReturn(false);
|
||||||
when(packageForFirstUser.isInstalledPackage()).thenReturn(true);
|
when(packageForFirstUser.isInstalledPackage()).thenReturn(true);
|
||||||
when(packageForFirstUser.getUserInfo()).thenReturn(mFirstUser);
|
when(packageForFirstUser.getUserInfo()).thenReturn(mFirstUser);
|
||||||
@@ -257,12 +257,12 @@ public class WebViewAppPickerTest {
|
|||||||
|
|
||||||
final String expectedReason = String.format("(disabled for user %s)", mFirstUser.name);
|
final String expectedReason = String.format("(disabled for user %s)", mFirstUser.name);
|
||||||
assertThat(mPicker.getDisabledReason(wvusWrapper, mContext, DEFAULT_PACKAGE_NAME))
|
assertThat(mPicker.getDisabledReason(wvusWrapper, mContext, DEFAULT_PACKAGE_NAME))
|
||||||
.isEqualTo(expectedReason);
|
.isEqualTo(expectedReason);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDisabledReasonForSingleUserUninstalledPackage() {
|
public void testDisabledReasonForSingleUserUninstalledPackage() {
|
||||||
UserPackageWrapper packageForFirstUser = mock(UserPackageWrapper.class);
|
UserPackage packageForFirstUser = mock(UserPackage.class);
|
||||||
when(packageForFirstUser.isEnabledPackage()).thenReturn(true);
|
when(packageForFirstUser.isEnabledPackage()).thenReturn(true);
|
||||||
when(packageForFirstUser.isInstalledPackage()).thenReturn(false);
|
when(packageForFirstUser.isInstalledPackage()).thenReturn(false);
|
||||||
when(packageForFirstUser.getUserInfo()).thenReturn(mFirstUser);
|
when(packageForFirstUser.getUserInfo()).thenReturn(mFirstUser);
|
||||||
@@ -273,17 +273,17 @@ public class WebViewAppPickerTest {
|
|||||||
|
|
||||||
final String expectedReason = String.format("(uninstalled for user %s)", mFirstUser.name);
|
final String expectedReason = String.format("(uninstalled for user %s)", mFirstUser.name);
|
||||||
assertThat(mPicker.getDisabledReason(wvusWrapper, mContext, DEFAULT_PACKAGE_NAME))
|
assertThat(mPicker.getDisabledReason(wvusWrapper, mContext, DEFAULT_PACKAGE_NAME))
|
||||||
.isEqualTo(expectedReason);
|
.isEqualTo(expectedReason);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDisabledReasonSeveralUsers() {
|
public void testDisabledReasonSeveralUsers() {
|
||||||
UserPackageWrapper packageForFirstUser = mock(UserPackageWrapper.class);
|
UserPackage packageForFirstUser = mock(UserPackage.class);
|
||||||
when(packageForFirstUser.isEnabledPackage()).thenReturn(false);
|
when(packageForFirstUser.isEnabledPackage()).thenReturn(false);
|
||||||
when(packageForFirstUser.isInstalledPackage()).thenReturn(true);
|
when(packageForFirstUser.isInstalledPackage()).thenReturn(true);
|
||||||
when(packageForFirstUser.getUserInfo()).thenReturn(mFirstUser);
|
when(packageForFirstUser.getUserInfo()).thenReturn(mFirstUser);
|
||||||
|
|
||||||
UserPackageWrapper packageForSecondUser = mock(UserPackageWrapper.class);
|
UserPackage packageForSecondUser = mock(UserPackage.class);
|
||||||
when(packageForSecondUser.isEnabledPackage()).thenReturn(true);
|
when(packageForSecondUser.isEnabledPackage()).thenReturn(true);
|
||||||
when(packageForSecondUser.isInstalledPackage()).thenReturn(false);
|
when(packageForSecondUser.isInstalledPackage()).thenReturn(false);
|
||||||
when(packageForSecondUser.getUserInfo()).thenReturn(mSecondUser);
|
when(packageForSecondUser.getUserInfo()).thenReturn(mSecondUser);
|
||||||
@@ -294,7 +294,7 @@ public class WebViewAppPickerTest {
|
|||||||
|
|
||||||
final String expectedReason = String.format("(disabled for user %s)", mFirstUser.name);
|
final String expectedReason = String.format("(disabled for user %s)", mFirstUser.name);
|
||||||
assertThat(mPicker.getDisabledReason(wvusWrapper, mContext, DEFAULT_PACKAGE_NAME))
|
assertThat(mPicker.getDisabledReason(wvusWrapper, mContext, DEFAULT_PACKAGE_NAME))
|
||||||
.isEqualTo(expectedReason);
|
.isEqualTo(expectedReason);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -303,12 +303,12 @@ public class WebViewAppPickerTest {
|
|||||||
*/
|
*/
|
||||||
@Test
|
@Test
|
||||||
public void testDisabledReasonUninstalledAndDisabled() {
|
public void testDisabledReasonUninstalledAndDisabled() {
|
||||||
UserPackageWrapper packageForFirstUser = mock(UserPackageWrapper.class);
|
UserPackage packageForFirstUser = mock(UserPackage.class);
|
||||||
when(packageForFirstUser.isEnabledPackage()).thenReturn(false);
|
when(packageForFirstUser.isEnabledPackage()).thenReturn(false);
|
||||||
when(packageForFirstUser.isInstalledPackage()).thenReturn(false);
|
when(packageForFirstUser.isInstalledPackage()).thenReturn(false);
|
||||||
when(packageForFirstUser.getUserInfo()).thenReturn(mFirstUser);
|
when(packageForFirstUser.getUserInfo()).thenReturn(mFirstUser);
|
||||||
|
|
||||||
UserPackageWrapper packageForSecondUser = mock(UserPackageWrapper.class);
|
UserPackage packageForSecondUser = mock(UserPackage.class);
|
||||||
when(packageForSecondUser.isEnabledPackage()).thenReturn(true);
|
when(packageForSecondUser.isEnabledPackage()).thenReturn(true);
|
||||||
when(packageForSecondUser.isInstalledPackage()).thenReturn(true);
|
when(packageForSecondUser.isInstalledPackage()).thenReturn(true);
|
||||||
when(packageForSecondUser.getUserInfo()).thenReturn(mSecondUser);
|
when(packageForSecondUser.getUserInfo()).thenReturn(mSecondUser);
|
||||||
@@ -319,7 +319,7 @@ public class WebViewAppPickerTest {
|
|||||||
|
|
||||||
final String expectedReason = String.format("(uninstalled for user %s)", mFirstUser.name);
|
final String expectedReason = String.format("(uninstalled for user %s)", mFirstUser.name);
|
||||||
assertThat(mPicker.getDisabledReason(wvusWrapper, mContext, DEFAULT_PACKAGE_NAME))
|
assertThat(mPicker.getDisabledReason(wvusWrapper, mContext, DEFAULT_PACKAGE_NAME))
|
||||||
.isEqualTo(expectedReason);
|
.isEqualTo(expectedReason);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -343,7 +343,8 @@ public class WebViewAppPickerTest {
|
|||||||
RadioButtonPreference mockPreference = mock(RadioButtonPreference.class);
|
RadioButtonPreference mockPreference = mock(RadioButtonPreference.class);
|
||||||
mPicker.bindPreference(mockPreference, DEFAULT_PACKAGE_NAME, webviewAppInfo, null);
|
mPicker.bindPreference(mockPreference, DEFAULT_PACKAGE_NAME, webviewAppInfo, null);
|
||||||
mPicker
|
mPicker
|
||||||
.bindPreferenceExtra(mockPreference, DEFAULT_PACKAGE_NAME, webviewAppInfo, null, null);
|
.bindPreferenceExtra(mockPreference, DEFAULT_PACKAGE_NAME, webviewAppInfo, null,
|
||||||
|
null);
|
||||||
verify(mockPreference, times(1)).setTitle(eq("myPackage myVersionName"));
|
verify(mockPreference, times(1)).setTitle(eq("myPackage myVersionName"));
|
||||||
verify(mockPreference, times(1)).setTitle(any());
|
verify(mockPreference, times(1)).setTitle(any());
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user