diff options
| author | Chiachang Wang <chiachangwang@google.com> | 2022-01-27 17:08:41 +0800 |
|---|---|---|
| committer | Chalard Jean <jchalard@google.com> | 2022-02-08 22:47:26 +0900 |
| commit | 865511a8c4c24d20090b89ca34699d683771c8da (patch) | |
| tree | de737c5ef0d564b69773abafbf97d66878e6a0de /tests/unit/java/com/android/internal/net/VpnProfileTest.java | |
| parent | d262e71965b76a8170efdc566bf26e901fa3a004 (diff) | |
Add and implement API for VpnManagers to request validation
This adds a new API that lets VPN apps using VpnManager request
that the platform run its basic validation check on the resulting
network.
Bug: 184750836
Test: atest FrameworksNetTests
Change-Id: I00092eee857d3e33529b19461cfd5dd060a0fe20
Diffstat (limited to 'tests/unit/java/com/android/internal/net/VpnProfileTest.java')
| -rw-r--r-- | tests/unit/java/com/android/internal/net/VpnProfileTest.java | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/tests/unit/java/com/android/internal/net/VpnProfileTest.java b/tests/unit/java/com/android/internal/net/VpnProfileTest.java index 960a9f1b10..943a5599cc 100644 --- a/tests/unit/java/com/android/internal/net/VpnProfileTest.java +++ b/tests/unit/java/com/android/internal/net/VpnProfileTest.java @@ -50,6 +50,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; + private static final int ENCODED_INDEX_REQUIRE_PLATFORM_VALIDATION = 26; @Test public void testDefaults() throws Exception { @@ -78,10 +79,13 @@ public class VpnProfileTest { assertEquals(1360, p.maxMtu); assertFalse(p.areAuthParamsInline); assertFalse(p.isRestrictedToTestNetworks); + assertFalse(p.excludeLocalRoutes); + assertFalse(p.requiresInternetValidation); } private VpnProfile getSampleIkev2Profile(String key) { - final VpnProfile p = new VpnProfile(key, true /* isRestrictedToTestNetworks */); + final VpnProfile p = new VpnProfile(key, true /* isRestrictedToTestNetworks */, + false /* excludesLocalRoutes */, true /* requiresPlatformValidation */); p.name = "foo"; p.type = VpnProfile.TYPE_IKEV2_IPSEC_USER_PASS; @@ -129,8 +133,8 @@ public class VpnProfileTest { @Test public void testParcelUnparcel() { if (isAtLeastT()) { - // excludeLocalRoutes is added in T. - assertParcelSane(getSampleIkev2Profile(DUMMY_PROFILE_KEY), 24); + // excludeLocalRoutes, requiresPlatformValidation were added in T. + assertParcelSane(getSampleIkev2Profile(DUMMY_PROFILE_KEY), 25); } else { assertParcelSane(getSampleIkev2Profile(DUMMY_PROFILE_KEY), 23); } @@ -174,7 +178,8 @@ public class VpnProfileTest { getEncodedDecodedIkev2ProfileMissingValues( ENCODED_INDEX_AUTH_PARAMS_INLINE, ENCODED_INDEX_RESTRICTED_TO_TEST_NETWORKS, - ENCODED_INDEX_EXCLUDE_LOCAL_ROUTE /* missingIndices */); + ENCODED_INDEX_EXCLUDE_LOCAL_ROUTE, + ENCODED_INDEX_REQUIRE_PLATFORM_VALIDATION /* missingIndices */); assertNull(VpnProfile.decode(DUMMY_PROFILE_KEY, tooFewValues.getBytes())); } @@ -194,14 +199,26 @@ public class VpnProfileTest { public void testEncodeDecodeMissingExcludeLocalRoutes() { final String tooFewValues = getEncodedDecodedIkev2ProfileMissingValues( - ENCODED_INDEX_EXCLUDE_LOCAL_ROUTE /* missingIndices */); + ENCODED_INDEX_EXCLUDE_LOCAL_ROUTE, + ENCODED_INDEX_REQUIRE_PLATFORM_VALIDATION /* missingIndices */); - // Verify decoding without isRestrictedToTestNetworks defaults to false + // Verify decoding without excludeLocalRoutes defaults to false final VpnProfile decoded = VpnProfile.decode(DUMMY_PROFILE_KEY, tooFewValues.getBytes()); assertFalse(decoded.excludeLocalRoutes); } @Test + public void testEncodeDecodeMissingRequiresValidation() { + final String tooFewValues = + getEncodedDecodedIkev2ProfileMissingValues( + ENCODED_INDEX_REQUIRE_PLATFORM_VALIDATION /* missingIndices */); + + // Verify decoding without requiresValidation defaults to false + final VpnProfile decoded = VpnProfile.decode(DUMMY_PROFILE_KEY, tooFewValues.getBytes()); + assertFalse(decoded.requiresInternetValidation); + } + + @Test public void testEncodeDecodeLoginsNotSaved() { final VpnProfile profile = getSampleIkev2Profile(DUMMY_PROFILE_KEY); profile.saveLogin = false; |
