From 4812a3ab7a7333bd847b17229f6b70b376ff80d7 Mon Sep 17 00:00:00 2001 From: Ken Chen Date: Wed, 12 May 2021 17:13:46 +0800 Subject: [PATCH] Add testVpnTypesEqual to verify consistency VPN types are defined in both VpnManager.java and NativeVpnType.aidl. The definitions on both sides should match (except TYPE_VPN_NONE). VpnManager.java: TYPE_VPN_NONE = -1 TYPE_VPN_SERVICE = 1 TYPE_VPN_PLATFORM = 2 TYPE_VPN_LEGACY = 3 TYPE_VPN_OEM = 4 NativeVpnType.aidl: SERVICE = 1 PLATFORM = 2 LEGACY = 3 OEM = 4 Bug: N/A Test: atest android.net.VpnManagerTest#testVpnTypesEqual Change-Id: Ie618e227d861100c5318da696140e486af1093a0 --- tests/net/java/android/net/VpnManagerTest.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tests/net/java/android/net/VpnManagerTest.java b/tests/net/java/android/net/VpnManagerTest.java index c548e30761..3135062138 100644 --- a/tests/net/java/android/net/VpnManagerTest.java +++ b/tests/net/java/android/net/VpnManagerTest.java @@ -28,11 +28,13 @@ import static org.mockito.Mockito.when; import android.content.ComponentName; import android.content.Intent; import android.test.mock.MockContext; +import android.util.SparseArray; import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; import com.android.internal.net.VpnProfile; +import com.android.internal.util.MessageUtils; import org.junit.Before; import org.junit.Test; @@ -119,4 +121,18 @@ public class VpnManagerTest { .setAuthPsk(PSK_BYTES) .build(); } + + @Test + public void testVpnTypesEqual() throws Exception { + SparseArray vmVpnTypes = MessageUtils.findMessageNames( + new Class[] { VpnManager.class }, new String[]{ "TYPE_VPN_" }); + SparseArray nativeVpnType = MessageUtils.findMessageNames( + new Class[] { NativeVpnType.class }, new String[]{ "" }); + + // TYPE_VPN_NONE = -1 is only defined in VpnManager. + assertEquals(vmVpnTypes.size() - 1, nativeVpnType.size()); + for (int i = VpnManager.TYPE_VPN_SERVICE; i < vmVpnTypes.size(); i++) { + assertEquals(vmVpnTypes.get(i), "TYPE_VPN_" + nativeVpnType.get(i)); + } + } }