ThreadUtils.postOnMainThread(() -> mPreference.setSummary(summary));
}
- private String getNameForVpnConfig(VpnConfig cfg, UserHandle user) {
+ @VisibleForTesting
+ String getNameForVpnConfig(VpnConfig cfg, UserHandle user) {
if (cfg.legacy) {
- return mContext.getString(R.string.bluetooth_connected);
+ return mContext.getString(R.string.wifi_display_status_connected);
}
// The package name for an active VPN is stored in the 'user' field of its VpnConfig
final String vpnPackage = cfg.user;
package com.android.settings.network;
+import static com.google.common.truth.Truth.assertThat;
import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static org.mockito.Matchers.any;
import android.net.IConnectivityManager;
import android.net.NetworkRequest;
import android.os.IBinder;
+import android.os.UserHandle;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
+import com.android.internal.net.VpnConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
import org.robolectric.shadows.ShadowServiceManager;
@RunWith(SettingsRobolectricTestRunner.class)
verify(mConnectivityManager).unregisterNetworkCallback(
any(ConnectivityManager.NetworkCallback.class));
}
+
+ @Test
+ public void getNameForVpnConfig_legacyVPNConfig_shouldSetSummaryToConnected() {
+ final VpnConfig config = new VpnConfig();
+ config.legacy = true;
+ final VpnPreferenceController controller =
+ new VpnPreferenceController(RuntimeEnvironment.application);
+
+ final String summary = controller.getNameForVpnConfig(config, UserHandle.CURRENT);
+
+ assertThat(summary).isEqualTo("Connected");
+ }
}