Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ea89a3cb authored by Chaohui Wang's avatar Chaohui Wang Committed by Automerger Merge Worker
Browse files

Not include user input in regex am: 4f5920c3

parents 6c8455c2 4f5920c3
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -76,8 +76,9 @@ public class SubscriptionUtil {
    static final String SUB_ID = "sub_id";
    @VisibleForTesting
    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_SUFFIXES = "\\s[0-9]+";
    private static final String REGEX_DISPLAY_NAME_SUFFIX = "\\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> sActiveResultsForTesting;
@@ -461,12 +462,12 @@ public class SubscriptionUtil {

    @VisibleForTesting
    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;
        }
        String regex = REGEX_DISPLAY_NAME_PREFIXES + originalName + REGEX_DISPLAY_NAME_SUFFIXES;
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(cachedDisplayName);
        String displayNameSuffix = cachedDisplayName.substring(originalName.length());
        Matcher matcher = REGEX_DISPLAY_NAME_SUFFIX_PATTERN.matcher(displayNameSuffix);
        return matcher.matches();
    }

+8 −0
Original line number Diff line number Diff line
@@ -635,6 +635,14 @@ public class SubscriptionUtilTest {
        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
    public void isConnectedToWifi_hasWiFi_returnTrue() {
        addNetworkTransportType(NetworkCapabilities.TRANSPORT_WIFI);