summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe LaPenna <jlapenna@google.com>2017-03-03 10:22:36 -0800
committerJoe LaPenna <jlapenna@google.com>2017-03-03 10:42:21 -0800
commitf160dcf02bbbf55c8be2e1b890823cad4a082dd4 (patch)
treed789d20c008b6119b0e493416291f134d108dbcd
parent0ec2cba64094fe0964628a6ef8868cacfa73ce26 (diff)
downloadNetworkRecommendation-f160dcf02bbbf55c8be2e1b890823cad4a082dd4.tar.gz
Update tests.
Test: mma NetworkRecommendation RunNetworkRecommendationRoboTests Bug: 34944625 Change-Id: I0197a75d2eba15653b12a3cb4d6dbde7b121b291
-rw-r--r--robotests/src/com/android/networkrecommendation/util/SsidUtilTest.java27
-rw-r--r--src/com/android/networkrecommendation/util/SsidUtil.java17
2 files changed, 40 insertions, 4 deletions
diff --git a/robotests/src/com/android/networkrecommendation/util/SsidUtilTest.java b/robotests/src/com/android/networkrecommendation/util/SsidUtilTest.java
index 053c38d..7634524 100644
--- a/robotests/src/com/android/networkrecommendation/util/SsidUtilTest.java
+++ b/robotests/src/com/android/networkrecommendation/util/SsidUtilTest.java
@@ -16,9 +16,13 @@
package com.android.networkrecommendation.util;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import org.junit.Rule;
import org.junit.Test;
+import org.junit.rules.ExpectedException;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.annotation.Config;
@@ -28,11 +32,28 @@ import org.robolectric.annotation.Config;
@Config(manifest = "packages/services/NetworkRecommendation/AndroidManifest.xml", sdk = 23)
public class SsidUtilTest {
+ @Rule public ExpectedException thrownException = ExpectedException.none();
+
+ private static final String QUOTED_SSID = "\"foo\"";
+ private static final String UNQUOTED_SSID = "foo";
+
@Test
public void testQuote() {
- assertEquals("\"foo\"", SsidUtil.quoteSsid("foo"));
- assertEquals("\"foo\"", SsidUtil.quoteSsid("\"foo\""));
- assertEquals("\"foo\"", SsidUtil.quoteSsid(SsidUtil.quoteSsid("foo")));
+ assertEquals(QUOTED_SSID, SsidUtil.quoteSsid(UNQUOTED_SSID));
+ assertEquals(QUOTED_SSID, SsidUtil.quoteSsid(QUOTED_SSID));
+ assertEquals(QUOTED_SSID, SsidUtil.quoteSsid(SsidUtil.quoteSsid(UNQUOTED_SSID)));
assertNull(SsidUtil.quoteSsid(null));
}
+
+ @Test
+ public void testVerify() {
+ assertFalse(SsidUtil.isValidQuotedSsid(UNQUOTED_SSID));
+ assertTrue(SsidUtil.isValidQuotedSsid(QUOTED_SSID));
+ }
+
+ @Test
+ public void testCheck() {
+ thrownException.expect(IllegalArgumentException.class);
+ SsidUtil.checkIsValidQuotedSsid(UNQUOTED_SSID);
+ }
}
diff --git a/src/com/android/networkrecommendation/util/SsidUtil.java b/src/com/android/networkrecommendation/util/SsidUtil.java
index 5fc66d9..e1f9503 100644
--- a/src/com/android/networkrecommendation/util/SsidUtil.java
+++ b/src/com/android/networkrecommendation/util/SsidUtil.java
@@ -35,7 +35,7 @@ public final class SsidUtil {
if (ssid == null) {
return null;
}
- if (ssid.startsWith("\"")) {
+ if (isValidQuotedSsid(ssid)) {
return ssid;
}
return "\"" + ssid + "\"";
@@ -61,6 +61,21 @@ public final class SsidUtil {
}
}
+ /**
+ * Returns true if the given string will be accepted as an SSID by WifiKey, especially meaning
+ * it is quoted.
+ */
+ public static boolean isValidQuotedSsid(@Nullable String ssid) {
+ return ssid != null && ssid.startsWith("\"") && ssid.endsWith("\"");
+ }
+
+ /** Thows IllegalArgumentException if the given string cannot be used for an SSID in WifiKey. */
+ public static void checkIsValidQuotedSsid(String ssid) {
+ if (!isValidQuotedSsid(ssid)) {
+ throw new IllegalArgumentException("SSID " + ssid + " expected to be quoted");
+ }
+ }
+
// Can't instantiate.
private SsidUtil() {}
}