Merge "Use raw string when setting wifi preference title."

This commit is contained in:
TreeHugger Robot
2017-09-06 06:07:01 +00:00
committed by Android (Google) Code Review
2 changed files with 34 additions and 13 deletions

View File

@@ -155,7 +155,7 @@ public class AccessPointPreference extends Preference {
drawable.setLevel(mLevel);
}
mTitleView = (TextView) view.findViewById(com.android.internal.R.id.title);
mTitleView = (TextView) view.findViewById(android.R.id.title);
if (mTitleView != null) {
// Attach to the end of the title view
mTitleView.setCompoundDrawablesRelativeWithIntrinsicBounds(null, null, mBadge, null);
@@ -224,12 +224,7 @@ public class AccessPointPreference extends Preference {
* Updates the title and summary; may indirectly call notifyChanged().
*/
public void refresh() {
if (mForSavedNetworks) {
setTitle(mAccessPoint.getConfigName());
} else {
setTitle(mAccessPoint.getSsid());
}
setTitle(this, mAccessPoint, mForSavedNetworks);
final Context context = getContext();
int level = mAccessPoint.getLevel();
int wifiSpeed = mAccessPoint.getSpeed();
@@ -258,6 +253,15 @@ public class AccessPointPreference extends Preference {
}
}
@VisibleForTesting
static void setTitle(AccessPointPreference preference, AccessPoint ap, boolean savedNetworks) {
if (savedNetworks) {
preference.setTitle(ap.getConfigName());
} else {
preference.setTitle(ap.getSsidStr());
}
}
/**
* Helper method to generate content description string.
*/

View File

@@ -18,13 +18,12 @@ package com.android.settingslib.wifi;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.graphics.drawable.ColorDrawable;
import com.android.settingslib.SettingsLibRobolectricTestRunner;
import com.android.settingslib.TestConfig;
@@ -42,9 +41,12 @@ public class AccessPointPreferenceTest {
private Context mContext = RuntimeEnvironment.application;
@Mock private AccessPoint mockAccessPoint;
@Mock private AccessPointPreference.UserBadgeCache mockUserBadgeCache;
@Mock private AccessPointPreference.IconInjector mockIconInjector;
@Mock
private AccessPoint mockAccessPoint;
@Mock
private AccessPointPreference.UserBadgeCache mockUserBadgeCache;
@Mock
private AccessPointPreference.IconInjector mockIconInjector;
private AccessPointPreference createWithAccessPoint(AccessPoint accessPoint) {
return new AccessPointPreference(accessPoint, mContext, mockUserBadgeCache,
@@ -115,4 +117,19 @@ public class AccessPointPreferenceTest {
verify(mockIconInjector).getIcon(level);
}
@Test
public void refresh_setTitle_shouldUseSsidString() {
final String ssid = "ssid";
final String summary = "connected";
final int security = AccessPoint.SECURITY_WEP;
final AccessPoint ap = new TestAccessPointBuilder(mContext)
.setSsid(ssid)
.setSecurity(security)
.build();
final AccessPointPreference preference = mock(AccessPointPreference.class);
AccessPointPreference.setTitle(preference, ap, false /* savedNetwork */);
verify(preference).setTitle(ssid);
}
}