summaryrefslogtreecommitdiff
path: root/tests/unit/java/com/android/internal/net/VpnProfileTest.java
diff options
context:
space:
mode:
authorChiachang Wang <chiachangwang@google.com>2021-12-16 10:01:45 +0800
committerChiachang Wang <chiachangwang@google.com>2021-12-28 11:13:21 +0800
commitbb754d6cc59611cc033928786cc51d93afc1ef89 (patch)
tree081bef733e218ccb3a54bda7b27a3ac0daf5c245 /tests/unit/java/com/android/internal/net/VpnProfileTest.java
parent05e12e6f790570f9ea42f170fe73def3fd6917e1 (diff)
Allow VPN network agent to exclude local traffic
Add API to allow network agent to set whether the local traffic is excluded from the network. This commit is nonfunctional currently but only storing the boolean inside the NAI. Bug: 184750836 Test: atest FrameworksNetTests Change-Id: I3799216ac8fdf22eb4bcabc6c6136d8edbf69360
Diffstat (limited to 'tests/unit/java/com/android/internal/net/VpnProfileTest.java')
-rw-r--r--tests/unit/java/com/android/internal/net/VpnProfileTest.java23
1 files changed, 21 insertions, 2 deletions
diff --git a/tests/unit/java/com/android/internal/net/VpnProfileTest.java b/tests/unit/java/com/android/internal/net/VpnProfileTest.java
index a945a1f2cd..960a9f1b10 100644
--- a/tests/unit/java/com/android/internal/net/VpnProfileTest.java
+++ b/tests/unit/java/com/android/internal/net/VpnProfileTest.java
@@ -16,6 +16,7 @@
package com.android.internal.net;
+import static com.android.modules.utils.build.SdkLevel.isAtLeastT;
import static com.android.testutils.ParcelUtils.assertParcelSane;
import static org.junit.Assert.assertEquals;
@@ -48,6 +49,7 @@ public class VpnProfileTest {
private static final int ENCODED_INDEX_AUTH_PARAMS_INLINE = 23;
private static final int ENCODED_INDEX_RESTRICTED_TO_TEST_NETWORKS = 24;
+ private static final int ENCODED_INDEX_EXCLUDE_LOCAL_ROUTE = 25;
@Test
public void testDefaults() throws Exception {
@@ -126,7 +128,12 @@ public class VpnProfileTest {
@Test
public void testParcelUnparcel() {
- assertParcelSane(getSampleIkev2Profile(DUMMY_PROFILE_KEY), 23);
+ if (isAtLeastT()) {
+ // excludeLocalRoutes is added in T.
+ assertParcelSane(getSampleIkev2Profile(DUMMY_PROFILE_KEY), 24);
+ } else {
+ assertParcelSane(getSampleIkev2Profile(DUMMY_PROFILE_KEY), 23);
+ }
}
@Test
@@ -166,7 +173,8 @@ public class VpnProfileTest {
final String tooFewValues =
getEncodedDecodedIkev2ProfileMissingValues(
ENCODED_INDEX_AUTH_PARAMS_INLINE,
- ENCODED_INDEX_RESTRICTED_TO_TEST_NETWORKS /* missingIndices */);
+ ENCODED_INDEX_RESTRICTED_TO_TEST_NETWORKS,
+ ENCODED_INDEX_EXCLUDE_LOCAL_ROUTE /* missingIndices */);
assertNull(VpnProfile.decode(DUMMY_PROFILE_KEY, tooFewValues.getBytes()));
}
@@ -183,6 +191,17 @@ public class VpnProfileTest {
}
@Test
+ public void testEncodeDecodeMissingExcludeLocalRoutes() {
+ final String tooFewValues =
+ getEncodedDecodedIkev2ProfileMissingValues(
+ ENCODED_INDEX_EXCLUDE_LOCAL_ROUTE /* missingIndices */);
+
+ // Verify decoding without isRestrictedToTestNetworks defaults to false
+ final VpnProfile decoded = VpnProfile.decode(DUMMY_PROFILE_KEY, tooFewValues.getBytes());
+ assertFalse(decoded.excludeLocalRoutes);
+ }
+
+ @Test
public void testEncodeDecodeLoginsNotSaved() {
final VpnProfile profile = getSampleIkev2Profile(DUMMY_PROFILE_KEY);
profile.saveLogin = false;