Not include user input in regex am: 4f5920c3f5
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/27048156 Change-Id: I2a3740b52b65ff650f309aa62a42e57f9ba8dffb Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -76,8 +76,9 @@ public class SubscriptionUtil {
|
|||||||
static final String SUB_ID = "sub_id";
|
static final String SUB_ID = "sub_id";
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
static final String KEY_UNIQUE_SUBSCRIPTION_DISPLAYNAME = "unique_subscription_displayName";
|
static final String KEY_UNIQUE_SUBSCRIPTION_DISPLAYNAME = "unique_subscription_displayName";
|
||||||
private static final String REGEX_DISPLAY_NAME_PREFIXES = "^";
|
private static final String REGEX_DISPLAY_NAME_SUFFIX = "\\s[0-9]+";
|
||||||
private static final String REGEX_DISPLAY_NAME_SUFFIXES = "\\s[0-9]+";
|
private static final Pattern REGEX_DISPLAY_NAME_SUFFIX_PATTERN =
|
||||||
|
Pattern.compile(REGEX_DISPLAY_NAME_SUFFIX);
|
||||||
|
|
||||||
private static List<SubscriptionInfo> sAvailableResultsForTesting;
|
private static List<SubscriptionInfo> sAvailableResultsForTesting;
|
||||||
private static List<SubscriptionInfo> sActiveResultsForTesting;
|
private static List<SubscriptionInfo> sActiveResultsForTesting;
|
||||||
@@ -461,12 +462,12 @@ public class SubscriptionUtil {
|
|||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
static boolean isValidCachedDisplayName(String cachedDisplayName, String originalName) {
|
static boolean isValidCachedDisplayName(String cachedDisplayName, String originalName) {
|
||||||
if (TextUtils.isEmpty(cachedDisplayName) || TextUtils.isEmpty(originalName)) {
|
if (TextUtils.isEmpty(cachedDisplayName) || TextUtils.isEmpty(originalName)
|
||||||
|
|| !cachedDisplayName.startsWith(originalName)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
String regex = REGEX_DISPLAY_NAME_PREFIXES + originalName + REGEX_DISPLAY_NAME_SUFFIXES;
|
String displayNameSuffix = cachedDisplayName.substring(originalName.length());
|
||||||
Pattern pattern = Pattern.compile(regex);
|
Matcher matcher = REGEX_DISPLAY_NAME_SUFFIX_PATTERN.matcher(displayNameSuffix);
|
||||||
Matcher matcher = pattern.matcher(cachedDisplayName);
|
|
||||||
return matcher.matches();
|
return matcher.matches();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -635,6 +635,14 @@ public class SubscriptionUtilTest {
|
|||||||
assertThat(SubscriptionUtil.isValidCachedDisplayName(cacheString, originalName)).isFalse();
|
assertThat(SubscriptionUtil.isValidCachedDisplayName(cacheString, originalName)).isFalse();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void isValidCachedDisplayName_withBrackets_noCrash() {
|
||||||
|
String originalName = "originalName(";
|
||||||
|
String cacheString = "originalName( 1234";
|
||||||
|
|
||||||
|
assertThat(SubscriptionUtil.isValidCachedDisplayName(cacheString, originalName)).isTrue();
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void isConnectedToWifi_hasWiFi_returnTrue() {
|
public void isConnectedToWifi_hasWiFi_returnTrue() {
|
||||||
addNetworkTransportType(NetworkCapabilities.TRANSPORT_WIFI);
|
addNetworkTransportType(NetworkCapabilities.TRANSPORT_WIFI);
|
||||||
|
Reference in New Issue
Block a user