diff options
-rw-r--r-- | libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java | 5 | ||||
-rw-r--r-- | libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java | 18 |
2 files changed, 23 insertions, 0 deletions
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java index 62bbe0f96..d1addede3 100644 --- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java +++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java @@ -696,6 +696,11 @@ class Utils { /** Find the annotation of specified id in rawText and linkify it with helpUriString. */ static CharSequence linkifyAnnotation(Context context, CharSequence rawText, String id, String helpUriString) { + // Return original string when helpUriString is empty. + if (TextUtils.isEmpty(helpUriString)) { + return rawText; + } + SpannableString spannableText = new SpannableString(rawText); Annotation[] annotations = spannableText.getSpans(0, spannableText.length(), Annotation.class); diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java index 5532a2304..b009ac066 100644 --- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java +++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java @@ -415,6 +415,24 @@ public class UtilsTest { } @Test + public void testLinkifyAnnotation_annotationWithEmptyUriString_returnOriginalText() { + final String annotationId = "url"; + final CharSequence testText = "test text "; + final CharSequence testLink = "Learn More"; + final CharSequence expectedText = "test text Learn More"; + final SpannableStringBuilder builder = new SpannableStringBuilder(testText); + builder.append(testLink, new Annotation("key", annotationId), + Spanned.SPAN_INCLUSIVE_INCLUSIVE); + + final CharSequence output = linkifyAnnotation(mMockContext, builder, annotationId, ""); + + final SpannableString outputSpannableString = new SpannableString(output); + assertEquals(output.toString(), expectedText.toString()); + assertEquals(outputSpannableString.getSpans(0, outputSpannableString.length(), + ClickableSpan.class).length, 0); + } + + @Test public void testGetNetworkSelectionDescription_disabledWrongPassword_showsWrongPasswordLabel() { String expected = " (NETWORK_SELECTION_TEMPORARY_DISABLED 1:02:03) " + "NETWORK_SELECTION_DISABLED_BY_WRONG_PASSWORD=2"; |