summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java5
-rw-r--r--libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java18
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";